summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
diff options
context:
space:
mode:
authorDan Gohman <dan433584@gmail.com>2016-05-21 00:21:56 +0000
committerDan Gohman <dan433584@gmail.com>2016-05-21 00:21:56 +0000
commitb7c2400fa744c032dc96a2e180f24425911bc794 (patch)
tree484ce7a4b2401ae6b97de9e54543eb83d598703b /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
parent2907e51246a8cf0a440fa1767f94dc10eda195eb (diff)
downloadbcm5719-llvm-b7c2400fa744c032dc96a2e180f24425911bc794.tar.gz
bcm5719-llvm-b7c2400fa744c032dc96a2e180f24425911bc794.zip
[WebAssembly] Optimize away return instructions using fallthroughs.
This saves a small amount of code size, and is a first small step toward passing values on the stack across block boundaries. Differential Review: http://reviews.llvm.org/D20450 llvm-svn: 270294
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
-rw-r--r--llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
index e4b049dd15d..32154af3c1c 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
@@ -225,10 +225,10 @@ void WebAssemblyPassConfig::addPreEmitPass() {
// Lower br_unless into br_if.
addPass(createWebAssemblyLowerBrUnless());
- // Create a mapping from LLVM CodeGen virtual registers to wasm registers.
- addPass(createWebAssemblyRegNumbering());
-
// Perform the very last peephole optimizations on the code.
if (getOptLevel() != CodeGenOpt::None)
addPass(createWebAssemblyPeephole());
+
+ // Create a mapping from LLVM CodeGen virtual registers to wasm registers.
+ addPass(createWebAssemblyRegNumbering());
}
OpenPOWER on IntegriCloud