aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
diff options
context:
space:
mode:
authorHeejin Ahn <aheejin@gmail.com>2019-03-05 20:35:34 +0000
committerHeejin Ahn <aheejin@gmail.com>2019-03-05 20:35:34 +0000
commitef9d6aea458d44a1cb446c96ef5093b11735657b (patch)
tree727159d33fef13a5c704cfc27315f63b013f4e3a /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
parentc38831e11dc33d2a8325ee6ada9827cff0396945 (diff)
downloadllvm-ef9d6aea458d44a1cb446c96ef5093b11735657b.zip
llvm-ef9d6aea458d44a1cb446c96ef5093b11735657b.tar.gz
llvm-ef9d6aea458d44a1cb446c96ef5093b11735657b.tar.bz2
[WebAssembly] Disable MachineBlockPlacement pass
Summary: This pass hurts code size for wasm and sometimes generates irreducible control flow. Context: https://github.com/emscripten-core/emscripten/pull/8233 Reviewers: kripken, dschuff Subscribers: sunfish, sbc100, jgravelle-google, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D58953 llvm-svn: 355437
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
index 768ab7a..9b10c8d 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
@@ -290,6 +290,10 @@ void WebAssemblyPassConfig::addPostRegAlloc() {
disablePass(&PatchableFunctionID);
disablePass(&ShrinkWrapID);
+ // This pass hurts code size for wasm because it can generate irreducible
+ // control flow.
+ disablePass(&MachineBlockPlacementID);
+
TargetPassConfig::addPostRegAlloc();
}