[llvm] [SimplifyCFG]: Switch on umin replaces default (PR #164097)

via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 19 17:01:44 PDT 2025


================
@@ -7540,6 +7540,60 @@ static bool reduceSwitchRange(SwitchInst *SI, IRBuilder<> &Builder,
   return true;
 }
 
+/// Tries to transform the switch when the condition is umin and a constant.
+/// In that case, the default branch can be replaced by the constant's branch.
+/// For example:
+/// switch(umin(a, 3)) {
+/// case 0:
----------------
dianqk wrote:

Missing test cases? I think you need add both tests of [1,2,3] that has holes and [4,1,2,3]?

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


More information about the llvm-commits mailing list