[llvm-branch-commits] [llvm] DAGCombiner: Drop AllowFPOpFusion from visitFSUBForFMACombine (PR #221439)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Sep 5 06:10:09 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 141568 tests passed
* 3255 tests skipped
* 3 tests failed
## Failed Tests
(click on a test name to see its output)
### LLVM
<details>
<summary>LLVM.CodeGen/AArch64/arm64-fma-combine-with-fpfusion.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\llc.exe < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\arm64-fma-combine-with-fpfusion.ll -mtriple=aarch64-linux-gnu -fp-contract=fast | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\arm64-fma-combine-with-fpfusion.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=aarch64-linux-gnu -fp-contract=fast
# 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\CodeGen\AArch64\arm64-fma-combine-with-fpfusion.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\arm64-fma-combine-with-fpfusion.ll:4:10: error: CHECK: expected string not found in input
# | ; CHECK: fmadd {{s[0-9]+}}, {{s[0-9]+}}, {{s[0-9]+}}
# | ^
# | <stdin>:7:20: note: scanning from here
# | // %bb.0: // %entry
# | ^
# | <stdin>:11:2: note: possible intended match here
# | fadd s0, s0, s2
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\arm64-fma-combine-with-fpfusion.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | 1: .file "<stdin>"
# | 2: .text
# | 3: .globl mul_add // -- Begin function mul_add
# | 4: .p2align 2
# | 5: .type mul_add, at function
# | 6: mul_add: // @mul_add
# | 7: // %bb.0: // %entry
# | check:4'0 { search range start (exclusive)
# | check:4'1 error: no match found in search range
# | 8: stp x29, x30, [sp, #-16]! // 16-byte Folded Spill
# | 9: fmul s0, s0, s1
# | 10: mov x29, sp
# | 11: fadd s0, s0, s2
# | check:4'2 ? possible intended match
# | 12: ldp x29, x30, [sp], #16 // 16-byte Folded Reload
# | 13: ret
# | 14: .Lfunc_end0:
# | 15: .size mul_add, .Lfunc_end0-mul_add
# | 16: // -- End function
# | 17: .section ".note.GNU-stack","", at progbits
# | check:4'3 } search range end (exclusive)
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/AArch64/neon-fma.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\llc.exe < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\neon-fma.ll -verify-machineinstrs -mtriple=aarch64-none-linux-gnu -mattr=+neon -fp-contract=fast | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\neon-fma.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -verify-machineinstrs -mtriple=aarch64-none-linux-gnu -mattr=+neon -fp-contract=fast
# 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\CodeGen\AArch64\neon-fma.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\neon-fma.ll:72:9: error: CHECK: expected string not found in input
# | ;CHECK: fmls {{v[0-9]+}}.2s, {{v[0-9]+}}.2s, {{v[0-9]+}}.2s
# | ^
# | <stdin>:191:26: note: scanning from here
# | fmla v2.2d, v1.2d, v0.2d
# | ^
# | <stdin>:204:2: note: possible intended match here
# | fmul v0.2s, v0.2s, v1.2s
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\neon-fma.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 186: .p2align 2
# | 187: .type fmuladd2xdouble_fused, at function
# | 188: fmuladd2xdouble_fused: // @fmuladd2xdouble_fused
# | 189: .cfi_startproc
# | 190: // %bb.0:
# | 191: fmla v2.2d, v1.2d, v0.2d
# | check:72'0 { search range start (exclusive)
# | check:72'1 error: no match found in search range
# | 192: mov v0.16b, v2.16b
# | 193: ret
# | 194: .Lfunc_end14:
# | 195: .size fmuladd2xdouble_fused, .Lfunc_end14-fmuladd2xdouble_fused
# | 196: .cfi_endproc
# | 197: // -- End function
# | 198: .globl fmla2xfloati_su // -- Begin function fmla2xfloati_su
# | 199: .p2align 2
# | 200: .type fmla2xfloati_su, at function
# | 201: fmla2xfloati_su: // @fmla2xfloati_su
# | 202: .cfi_startproc
# | 203: // %bb.0:
# | 204: fmul v0.2s, v0.2s, v1.2s
# | check:72'2 ? possible intended match
# | 205: fadd v1.2s, v2.2s, v0.2s
# | 206: fadd v0.2s, v1.2s, v0.2s
# | 207: ret
# | 208: .Lfunc_end15:
# | 209: .size fmla2xfloati_su, .Lfunc_end15-fmla2xfloati_su
# | .
# | .
# | .
# | 221: ret
# | 222: .Lfunc_end16:
# | 223: .size fmls2xdouble_su, .Lfunc_end16-fmls2xdouble_su
# | 224: .cfi_endproc
# | 225: // -- End function
# | 226: .section ".note.GNU-stack","", at progbits
# | check:72'3 } search range end (exclusive)
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
### Clang
<details>
<summary>Clang.CodeGenCUDA/fp-contract.cu</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 14
c:\_work\llvm-project\llvm-project\build\bin\clang.exe -cc1 -internal-isystem C:\_work\llvm-project\llvm-project\build\lib\clang\24\include -nostdsysteminc -fcuda-is-device -triple nvptx-nvidia-cuda -S -disable-llvm-passes -o - C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=COMMON,NV-ON C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\clang.exe' -cc1 -internal-isystem 'C:\_work\llvm-project\llvm-project\build\lib\clang\24\include' -nostdsysteminc -fcuda-is-device -triple nvptx-nvidia-cuda -S -disable-llvm-passes -o - 'C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefixes=COMMON,NV-ON 'C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu'
# note: command had no output on stdout or stderr
# RUN: at line 17
c:\_work\llvm-project\llvm-project\build\bin\clang.exe -cc1 -internal-isystem C:\_work\llvm-project\llvm-project\build\lib\clang\24\include -nostdsysteminc -fcuda-is-device -triple amdgpu9.06-amd-amdhsa -S -O1 -disable-llvm-passes -o - -x hip C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=COMMON,AMD-ON C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\clang.exe' -cc1 -internal-isystem 'C:\_work\llvm-project\llvm-project\build\lib\clang\24\include' -nostdsysteminc -fcuda-is-device -triple amdgpu9.06-amd-amdhsa -S -O1 -disable-llvm-passes -o - -x hip 'C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefixes=COMMON,AMD-ON 'C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu'
# note: command had no output on stdout or stderr
# RUN: at line 20
c:\_work\llvm-project\llvm-project\build\bin\clang.exe -cc1 -internal-isystem C:\_work\llvm-project\llvm-project\build\lib\clang\24\include -nostdsysteminc -fcuda-is-device -triple nvptx-nvidia-cuda -S -O3 -o - C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe -check-prefixes=COMMON,NV-OPT-FAST C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\clang.exe' -cc1 -internal-isystem 'C:\_work\llvm-project\llvm-project\build\lib\clang\24\include' -nostdsysteminc -fcuda-is-device -triple nvptx-nvidia-cuda -S -O3 -o - 'C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu'
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' -check-prefixes=COMMON,NV-OPT-FAST 'C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu:269:17: error: NV-OPT-FAST: expected string not found in input
# | // NV-OPT-FAST: fma.rn.f32
# | ^
# | <stdin>:46:23: note: scanning from here
# | // .globl _Z5func3fff // -- Begin function _Z5func3fff
# | ^
# | <stdin>:59:2: note: possible intended match here
# | mul.rn.f32 %r4, %r2, %r3;
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\clang\test\CodeGenCUDA\fp-contract.cu
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 41: fma.rn.f32 %r4, %r2, %r3, %r1;
# | 42: st.param.b32 [func_retval0], %r4;
# | 43: ret;
# | 44: // -- End function
# | 45: }
# | 46: // .globl _Z5func3fff // -- Begin function _Z5func3fff
# | check:269'0 { search range start (exclusive)
# | check:269'1 error: no match found in search range
# | 47: .visible .func (.param .b32 func_retval0) _Z5func3fff(
# | 48: .param .b32 _Z5func3fff_param_0,
# | 49: .param .b32 _Z5func3fff_param_1,
# | 50: .param .b32 _Z5func3fff_param_2
# | 51: ) // @_Z5func3fff
# | 52: {
# | 53: .reg .b32 %r<6>;
# | 54:
# | 55: // %bb.0: // %entry
# | 56: ld.param.b32 %r1, [_Z5func3fff_param_0];
# | 57: ld.param.b32 %r2, [_Z5func3fff_param_1];
# | 58: ld.param.b32 %r3, [_Z5func3fff_param_2];
# | 59: mul.rn.f32 %r4, %r2, %r3;
# | check:269'2 ? possible intended match
# | 60: add.rn.f32 %r5, %r1, %r4;
# | 61: st.param.b32 [func_retval0], %r5;
# | 62: ret;
# | 63: // -- End function
# | 64: }
# | check:269'3 } search range end (exclusive)
# | >>>>>>
# `-----------------------------
# 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/221439
More information about the llvm-branch-commits
mailing list