Changeset 188883 in webkit
- Timestamp:
- Aug 24, 2015 2:41:37 PM (9 years ago)
- Location:
- branches/jsc-tailcall/Source/JavaScriptCore
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/jsc-tailcall/Source/JavaScriptCore/ChangeLog
r188882 r188883 1 2015-08-24 Basile Clement <basile_clement@apple.com> 2 3 jsc-tailcall: We can't assert that registers are flushed when making a tail call 4 https://bugs.webkit.org/show_bug.cgi?id=148396 5 6 Reviewed by Michael Saboff. 7 8 We should be able to assert that registers are flushed when making a 9 tail call, since no additional code should ever be executed after the 10 tail call. However, because we can have Phantom() nodes keeping values 11 alive across a tail call, this assertion can (and does) fail in some 12 cases - even though those nodes are dead nodes that will not actually 13 generate any code. So we can't have the assertion. 14 15 * dfg/DFGSpeculativeJIT32_64.cpp: 16 (JSC::DFG::SpeculativeJIT::emitCall): 17 * dfg/DFGSpeculativeJIT64.cpp: 18 (JSC::DFG::SpeculativeJIT::emitCall): 19 1 20 2015-08-24 Basile Clement <basile_clement@apple.com> 2 21 -
branches/jsc-tailcall/Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp
r187868 r188883 820 820 // the callee frame. 821 821 // https://bugs.webkit.org/show_bug.cgi?id=147508 822 if (isTail) 823 ASSERT(isFlushed()); 824 else 822 if (!isTail) 825 823 flushRegisters(); 826 824 -
branches/jsc-tailcall/Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp
r188556 r188883 797 797 // the callee frame. 798 798 // https://bugs.webkit.org/show_bug.cgi?id=147508 799 if (isTail) 800 ASSERT(isFlushed()); 801 else 799 if (!isTail) 802 800 flushRegisters(); 803 801
Note: See TracChangeset
for help on using the changeset viewer.