Bug 147243

Summary: jsc-tailcall: Repatching tail calls as jump should depend on the opcode, not the JS CallLinkInfo
Product: WebKit Reporter: Basile Clement <basile_clement>
Component: JavaScriptCoreAssignee: Basile Clement <basile_clement>
Status: RESOLVED FIXED    
Severity: Normal CC: fpizlo, msaboff
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 146477    
Attachments:
Description Flags
Patch
none
Patch msaboff: review+

Basile Clement
Reported 2015-07-23 16:46:03 PDT
Patch forthcoming. The apparent source of failures on ARM devices for https://bugs.webkit.org/show_bug.cgi?id=146484 looks to be that we are patching NearCalls as jump when the CallLinkInfo tells us we are a tail call. However even for a tail call, the slow path will still have an actual call (and not jump) opcode: we should be patching based on that information instead.
Attachments
Patch (9.29 KB, patch)
2015-07-23 16:50 PDT, Basile Clement
no flags
Patch (9.71 KB, patch)
2015-07-24 11:26 PDT, Basile Clement
msaboff: review+
Basile Clement
Comment 1 2015-07-23 16:50:49 PDT
Michael Saboff
Comment 2 2015-07-24 11:03:54 PDT
Comment on attachment 257408 [details] Patch Looks fine except could you change the "bool tail" to an enum.
Basile Clement
Comment 3 2015-07-24 11:26:56 PDT
Created attachment 257461 [details] Patch Patch with enum
Michael Saboff
Comment 4 2015-07-24 11:32:22 PDT
Comment on attachment 257461 [details] Patch r=me
Basile Clement
Comment 5 2015-07-24 11:59:15 PDT
Note You need to log in before you can comment on or make changes to this bug.