[llvm] [InstCombine] Fold comparisons of normalized integer conversions (PR #228791)

via llvm-commits llvm-commits at lists.llvm.org
Sat Oct 3 18:27:54 PDT 2026


=?utf-8?q?Dávid_Bolvanský?= <david.bolvansky at gmail.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/228791 at github.com>


github-actions[bot] wrote:

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

* 143307 tests passed
* 3438 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.Transforms/InstCombine/fcmp-normalized-int.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\opt.exe < C:\_work\llvm-project\llvm-project\llvm\test\Transforms\InstCombine\fcmp-normalized-int.ll -passes=instcombine -S | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\Transforms\InstCombine\fcmp-normalized-int.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\opt.exe' -passes=instcombine -S
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' 'C:\_work\llvm-project\llvm-project\llvm\test\Transforms\InstCombine\fcmp-normalized-int.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\Transforms\InstCombine\fcmp-normalized-int.ll:160:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: [[TMP1:%.*]] = call i16 @llvm.smin.i16(i16 [[X:%.*]], i16 [[Y:%.*]])
# |               ^
# | <stdin>:77:2: note: 'next' match was here
# |  %2 = call i16 @llvm.smin.i16(i16 %x, i16 %y)
# |  ^
# | <stdin>:75:29: note: previous match ended here
# | define i1 @normalize_minmax(i16 %x, i16 %y, i16 %z) {
# |                             ^
# | <stdin>:76:1: note: non-matching line after previous match is here
# |  %1 = call i16 @llvm.smax.i16(i16 %x, i16 %z)
# | ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\Transforms\InstCombine\fcmp-normalized-int.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            70:  %s.v.v = select i1 %c, i16 %x, i16 %y 
# |            71:  %cmp = icmp ugt i16 %s.v.v, %z 
# |            72:  ret i1 %cmp 
# |            73: } 
# |            74:  
# |            75: define i1 @normalize_minmax(i16 %x, i16 %y, i16 %z) { 
# | next:160'0                                {                            search range start (exclusive)
# |            76:  %1 = call i16 @llvm.smax.i16(i16 %x, i16 %z) 
# |            77:  %2 = call i16 @llvm.smin.i16(i16 %x, i16 %y) 
# | next:160'1      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   error: match on wrong line
# |            78:  %cmp = icmp slt i16 %2, %1 
# |            79:  ret i1 %cmp 
# |            80: } 
# |            81:  
# |            82: define i1 @mixed_normalized(i16 %x, i16 %y, i16 %z, i1 %c) { 
# | next:160'2                                 }                                  search range end (exclusive)
# |            83:  %a = uitofp i16 %x to double 
# |            84:  %b = uitofp i16 %y to double 
# |            85:  %d = uitofp i16 %z to double 
# |            86:  %na = fdiv double %a, 6.553500e+04 
# |            87:  %nb = fdiv double %b, 6.553500e+04 
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# 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/228791


More information about the llvm-commits mailing list