Patch coming.
<rdar://problem/38199678>
Created attachment 335170 [details] proposed patch.
Comment on attachment 335170 [details] proposed patch. View in context: https://bugs.webkit.org/attachment.cgi?id=335170&action=review r=me > Source/JavaScriptCore/llint/LLIntData.cpp:90 > + ExceptionHandlerPtrTag, // handleUncaughtException This seems brittle. Could we auto-gen this or something like xmacros? > Source/JavaScriptCore/offlineasm/ast.rb:932 > + when "tagReturnAddress", "untagReturnAddress" FIXME? > Source/JavaScriptCore/runtime/PtrTag.h:73 > + inline constexpr T removeCodePtrTag(PtrType ptr) { return bitwise_cast<T>(ptr); } Weird indent.
Comment on attachment 335170 [details] proposed patch. View in context: https://bugs.webkit.org/attachment.cgi?id=335170&action=review Thanks for the review. Responses below. >> Source/JavaScriptCore/llint/LLIntData.cpp:90 >> + ExceptionHandlerPtrTag, // handleUncaughtException > > This seems brittle. Could we auto-gen this or something like xmacros? The 2 static asserts below makes this not brittle. They will catch the case where new opcodes get added. We can revisit this later if we want to do something fancier for this. >> Source/JavaScriptCore/offlineasm/ast.rb:932 >> + when "tagReturnAddress", "untagReturnAddress" > > FIXME? This is the intended behavior i.e. these are no-ops by default. So, I'll leave them as is. >> Source/JavaScriptCore/runtime/PtrTag.h:73 >> + inline constexpr T removeCodePtrTag(PtrType ptr) { return bitwise_cast<T>(ptr); } > > Weird indent. Oops. Will fix.
Landed in r229354: <http://trac.webkit.org/r229354>.
Re-opened since this is blocked by bug 183492
Re-landed in r229481: <http://trac.webkit.org/r229481>.