Summary: | Fix OpenSource iphoneos arm64e build | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Jonathan Bedard <jbedard> | ||||||||||||
Component: | JavaScriptCore | Assignee: | Jonathan Bedard <jbedard> | ||||||||||||
Status: | RESOLVED FIXED | ||||||||||||||
Severity: | Normal | CC: | benjamin, cdumez, cmarcelo, commit-queue, dbates, ews-watchlist, keith_miller, mark.lam, msaboff, ryanhaddad, saam, tzagallo, webkit-bug-importer, ysuzuki | ||||||||||||
Priority: | P2 | Keywords: | InRadar | ||||||||||||
Version: | WebKit Nightly Build | ||||||||||||||
Hardware: | Unspecified | ||||||||||||||
OS: | Unspecified | ||||||||||||||
See Also: | https://bugs.webkit.org/show_bug.cgi?id=206620 | ||||||||||||||
Attachments: |
|
Description
Jonathan Bedard
2020-01-23 14:59:27 PST
Created attachment 388599 [details]
Patch
Comment on attachment 388599 [details]
Patch
I think we should not use __opaque_xxx since it is opaque. When introducing PLATFORM_REGISTERS_WITH_PROFILE feature, we defined getter / setter for stack-pointer and instruction-pointer. And instructionPointerImpl and stackPointerImpl are the implementation for these getters and setters. Let's use the macro in getters / setters directly and avoid using stackPointerImpl / instructionPointerImpl for ARM64 / ARM64E Darwin.
Comment on attachment 388599 [details]
Patch
r=me
Comment on attachment 388599 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=388599&action=review > Source/JavaScriptCore/runtime/MachineContext.h:98 > + return reinterpret_cast<void*&>(regs.__opaque_sp); Actually, Yusuke is right. Can you use the appropriate macros / setter / getters for this instead of accessing __opaque_sp directly? > Source/JavaScriptCore/runtime/MachineContext.h:404 > + return reinterpret_cast<void*&>(regs.__opaque_pc); Ditto. Created attachment 388711 [details]
Patch
(In reply to Mark Lam from comment #4) > Comment on attachment 388599 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=388599&action=review > > > Source/JavaScriptCore/runtime/MachineContext.h:98 > > + return reinterpret_cast<void*&>(regs.__opaque_sp); > > Actually, Yusuke is right. Can you use the appropriate macros / setter / > getters for this instead of accessing __opaque_sp directly? > > > Source/JavaScriptCore/runtime/MachineContext.h:404 > > + return reinterpret_cast<void*&>(regs.__opaque_pc); > > Ditto. Drafted a change which uses the macros, it's substantially more complicated, though. Still working on testing it everywhere, but wanted it up for discussion. Created attachment 388713 [details]
Patch
Comment on attachment 388713 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=388713&action=review r=me with nit. > Source/JavaScriptCore/runtime/MachineContext.h:60 > +#if OS(DARWIN) && !USE(PLATFORM_REGISTERS_WITH_PROFILE) && (CPU(ARM_THUMB2) || CPU(ARM) || CPU(ARM64)) > +#define USE_DARWIN_REGISTER_MACROS 1 > +#endif Let's put this in wtf/PlatformUse.h Created attachment 388735 [details]
Patch
(In reply to Jonathan Bedard from comment #9) > Created attachment 388735 [details] > Patch I intend to land this on Monday, because while it's tested, it has not been exhaustively tested on every effected configuration. The commit-queue encountered the following flaky tests while processing attachment 388735 [details]: editing/spelling/spellcheck-attribute.html bug 206178 (authors: g.czajkowski@samsung.com, mark.lam@apple.com, and rniwa@webkit.org) The commit-queue is continuing to process your patch. Comment on attachment 388735 [details] Patch Clearing flags on attachment: 388735 Committed r255159: <https://trac.webkit.org/changeset/255159> All reviewed patches have been landed. Closing bug. Reverted r255159 for reason: Broke the watchOS build. Committed r255169: <https://trac.webkit.org/changeset/255169> Created attachment 388917 [details]
Patch
The commit-queue encountered the following flaky tests while processing attachment 388917 [details]: editing/spelling/spellcheck-attribute.html bug 206178 (authors: g.czajkowski@samsung.com, mark.lam@apple.com, and rniwa@webkit.org) The commit-queue is continuing to process your patch. Comment on attachment 388917 [details] Patch Clearing flags on attachment: 388917 Committed r255216: <https://trac.webkit.org/changeset/255216> All reviewed patches have been landed. Closing bug. |