[llvm] b87cf50 - [WebAssembly] Remove the `wasm-disable-fix-irreducible-control-flow-pass` switch (#185072)

via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 6 12:48:42 PST 2026


Author: Demetrius Kanios
Date: 2026-03-06T12:48:38-08:00
New Revision: b87cf50b6c5ab917a3443671ed6ae53ce08ed35b

URL: https://github.com/llvm/llvm-project/commit/b87cf50b6c5ab917a3443671ed6ae53ce08ed35b
DIFF: https://github.com/llvm/llvm-project/commit/b87cf50b6c5ab917a3443671ed6ae53ce08ed35b.diff

LOG: [WebAssembly] Remove the `wasm-disable-fix-irreducible-control-flow-pass` switch (#185072)

This removes the `wasm-disable-fix-irreducible-control-flow-pass`
switch.

It was originally added in #67715 as a way to avoid the potentially
absurd compile times the pass used to bring. However with the successful
merge of #184441, the pass itself has been fixed to avoid this issue.

Given that, it is no longer necessary nor desirable to keep this switch.

Added: 
    

Modified: 
    llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
index dce8f54409c41..9d96c1da7125c 100644
--- a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+++ b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
@@ -51,12 +51,6 @@ static cl::opt<bool> WasmDisableExplicitLocals(
              " instruction output for test purposes only."),
     cl::init(false));
 
-static cl::opt<bool> WasmDisableFixIrreducibleControlFlowPass(
-    "wasm-disable-fix-irreducible-control-flow-pass", cl::Hidden,
-    cl::desc("webassembly: disables the fix "
-             " irreducible control flow optimization pass"),
-    cl::init(false));
-
 // Exception handling & setjmp-longjmp handling related options.
 
 // Emscripten's asm.js-style exception handling
@@ -609,8 +603,7 @@ void WebAssemblyPassConfig::addPreEmitPass() {
   addPass(&UnreachableMachineBlockElimID);
 
   // Eliminate multiple-entry loops.
-  if (!WasmDisableFixIrreducibleControlFlowPass)
-    addPass(createWebAssemblyFixIrreducibleControlFlow());
+  addPass(createWebAssemblyFixIrreducibleControlFlow());
 
   // Do various transformations for exception handling.
   // Every CFG-changing optimizations should come before this.


        


More information about the llvm-commits mailing list