Bug 117719

Summary: FTL: Add another temp register regT4 to JSInterfaceJIT
Product: WebKit Reporter: Michael Saboff <msaboff>
Component: JavaScriptCoreAssignee: Michael Saboff <msaboff>
Status: RESOLVED FIXED    
Severity: Normal CC: fpizlo, ggaren, mark.lam, mhahnenberg, oliver
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 116888, 117102    
Attachments:
Description Flags
Patch ggaren: review+

Description Michael Saboff 2013-06-17 16:14:10 PDT
The arity fixup thunk as currently envisioned needs 5 temp registers.  Other code may need another temp register as well.  We can use bucketCounterRegister since its current use only really needs some entropy and that it isn't overwritten during value profiling.
Comment 1 Michael Saboff 2013-06-17 16:18:23 PDT
Created attachment 204865 [details]
Patch
Comment 2 Geoffrey Garen 2013-06-17 16:24:55 PDT
Comment on attachment 204865 [details]
Patch

You should also make the emitValueProfilingSite() callers pass the scratch register (regT4) to emitValueProfilingSite(). That way, it will be clear if an opcode allocates regT4 for two uses.
Comment 3 Michael Saboff 2013-06-17 16:25:39 PDT
(In reply to comment #2)
> (From update of attachment 204865 [details])
> You should also make the emitValueProfilingSite() callers pass the scratch register (regT4) to emitValueProfilingSite(). That way, it will be clear if an opcode allocates regT4 for two uses.

Will do.
Comment 4 Michael Saboff 2013-06-17 16:50:43 PDT
Committed r151658: <http://trac.webkit.org/changeset/151658>