[llvm] [mlir] [IR] Split Br into UncondBr and CondBr (PR #184027)

Alexis Engelke via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 2 01:10:57 PST 2026


================
@@ -125,101 +125,102 @@
 //
  FIRST_TERM_INST  ( 1)
 HANDLE_TERM_INST  ( 1, Ret           , ReturnInst)
-HANDLE_TERM_INST  ( 2, Br            , BranchInst)
-HANDLE_TERM_INST  ( 3, Switch        , SwitchInst)
-HANDLE_TERM_INST  ( 4, IndirectBr    , IndirectBrInst)
-HANDLE_TERM_INST  ( 5, Invoke        , InvokeInst)
-HANDLE_TERM_INST  ( 6, Resume        , ResumeInst)
-HANDLE_TERM_INST  ( 7, Unreachable   , UnreachableInst)
-HANDLE_TERM_INST  ( 8, CleanupRet    , CleanupReturnInst)
-HANDLE_TERM_INST  ( 9, CatchRet      , CatchReturnInst)
-HANDLE_TERM_INST  (10, CatchSwitch   , CatchSwitchInst)
-HANDLE_TERM_INST  (11, CallBr        , CallBrInst) // A call-site terminator
-  LAST_TERM_INST  (11)
+HANDLE_TERM_INST  ( 2, UncondBr      , UncondBrInst)
----------------
aengelke wrote:

I tried to limit C API breakage to a minimum. C API opcode numbers don't match the C++ API for this reason, the mapping is implemented in `map_{to,from}_llvmopcode` in lib/IR/Core.cpp.

https://github.com/llvm/llvm-project/pull/184027


More information about the llvm-commits mailing list