diff options
author | Dan Gohman <dan433584@gmail.com> | 2017-12-08 21:27:00 +0000 |
---|---|---|
committer | Dan Gohman <dan433584@gmail.com> | 2017-12-08 21:27:00 +0000 |
commit | 3a762bf9df6d302a89e162ab3799b72598baa8d6 (patch) | |
tree | 54d2ba03089e0b8d6922e72ecb5a8638e7bce44d /llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp | |
parent | 6736f5907875d3cd0e27ae5ff6d9d7e6072f10a5 (diff) | |
download | llvm-3a762bf9df6d302a89e162ab3799b72598baa8d6.zip llvm-3a762bf9df6d302a89e162ab3799b72598baa8d6.tar.gz llvm-3a762bf9df6d302a89e162ab3799b72598baa8d6.tar.bz2 |
[WebAssembly] Reapply r319186: "Support bitcasted function addresses with varargs."
This puts the functionality under control of a command-line option which is
off by default to avoid breaking existing setups.
llvm-svn: 320197
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp')
-rw-r--r-- | llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp index 084576b..666337a 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp +++ b/llvm/lib/Target/WebAssembly/WebAssemblyFixFunctionBitcasts.cpp @@ -199,7 +199,7 @@ bool FixFunctionBitcasts::runOnModule(Module &M) { // Bitcasted vararg functions occur in Emscripten's implementation of // EM_ASM, so suppress wrappers for them for now. - if (Ty->isVarArg() || F->isVarArg()) + if (TemporaryWorkarounds && (Ty->isVarArg() || F->isVarArg())) continue; auto Pair = Wrappers.insert(std::make_pair(std::make_pair(F, Ty), nullptr)); |