[Mlir-commits] [mlir] [mlir][arith] Fix crash in IntRangeOptimizations due to stale solver state (PR #186187)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Thu Mar 12 10:33:40 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results

* 3548 tests passed
* 415 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### MLIR
<details>
<summary>MLIR.Dialect/Arith/int-range-opts.mlir</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe -int-range-optimizations --split-input-file C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\mlir-opt.exe' -int-range-optimizations --split-input-file 'C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir:160:3: error: redefinition of symbol named 'abort'
# |   llvm.func @abort()
# |   ^
# | C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir:160:3: note: see current operation: 
# | "llvm.func"() <{CConv = #llvm.cconv<ccc>, function_type = !llvm.func<void ()>, linkage = #llvm.linkage<external>, sym_name = "abort", unnamed_addr = 0 : i64, visibility_ = 0 : i64}> ({
# | }) : () -> ()
# | C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir:158:102: note: see existing symbol definition here
# |   llvm.mlir.global private constant @assert_msg_23(dense<0x0> : tensor<1xi8>) : !llvm.array<3 x i8>  llvm.func @abort()
# |                                                                                                      ^
# `-----------------------------
# error: command failed with exit status: 1
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir:156:17: error: CHECK-LABEL: expected string not found in input
# | // CHECK-LABEL: @no_crash_llvm_ops_with_folding
# |                 ^
# | <stdin>:100:27: note: scanning from here
# |  func.func @analysis_crash(%arg0: i32, %arg1: tensor<128xi1>) -> tensor<128xi64> {
# |                           ^
# | <stdin>:101:8: note: possible intended match here
# |  %c0_i32 = arith.constant 0 : i32
# |        ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\mlir\test\Dialect\Arith\int-range-opts.mlir
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |             95:  } 
# |             96: } 
# |             97:  
# |             98: // ----- 
# |             99: module { 
# |            100:  func.func @analysis_crash(%arg0: i32, %arg1: tensor<128xi1>) -> tensor<128xi64> { 
# | label:156'0                               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            101:  %c0_i32 = arith.constant 0 : i32 
# | label:156'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | label:156'1            ?                           possible intended match
# |            102:  %cst = arith.constant dense<-1> : tensor<128xi32> 
# | label:156'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            103:  %splat = tensor.splat %arg0 : tensor<128xi32> 
# | label:156'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            104:  %0 = scf.for %arg2 = %c0_i32 to %arg0 step %arg0 iter_args(%arg3 = %splat) -> (tensor<128xi32>) : i32 { 
# | label:156'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            105:  scf.yield %arg3 : tensor<128xi32> 
# | label:156'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            106:  } 
# | label:156'0     ~~~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

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


More information about the Mlir-commits mailing list