[llvm] [LICM] Improve LICM when calls only change Inaccessible memory (PR #169379)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 16 08:02:23 PDT 2026
github-actions[bot] wrote:
<!--PREMERGE ADVISOR COMMENT: Windows-->
# :window: Windows x64 Test Results
* 133649 tests passed
* 3114 tests skipped
* 3 tests failed
## Failed Tests
(click on a test name to see its output)
### LLVM
<details>
<summary>LLVM.CodeGen/PowerPC/PR35812-neg-cmpxchg.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 4
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=powerpc64le-linux-gnu -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\PR35812-neg-cmpxchg.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\PR35812-neg-cmpxchg.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=powerpc64le-linux-gnu -verify-machineinstrs
# 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\PowerPC\PR35812-neg-cmpxchg.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\PR35812-neg-cmpxchg.ll:24:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: li 4, 234
# | ^
# | <stdin>:27:2: note: 'next' match was here
# | li 4, 234
# | ^
# | <stdin>:25:32: note: previous match ended here
# | # %bb.1: # %cmpxchg.fencedstore
# | ^
# | <stdin>:26:1: note: non-matching line after previous match is here
# | sync
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\PR35812-neg-cmpxchg.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 22: lharx 4, 0, 3
# | 23: cmplwi 4, 33059
# | 24: bne- 0, .LBB0_4
# | 25: # %bb.1: # %cmpxchg.fencedstore
# | 26: sync
# | 27: li 4, 234
# | next:24 !~~~~~~~~ error: match on wrong line
# | 28: .LBB0_2: # %cmpxchg.trystore
# | 29: # =>This Inner Loop Header: Depth=1
# | 30: sthcx. 4, 0, 3
# | 31: beq+ 0, .LBB0_5
# | 32: # %bb.3: # %cmpxchg.releasedload
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/PowerPC/all-atomics.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -mtriple=powerpc64le-linux-gnu -mcpu=pwr8 -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\all-atomics.ll | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\all-atomics.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -mtriple=powerpc64le-linux-gnu -mcpu=pwr8 -verify-machineinstrs
# 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\PowerPC\all-atomics.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\all-atomics.ll:4353:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: stbcx. 8, 0, 6
# | ^
# | <stdin>:1701:2: note: 'next' match was here
# | stbcx. 8, 0, 6
# | ^
# | <stdin>:1698:6: note: previous match ended here
# | sync
# | ^
# | <stdin>:1699:1: note: non-matching line after previous match is here
# | .LBB3_2: # %cmpxchg.trystore275
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\all-atomics.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 1696: bne- 0, .LBB3_4
# | 1697: # %bb.1: # %cmpxchg.fencedstore276
# | 1698: sync
# | 1699: .LBB3_2: # %cmpxchg.trystore275
# | 1700: # =>This Inner Loop Header: Depth=1
# | 1701: stbcx. 8, 0, 6
# | next:4353 !~~~~~~~~~~~~~ error: match on wrong line
# | 1702: beq+ 0, .LBB3_4
# | 1703: # %bb.3: # %cmpxchg.releasedload274
# | 1704: # in Loop: Header=BB3_2 Depth=1
# | 1705: lbarx 5, 0, 6
# | 1706: cmplw 5, 7
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1
--
```
</details>
<details>
<summary>LLVM.CodeGen/PowerPC/atomics.ll</summary>
```
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 2
c:\_work\llvm-project\llvm-project\build\bin\llc.exe -verify-machineinstrs < C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\atomics.ll -mtriple=powerpc-unknown-linux-gnu -verify-machineinstrs -ppc-asm-full-reg-names | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\atomics.ll --check-prefix=CHECK --check-prefix=PPC32
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\llc.exe' -verify-machineinstrs -mtriple=powerpc-unknown-linux-gnu -verify-machineinstrs -ppc-asm-full-reg-names
# 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\PowerPC\atomics.ll' --check-prefix=CHECK --check-prefix=PPC32
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\atomics.ll:271:15: error: CHECK-NEXT: is not on the line after the previous match
# | ; CHECK-NEXT: stwcx. r5, 0, r4
# | ^
# | <stdin>:223:2: note: 'next' match was here
# | stwcx. r5, 0, r4
# | ^
# | <stdin>:220:8: note: previous match ended here
# | lwsync
# | ^
# | <stdin>:221:1: note: non-matching line after previous match is here
# | .LBB10_2: # %cmpxchg.trystore
# | ^
# |
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\CodeGen\PowerPC\atomics.ll
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | .
# | .
# | .
# | 218: # %bb.1: # %cmpxchg.fencedstore
# | 219: li r5, 1
# | 220: lwsync
# | 221: .LBB10_2: # %cmpxchg.trystore
# | 222: # =>This Inner Loop Header: Depth=1
# | 223: stwcx. r5, 0, r4
# | next:271 !~~~~~~~~~~~~~~~ error: match on wrong line
# | 224: beq+ cr0, .LBB10_4
# | 225: # %bb.3: # %cmpxchg.releasedload
# | 226: # in Loop: Header=BB10_2 Depth=1
# | 227: lwarx r3, 0, r4
# | 228: cmplwi r3, 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/169379
More information about the llvm-commits
mailing list