[flang-commits] [flang] [llvm] [flang]- Fix for IEEE_IS_NAN sets IEEE_INVALID after inspecting a sNaN (PR #205276)

via flang-commits flang-commits at lists.llvm.org
Tue Aug 11 05:46:38 PDT 2026


github-actions[bot] wrote:

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

* 139589 tests passed
* 3666 tests skipped
* 3 tests failed

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

### LLVM
<details>
<summary>LLVM.CodeGen/AArch64/known-fpclass-splat-vector.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=aarch64 -mattr=+sve < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\known-fpclass-splat-vector.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\known-fpclass-splat-vector.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=aarch64 -mattr=+sve
# 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\known-fpclass-splat-vector.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\known-fpclass-splat-vector.ll:20:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: pfalse p0.b
# |               ^
# | <stdin>:26:10: note: scanning from here
# | // %bb.0:
# |          ^
# | <stdin>:29:2: note: possible intended match here
# |  ptrue p0.s
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AArch64\known-fpclass-splat-vector.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |           21:  .p2align 2 
# |           22:  .type test_splat_const_isnan, at function 
# |           23:  .variant_pcs test_splat_const_isnan 
# |           24: test_splat_const_isnan: // @test_splat_const_isnan 
# |           25:  .cfi_startproc 
# |           26: // %bb.0: 
# | next:20'0             {   search range start (exclusive)
# | next:20'1                 error: no match found in search range
# |           27:  fmov z0.s, #2.00000000 
# |           28:  mov z1.s, #0x7f800000 
# |           29:  ptrue p0.s 
# | next:20'2      ?            possible intended match
# |           30:  and z0.s, z0.s, #0x7fffffff 
# |           31:  cmpgt p0.s, p0/z, z0.s, z1.s 
# |           32:  ret 
# |           33: .Lfunc_end1: 
# |           34:  .size test_splat_const_isnan, .Lfunc_end1-test_splat_const_isnan 
# |           35:  .cfi_endproc 
# |           36:  // -- End function 
# |           37:  .section ".note.GNU-stack","", at progbits 
# | next:20'3                                              } search range end (exclusive)
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/AMDGPU/llvm.is.fpclass.f16.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -global-isel=0 -mtriple=amdgpu7.04 < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll  | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe --check-prefixes=GFX7CHECK,GFX7SELDAG C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -global-isel=0 -mtriple=amdgpu7.04
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' --check-prefixes=GFX7CHECK,GFX7SELDAG 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll'
# note: command had no output on stdout or stderr
# RUN: at line 3
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -global-isel=1 -mtriple=amdgpu7.04 < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll  | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe --check-prefixes=GFX7CHECK,GFX7GLISEL C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -global-isel=1 -mtriple=amdgpu7.04
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' --check-prefixes=GFX7CHECK,GFX7GLISEL 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll'
# note: command had no output on stdout or stderr
# RUN: at line 4
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -global-isel=0 -mtriple=amdgpu8.03 < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll  | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe --check-prefixes=GFX8CHECK,GFX8SELDAG C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -global-isel=0 -mtriple=amdgpu8.03
# note: command had no output on stdout or stderr
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe' --check-prefixes=GFX8CHECK,GFX8SELDAG 'C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll:1362:20: error: GFX8SELDAG-NEXT: expected string not found in input
# | ; GFX8SELDAG-NEXT: v_lshrrev_b32_e32 v1, 16, v0
# |                    ^
# | <stdin>:741:41: note: scanning from here
# |  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
# |                                         ^
# | <stdin>:742:2: note: possible intended match here
# |  v_bfe_u32 v1, v0, 16, 15
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll:1503:20: error: GFX8SELDAG-NEXT: expected string not found in input
# | ; GFX8SELDAG-NEXT: v_lshrrev_b32_e32 v2, 16, v0
# |                    ^
# | <stdin>:787:41: note: scanning from here
# |  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
# |                                         ^
# | <stdin>:788:2: note: possible intended match here
# |  v_and_b32_e32 v2, 0x7fff, v1
# |  ^
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll:1682:20: error: GFX8SELDAG-NEXT: expected string not found in input
# | ; GFX8SELDAG-NEXT: v_lshrrev_b32_e32 v3, 16, v0
# |                    ^
# | <stdin>:836:41: note: scanning from here
# |  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
# |                                         ^
# | <stdin>:837:2: note: possible intended match here
# |  v_bfe_u32 v3, v1, 16, 15
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\AMDGPU\llvm.is.fpclass.f16.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |            736:  .globl isnan_v2f16 ; -- Begin function isnan_v2f16 
# |            737:  .p2align 6 
# |            738:  .type isnan_v2f16, at function 
# |            739: isnan_v2f16: ; @isnan_v2f16 
# |            740: ; %bb.0: 
# |            741:  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) 
# | next:1362'0                                            {   search range start (exclusive)
# | next:1362'1                                                error: no match found in search range
# |            742:  v_bfe_u32 v1, v0, 16, 15 
# | next:1362'2      ?                          possible intended match
# |            743:  s_movk_i32 s4, 0x7c00 
# |            744:  v_and_b32_e32 v0, 0x7fff7fff, v0 
# |            745:  v_cmp_lt_i16_e32 vcc, s4, v0 
# |            746:  v_cndmask_b32_e64 v0, 0, 1, vcc 
# |            747:  v_cmp_lt_i16_e32 vcc, s4, v1 
# |              .
# |              .
# |              .
# |            780:  .long 0 
# |            781:  .text 
# |            782:  .globl isnan_v3f16 ; -- Begin function isnan_v3f16 
# |            783:  .p2align 6 
# |            784:  .type isnan_v3f16, at function 
# |            785: isnan_v3f16: ; @isnan_v3f16 
# | next:1362'3                 }                 search range end (exclusive)
# |            786: ; %bb.0: 
# |            787:  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) 
# | next:1503'0                                            {   search range start (exclusive)
# | next:1503'1                                                error: no match found in search range
# |            788:  v_and_b32_e32 v2, 0x7fff, v1 
# | next:1503'2      ?                              possible intended match
# |            789:  s_movk_i32 s4, 0x7c00 
# |            790:  v_bfe_u32 v1, v0, 16, 15 
# |            791:  v_and_b32_e32 v0, 0x7fff7fff, v0 
# |            792:  v_cmp_lt_i16_e32 vcc, s4, v0 
# |            793:  v_cndmask_b32_e64 v0, 0, 1, vcc 
# |              .
# |              .
# |              .
# |            829:  .long 0 
# |            830:  .text 
# |            831:  .globl isnan_v4f16 ; -- Begin function isnan_v4f16 
# |            832:  .p2align 6 
# |            833:  .type isnan_v4f16, at function 
# |            834: isnan_v4f16: ; @isnan_v4f16 
# | next:1503'3                 }                 search range end (exclusive)
# |            835: ; %bb.0: 
# |            836:  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) 
# | next:1682'0                                            {   search range start (exclusive)
# | next:1682'1                                                error: no match found in search range
# |            837:  v_bfe_u32 v3, v1, 16, 15 
# | next:1682'2      ?                          possible intended match
# |            838:  s_movk_i32 s4, 0x7c00 
# |            839:  v_and_b32_e32 v2, 0x7fff7fff, v1 
# |            840:  v_bfe_u32 v1, v0, 16, 15 
# |            841:  v_and_b32_e32 v0, 0x7fff7fff, v0 
# |            842:  v_cmp_lt_i16_e32 vcc, s4, v0 
# |              .
# |              .
# |              .
# |            881:  .long 0 
# |            882:  .text 
# |            883:  .globl isnan_f16_strictfp ; -- Begin function isnan_f16_strictfp 
# |            884:  .p2align 6 
# |            885:  .type isnan_f16_strictfp, at function 
# |            886: isnan_f16_strictfp: ; @isnan_f16_strictfp 
# | next:1682'3                        }                        search range end (exclusive)
# |            887: ; %bb.0: 
# |            888:  s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) 
# |            889:  v_cmp_class_f16_e64 s[4:5], v0, 3 
# |            890:  v_cndmask_b32_e64 v0, 0, 1, s[4:5] 
# |            891:  s_setpc_b64 s[30:31] 
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.CodeGen/X86/is_fpclass-fp80.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\X86\is_fpclass-fp80.ll -mtriple=i686-linux | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\X86\is_fpclass-fp80.ll -check-prefixes=X86
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=i686-linux
# 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\X86\is_fpclass-fp80.ll' -check-prefixes=X86
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\X86\is_fpclass-fp80.ll:8:13: error: X86-NEXT: expected string not found in input
# | ; X86-NEXT: fldt {{[0-9]+}}(%esp)
# |             ^
# | <stdin>:8:18: note: scanning from here
# | # %bb.0: # %entry
# |                  ^
# | <stdin>:9:5: note: possible intended match here
# |  pushl %esi
# |     ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\X86\is_fpclass-fp80.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |           1:  .att_syntax 
# |           2:  .file "<stdin>" 
# |           3:  .text 
# |           4:  .globl is_nan_f80 # -- Begin function is_nan_f80 
# |           5:  .prefalign 4, .Lfunc_end0, nop 
# |           6:  .type is_nan_f80, at function 
# |           7: is_nan_f80: # @is_nan_f80 
# |           8: # %bb.0: # %entry 
# | next:8'0                     {   search range start (exclusive)
# | next:8'1                         error: no match found in search range
# |           9:  pushl %esi 
# | next:8'2         ?         possible intended match
# |          10:  movl 12(%esp), %eax 
# |          11:  movzwl 16(%esp), %ecx 
# |          12:  andl $32767, %ecx # imm = 0x7FFF 
# |          13:  xorl %edx, %edx 
# |          14:  cmpl 8(%esp), %edx 
# |           .
# |           .
# |           .
# |          31:  .size is_nan_f80, .Lfunc_end0-is_nan_f80 
# |          32:  # -- End function 
# |          33:  .globl is_nan_f80_strict # -- Begin function is_nan_f80_strict 
# |          34:  .prefalign 4, .Lfunc_end1, nop 
# |          35:  .type is_nan_f80_strict, at function 
# |          36: is_nan_f80_strict: # @is_nan_f80_strict 
# | next:8'3                       }                       search range end (exclusive)
# |          37: # %bb.0: # %entry 
# |          38:  pushl %esi 
# |          39:  movl 12(%esp), %eax 
# |          40:  movzwl 16(%esp), %ecx 
# |          41:  andl $32767, %ecx # imm = 0x7FFF 
# |           .
# |           .
# |           .
# | >>>>>>
# `-----------------------------
# 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/205276


More information about the flang-commits mailing list