Skip to content

Commit 91985a1

Browse files
committed
WebAssembly: Move runtime libcall setting out of TargetLowering
RuntimeLibcallInfo needs to be correct outside of codegen contexts.
1 parent 407a338 commit 91985a1

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

llvm/lib/IR/RuntimeLibcalls.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -277,5 +277,10 @@ void RuntimeLibcallsInfo::initLibcalls(const Triple &TT) {
277277
setLibcallName(RTLIB::MULO_I64, nullptr);
278278
}
279279
setLibcallName(RTLIB::MULO_I128, nullptr);
280+
} else {
281+
// Define the emscripten name for return address helper.
282+
// TODO: when implementing other Wasm backends, make this generic or only do
283+
// this on emscripten depending on what they end up doing.
284+
setLibcallName(RTLIB::RETURN_ADDRESS, "emscripten_return_address");
280285
}
281286
}

llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -385,11 +385,6 @@ WebAssemblyTargetLowering::WebAssemblyTargetLowering(
385385

386386
setMaxAtomicSizeInBitsSupported(64);
387387

388-
// Define the emscripten name for return address helper.
389-
// TODO: when implementing other Wasm backends, make this generic or only do
390-
// this on emscripten depending on what they end up doing.
391-
setLibcallName(RTLIB::RETURN_ADDRESS, "emscripten_return_address");
392-
393388
// Always convert switches to br_tables unless there is only one case, which
394389
// is equivalent to a simple branch. This reduces code size for wasm, and we
395390
// defer possible jump table optimizations to the VM.

0 commit comments

Comments
 (0)