Bug 183387

Summary: Prepare LLInt code to support pointer profiling.
Product: WebKit Reporter: Mark Lam <mark.lam>
Component: JavaScriptCoreAssignee: Mark Lam <mark.lam>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, fpizlo, jfbastien, keith_miller, msaboff, rmorisset, saam, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 183492    
Bug Blocks:    
Attachments:
Description Flags
proposed patch. jfbastien: review+

Mark Lam
Reported 2018-03-06 16:18:05 PST
Patch coming.
Attachments
proposed patch. (46.75 KB, patch)
2018-03-06 20:14 PST, Mark Lam
jfbastien: review+
Radar WebKit Bug Importer
Comment 1 2018-03-06 16:18:44 PST
Mark Lam
Comment 2 2018-03-06 20:14:14 PST
Created attachment 335170 [details] proposed patch.
JF Bastien
Comment 3 2018-03-06 21:39:57 PST
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.
Mark Lam
Comment 4 2018-03-06 21:55:12 PST
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.
Mark Lam
Comment 5 2018-03-06 22:45:31 PST
WebKit Commit Bot
Comment 6 2018-03-08 17:59:46 PST
Re-opened since this is blocked by bug 183492
Mark Lam
Comment 7 2018-03-09 13:35:58 PST
Note You need to log in before you can comment on or make changes to this bug.