Bug 117719 - FTL: Add another temp register regT4 to JSInterfaceJIT
Summary: FTL: Add another temp register regT4 to JSInterfaceJIT
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Michael Saboff
URL:
Keywords:
Depends on:
Blocks: 116888 117102
  Show dependency treegraph
 
Reported: 2013-06-17 16:14 PDT by Michael Saboff
Modified: 2013-06-17 16:50 PDT (History)
5 users (show)

See Also:


Attachments
Patch (5.64 KB, patch)
2013-06-17 16:18 PDT, Michael Saboff
ggaren: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
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>