The scf.index_switch is a control-flow operation that branches to one of the
given regions based on the values of the argument and the cases. The
argument is always of type index.
Example:
mlir %0 = scf.index_switch %arg0 -> i32 case 2 { %1 = arith.constant 10 : i32 scf.yield %1 : i32 } case 5 { %2 = arith.constant 20 : i32 scf.yield %2 : i32 } default { %3 = arith.constant 30 : i32 scf.yield %3 : i32 }
Description seems terse, for example it does not say anything about the default case.