[llvm] InstCombine: Use SimplifyDemandedFPClass on fmul (PR #177490)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 22 15:53:45 PST 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 130098 tests passed
* 2880 tests skipped
* 1 test failed
## Failed Tests
(click on a test name to see its output)
### Clang
<details>
<summary>Clang.CodeGen/SystemZ/builtins-systemz-zvector.c</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\clang.exe -cc1 -internal-isystem C:\_work\llvm-project\llvm-project\build\lib\clang\23\include -nostdsysteminc -target-cpu z13 -triple s390x-linux-gnu -O2 -fzvector -flax-vector-conversions=none -Wall -Wno-unused -Werror -emit-llvm C:\_work\llvm-project\llvm-project\clang\test\CodeGen\SystemZ\builtins-systemz-zvector.c -o - | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\clang\test\CodeGen\SystemZ\builtins-systemz-zvector.c
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\clang.exe' -cc1 -internal-isystem 'C:\_work\llvm-project\llvm-project\build\lib\clang\23\include' -nostdsysteminc -target-cpu z13 -triple s390x-linux-gnu -O2 -fzvector -flax-vector-conversions=none -Wall -Wno-unused -Werror -emit-llvm 'C:\_work\llvm-project\llvm-project\clang\test\CodeGen\SystemZ\builtins-systemz-zvector.c' -o -
# 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\clang\test\CodeGen\SystemZ\builtins-systemz-zvector.c'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGen\SystemZ\builtins-systemz-zvector.c:4815:12: error: CHECK: expected string not found in input
# | // CHECK: fmul <2 x double> [[VAL]], splat (double 5.000000e-01)
# | ^
# | <stdin>:9172:50: note: scanning from here
# | %conv.i34 = sitofp <2 x i64> %20 to <2 x double>
# | ^
# | <stdin>:9172:50: note: with "VAL" equal to "%conv.i34"
# | %conv.i34 = sitofp <2 x i64> %20 to <2 x double>
# | ^
# | <stdin>:9194:13: note: possible intended match here
# | %mul.i45 = fmul <2 x double> %26, splat (double 2.000000e+00)
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\clang\test\CodeGen\SystemZ\builtins-systemz-zvector.c
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 9167: store volatile <2 x double> %conv.i36, ptr @vd, align 8, !tbaa !9
# | 9168: %19 = load volatile <2 x i64>, ptr @vul, align 8, !tbaa !9
# | 9169: %conv.i42 = uitofp <2 x i64> %19 to <2 x double>
# | 9170: store volatile <2 x double> %conv.i42, ptr @vd, align 8, !tbaa !9
# | 9171: %20 = load volatile <2 x i64>, ptr @vsl, align 8, !tbaa !9
# | 9172: %conv.i34 = sitofp <2 x i64> %20 to <2 x double>
# | check:4815'0 X error: no match found
# | check:4815'1 with "VAL" equal to "%conv.i34"
# | 9173: %mul.i35 = fmul nnan <2 x double> %conv.i34, splat (double 5.000000e-01)
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9174: store volatile <2 x double> %mul.i35, ptr @vd, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9175: %21 = load volatile <2 x i64>, ptr @vul, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9176: %conv.i40 = uitofp <2 x i64> %21 to <2 x double>
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9177: %mul.i41 = fmul nnan <2 x double> %conv.i40, splat (double 5.000000e-01)
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 9189: store volatile <2 x i64> %conv1.i48, ptr @vsl, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9190: %25 = load volatile <2 x double>, ptr @vd, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9191: %conv1.i54 = fptoui <2 x double> %25 to <2 x i64>
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9192: store volatile <2 x i64> %conv1.i54, ptr @vul, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9193: %26 = load volatile <2 x double>, ptr @vd, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9194: %mul.i45 = fmul <2 x double> %26, splat (double 2.000000e+00)
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:4815'2 ? possible intended match
# | 9195: %conv1.i46 = fptosi <2 x double> %mul.i45 to <2 x i64>
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9196: store volatile <2 x i64> %conv1.i46, ptr @vsl, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9197: %27 = load volatile <2 x double>, ptr @vd, align 8, !tbaa !9
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9198: %mul.i51 = fmul <2 x double> %27, splat (double 2.000000e+00)
# | check:4815'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 9199: %conv1.i52 = fptoui <2 x double> %mul.i51 to <2 x i64>
# | check:4815'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/177490
More information about the llvm-commits
mailing list