[llvm] [LoopUnroll][NVPTX] Boost full unroll threshold to enable local memory promotion (PR #184546)

via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 3 21:57:06 PST 2026


github-actions[bot] wrote:

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

* 131730 tests passed
* 2974 tests skipped
* 1 test failed

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

### LLVM
<details>
<summary>LLVM.Transforms/LoopUnroll/NVPTX/loop-dependent-local-array.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\LoopUnroll\NVPTX\loop-dependent-local-array.ll -mtriple=nvptx64 -passes=loop-unroll -unroll-threshold=10    -unroll-partial-threshold=0 -unroll-max-iteration-count-to-analyze=0    -S | c:\_work\llvm-project\llvm-project\build\bin\filecheck.exe C:\_work\llvm-project\llvm-project\llvm\test\Transforms\LoopUnroll\NVPTX\loop-dependent-local-array.ll
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\opt.exe' -mtriple=nvptx64 -passes=loop-unroll -unroll-threshold=10 -unroll-partial-threshold=0 -unroll-max-iteration-count-to-analyze=0 -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\LoopUnroll\NVPTX\loop-dependent-local-array.ll'
# .---command stderr------------
# | C:\_work\llvm-project\llvm-project\llvm\test\Transforms\LoopUnroll\NVPTX\loop-dependent-local-array.ll:26:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: store i32 [[VAL]], ptr [[OUT]], alidgn 4
# |               ^
# | <stdin>:19:36: note: scanning from here
# |  %val = load i32, ptr %arr, align 4
# |                                    ^
# | <stdin>:19:36: note: with "VAL" equal to "%val"
# |  %val = load i32, ptr %arr, align 4
# |                                    ^
# | <stdin>:19:36: note: with "OUT" equal to "%out"
# |  %val = load i32, ptr %arr, align 4
# |                                    ^
# | <stdin>:20:2: note: possible intended match here
# |  store i32 %val, ptr %out, align 4
# |  ^
# | 
# | Input file: <stdin>
# | Check file: C:\_work\llvm-project\llvm-project\llvm\test\Transforms\LoopUnroll\NVPTX\loop-dependent-local-array.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |           14:  store i32 1, ptr %ptr.1, align 4 
# |           15:  %ptr.2 = getelementptr inbounds [4 x i32], ptr %arr, i32 0, i32 2 
# |           16:  store i32 2, ptr %ptr.2, align 4 
# |           17:  %ptr.3 = getelementptr inbounds [4 x i32], ptr %arr, i32 0, i32 3 
# |           18:  store i32 3, ptr %ptr.3, align 4 
# |           19:  %val = load i32, ptr %arr, align 4 
# | next:26'0                                        X error: no match found
# | next:26'1                                          with "VAL" equal to "%val"
# | next:26'2                                          with "OUT" equal to "%out"
# |           20:  store i32 %val, ptr %out, align 4 
# | next:26'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:26'3      ?                                  possible intended match
# |           21:  ret void 
# | next:26'0     ~~~~~~~~~~
# |           22: } 
# | next:26'0     ~~
# |           23:  
# | next:26'0     ~
# |           24: define void @no_alloca(ptr %src, ptr %dst) { 
# | next:26'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |           25: entry: 
# |            .
# |            .
# |            .
# | >>>>>>
# `-----------------------------
# 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/184546


More information about the llvm-commits mailing list