Bug 150688

Summary: Air::handleCalleeSaves shouldn't save/restore the frame pointer
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal    
Priority: P2    
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 150279    
Attachments:
Description Flags
the patch msaboff: review+

Filip Pizlo
Reported 2015-10-29 13:01:26 PDT
Patch forthcoming.
Attachments
the patch (1.31 KB, patch)
2015-10-29 16:55 PDT, Filip Pizlo
msaboff: review+
Filip Pizlo
Comment 1 2015-10-29 16:55:03 PDT
Created attachment 264366 [details] the patch
Saam Barati
Comment 2 2015-10-29 17:27:31 PDT
Comment on attachment 264366 [details] the patch r=me
Michael Saboff
Comment 3 2015-10-29 17:31:40 PDT
Comment on attachment 264366 [details] the patch View in context: https://bugs.webkit.org/attachment.cgi?id=264366&action=review r- > Source/JavaScriptCore/b3/air/AirHandleCalleeSaves.cpp:55 > usedCalleeSaves.filter(RegisterSet::calleeSaveRegisters()); > + usedCalleeSaves.exclude(RegisterSet::stackRegisters()); // We don't need to save FP here. RegisterSet::calleeSaveRegisters() already contains the frame pointer. In all cases, it uses the native register name.
Michael Saboff
Comment 4 2015-10-29 17:33:38 PDT
Comment on attachment 264366 [details] the patch View in context: https://bugs.webkit.org/attachment.cgi?id=264366&action=review r+ >> Source/JavaScriptCore/b3/air/AirHandleCalleeSaves.cpp:55 >> usedCalleeSaves.filter(RegisterSet::calleeSaveRegisters()); >> + usedCalleeSaves.exclude(RegisterSet::stackRegisters()); // We don't need to save FP here. > > RegisterSet::calleeSaveRegisters() already contains the frame pointer. In all cases, it uses the native register name. Sorry, didn't see the .filter for RegisterSet::calleeSaveRegisters().
Filip Pizlo
Comment 5 2015-10-29 18:47:20 PDT
Note You need to log in before you can comment on or make changes to this bug.