Changeset 141536 in webkit
- Timestamp:
- Jan 31, 2013 9:54:04 PM (11 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r141521 r141536 1 2013-01-31 Geoffrey Garen <ggaren@apple.com> 2 3 REGRESSION (r141192): Crash beneath cti_op_get_by_id_generic @ discussions.apple.com 4 https://bugs.webkit.org/show_bug.cgi?id=108576 5 6 Reviewed by Filip Pizlo. 7 8 This was a long-standing bug. The DFG would destructively reuse a register 9 in op_convert_this, but: 10 11 * The bug only presented during speculation failure for type Other 12 13 * The bug presented by removing the low bits of a pointer, which 14 used to be harmless, since all objects were so aligned anyway. 15 16 * dfg/DFGSpeculativeJIT64.cpp: 17 (JSC::DFG::SpeculativeJIT::compile): Don't reuse our this register as 18 our scratch register. The whole point of our scratch register is to 19 avoid destructively modifying our this register. I'm pretty sure this 20 was a copy-paste error. 21 1 22 2013-01-31 Roger Fong <roger_fong@apple.com> 2 23 -
trunk/Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp
r141179 r141536 3806 3806 if (isOtherSpeculation(node->child1()->prediction())) { 3807 3807 JSValueOperand thisValue(this, node->child1()); 3808 GPRTemporary scratch(this , thisValue);3808 GPRTemporary scratch(this); 3809 3809 GPRReg thisValueGPR = thisValue.gpr(); 3810 3810 GPRReg scratchGPR = scratch.gpr();
Note: See TracChangeset
for help on using the changeset viewer.