WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
147508
jsc-tailcall: We should reuse the frame efficiently in the DFG instead of doing a memmove
https://bugs.webkit.org/show_bug.cgi?id=147508
Summary
jsc-tailcall: We should reuse the frame efficiently in the DFG instead of doi...
Basile Clement
Reported
2015-07-31 14:52:59 PDT
...
Attachments
Patch
(164.17 KB, patch)
2015-08-21 14:52 PDT
,
Basile Clement
no flags
Details
Formatted Diff
Diff
Patch
(130.84 KB, patch)
2015-08-21 15:53 PDT
,
Basile Clement
no flags
Details
Formatted Diff
Diff
Patch
(131.28 KB, patch)
2015-08-24 19:17 PDT
,
Basile Clement
msaboff
: review+
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Basile Clement
Comment 1
2015-08-21 14:52:41 PDT
Created
attachment 259665
[details]
Patch
Basile Clement
Comment 2
2015-08-21 15:53:53 PDT
Created
attachment 259677
[details]
Patch
Michael Saboff
Comment 3
2015-08-23 21:32:04 PDT
Comment on
attachment 259677
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=259677&action=review
Add blank lines between function declarations or definitions. Let's use = initialization for "for" loops. r=me with some comment clean up and stylistic changes.
> Source/JavaScriptCore/jit/CallFrameShuffleData.cpp:43 > + for (size_t i { 0 }; i < registerSaveLocations->size(); ++i) {
Let's use = initialization for "for" loops.
> Source/JavaScriptCore/jit/CallFrameShuffleData.cpp:55 > + for (Reg reg { Reg::first() }; reg <= Reg::last(); reg = reg.next()) {
Let's use = initialization for "for" loops.
> Source/JavaScriptCore/jit/CallFrameShuffler.h:41 > +// A CachedRecovery is a simple wrapper around a ValueRecovery that
That what? Complete the comment.
> Source/JavaScriptCore/jit/CallFrameShuffler.h:106 > +
Delete one blank line.
> Source/JavaScriptCore/jit/CallFrameShuffler.h:451 > + int m_frameDelta { m_alignedNewFrameSize - m_alignedOldFrameSize };
Initialize this in the constructor.
> Source/JavaScriptCore/jit/CallFrameShuffler.h:685 > + // pointer, and m_oldFrameOffset is 0. We could
We could what? Finish the comment.
Basile Clement
Comment 4
2015-08-24 19:17:14 PDT
Comment on
attachment 259677
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=259677&action=review
Addressed the comments below + added blank lines between method definitions.
>> Source/JavaScriptCore/jit/CallFrameShuffleData.cpp:43 >> + for (size_t i { 0 }; i < registerSaveLocations->size(); ++i) { > > Let's use = initialization for "for" loops.
Changed all of those.
>> Source/JavaScriptCore/jit/CallFrameShuffler.h:41 >> +// A CachedRecovery is a simple wrapper around a ValueRecovery that > > That what? Complete the comment.
Oh, oops. I should actually reword it since it's a bit more than a "simple wrapper". Changed to "A CachedRecovery is a wrapper around a ValueRecovery that records where said value should go on the stack and/or in registers. Whenever we perform an operation changing the ValueRecovery, we update the CachedRecovery's member in place."
>> Source/JavaScriptCore/jit/CallFrameShuffler.h:106 >> + > > Delete one blank line.
Done.
>> Source/JavaScriptCore/jit/CallFrameShuffler.h:451 >> + int m_frameDelta { m_alignedNewFrameSize - m_alignedOldFrameSize }; > > Initialize this in the constructor.
I did this here because I believed it to make it clearer what happens when reading the comment. Moved to the constructor.
>> Source/JavaScriptCore/jit/CallFrameShuffler.h:685 >> + // pointer, and m_oldFrameOffset is 0. We could > > We could what? Finish the comment.
I'll just remove the "We could" part. I wanted to say that we could use the stack pointer as well, but that'd just be noise.
Basile Clement
Comment 5
2015-08-24 19:17:20 PDT
Created
attachment 259806
[details]
Patch
Michael Saboff
Comment 6
2015-08-25 15:24:11 PDT
Comment on
attachment 259806
[details]
Patch r=me
Basile Clement
Comment 7
2015-08-25 15:59:58 PDT
Committed
r188937
<
http://trac.webkit.org/changeset/188937
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug