Changeset 244783 in webkit
- Timestamp:
- Apr 30, 2019, 10:57:48 AM (7 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
bytecompiler/BytecodeGenerator.cpp (modified) (1 diff)
-
wasm/js/WebAssemblyFunction.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r244764 r244783 1 2019-04-30 Keith Miller <keith_miller@apple.com> 2 3 Fix failing ARM64E wasm tests 4 https://bugs.webkit.org/show_bug.cgi?id=197420 5 6 Reviewed by Saam Barati. 7 8 This patch fixes a bug in the slow path of our JS->Wasm IC bridge 9 where we wouldn't untag the link register before tail calling. 10 11 Additionally, this patch fixes a broken assert when using setting 12 Options::useTailCalls=false. 13 14 * bytecompiler/BytecodeGenerator.cpp: 15 (JSC::BytecodeGenerator::emitCallForwardArgumentsInTailPosition): 16 * wasm/js/WebAssemblyFunction.cpp: 17 (JSC::WebAssemblyFunction::jsCallEntrypointSlow): 18 1 19 2019-04-29 Saam Barati <sbarati@apple.com> 2 20 -
trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
r244088 r244783 3286 3286 RegisterID* BytecodeGenerator::emitCallForwardArgumentsInTailPosition(RegisterID* dst, RegisterID* func, RegisterID* thisRegister, RegisterID* firstFreeRegister, int32_t firstVarArgOffset, const JSTextPosition& divot, const JSTextPosition& divotStart, const JSTextPosition& divotEnd, DebuggableCall debuggableCall) 3287 3287 { 3288 ASSERT(m_inTailPosition); 3288 // We must emit a tail call here because we did not allocate an arguments object thus we would otherwise have no way to correctly make this call. 3289 ASSERT(m_inTailPosition || !Options::useTailCalls()); 3289 3290 return emitCallVarargs<OpTailCallForwardArguments>(dst, func, thisRegister, nullptr, firstFreeRegister, firstVarArgOffset, divot, divotStart, divotEnd, debuggableCall); 3290 3291 } -
trunk/Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp
r243886 r244783 471 471 jit.move(CCallHelpers::TrustedImmPtr(this), GPRInfo::regT0); 472 472 jit.emitFunctionEpilogue(); 473 #if CPU(ARM64E) 474 jit.untagPtr(MacroAssembler::linkRegister, MacroAssembler::stackPointerRegister); 475 #endif 473 476 auto jumpToHostCallThunk = jit.jump(); 474 477
Note:
See TracChangeset
for help on using the changeset viewer.