[Mlir-commits] [mlir] [mlir][arith] Fix SelectOp unsafe int range inference with unfinalized range case (PR #173716)
Longsheng Du
llvmlistbot at llvm.org
Wed Dec 31 05:10:22 PST 2025
================
@@ -329,7 +329,13 @@ void arith::SelectOp::inferResultRangesFromOptional(
setResultRange(getResult(), trueCase);
return;
}
- setResultRange(getResult(), IntegerValueRange::join(trueCase, falseCase));
+
+ // When one of the ranges is uninitialized, set the whole range to max
+ // otherwise the result will ignore the uninitialized range.
+ if (trueCase.isUninitialized() || falseCase.isUninitialized())
----------------
LongshengDu wrote:
We have to ensure the correctness of default select op behaviors somehow, uninitialized range value from custom ops may occur.
https://github.com/llvm/llvm-project/pull/173716
More information about the Mlir-commits
mailing list