WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
153536
[JSC] adjustFrameAndStackInOSRExitCompilerThunk() can trash values in FTL
https://bugs.webkit.org/show_bug.cgi?id=153536
Summary
[JSC] adjustFrameAndStackInOSRExitCompilerThunk() can trash values in FTL
Benjamin Poulain
Reported
2016-01-26 22:31:23 PST
[JSC] adjustFrameAndStackInOSRExitCompilerThunk() can trash values in FTL
Attachments
Patch
(4.91 KB, patch)
2016-01-26 22:34 PST
,
Benjamin Poulain
no flags
Details
Formatted Diff
Diff
Patch for landing
(5.10 KB, patch)
2016-01-27 15:37 PST
,
Benjamin Poulain
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Benjamin Poulain
Comment 1
2016-01-26 22:34:11 PST
Created
attachment 269982
[details]
Patch
Saam Barati
Comment 2
2016-01-27 00:21:20 PST
Comment on
attachment 269982
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=269982&action=review
r=me
> Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.h:48 > +
It might be worth adding a comment here saying we can't trash the macro assembler scratch registers in the code we emit here.
> Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.h:107 > + if (isFTLOSRExit) > + jit.pushToSave(GPRInfo::regT1);
It might be worth a comment saying that we do this because the previous push will be overwritten by the old top-of-the-stack. Or you could make it explicit by doing something like: unsigned stackOffset = MacroAssembler::pushToSaveByteOffset * (isFTLOSRExit ? 2 : 1) subPtr(offset, SP) storePtr(regT1, SP)
Saam Barati
Comment 3
2016-01-27 00:35:25 PST
also see discussion here for potential alternative implementations that take into account generic unwind exits and utilize volatile registers in situations where we know we've arrived at OSR exit code from the genericUnwind path and therefore can use volatile registers:
https://bugs.webkit.org/show_bug.cgi?id=151406
Benjamin Poulain
Comment 4
2016-01-27 15:37:11 PST
Created
attachment 270053
[details]
Patch for landing
WebKit Commit Bot
Comment 5
2016-01-27 16:29:18 PST
Comment on
attachment 270053
[details]
Patch for landing Clearing flags on attachment: 270053 Committed
r195707
: <
http://trac.webkit.org/changeset/195707
>
WebKit Commit Bot
Comment 6
2016-01-27 16:29:22 PST
All reviewed patches have been landed. Closing bug.
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