[llvm] [AMDGPU] Detect trivially uniform arguments in InstCombine (PR #129897)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 9 04:24:47 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `openmp-offload-amdgpu-runtime-2` running on `rocm-worker-hw-02` while building `llvm` at step 8 "Add check check-llvm".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/10/builds/6943

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 8 (Add check check-llvm) failure: test (failure)
******************** TEST 'LLVM :: Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.build/bin/opt -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1010 -passes=instcombine -S < /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.src/llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll | /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.build/bin/FileCheck /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.src/llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll # RUN: at line 2
+ /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.build/bin/opt -mtriple=amdgcn-amd-amdhsa -mcpu=gfx1010 -passes=instcombine -S
+ /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.build/bin/FileCheck /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.src/llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll
/home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.src/llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll:6499:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[V:%.*]] = call i32 @llvm.amdgcn.readlane.i32(i32 [[SRC:%.*]], i32 7)
              ^
<stdin>:3619:54: note: scanning from here
define amdgpu_kernel void @ds_bpermute_constant_lane(ptr addrspace(1) %out, i32 %src) #3 {
                                                     ^
/home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.src/llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll:6510:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[LANE:%.*]] = call i32 @llvm.amdgcn.readfirstlane.i32(i32 [[LANEARG:%.*]])
              ^
<stdin>:3624:53: note: scanning from here
define amdgpu_kernel void @ds_bpermute_uniform_lane(ptr addrspace(1) %out, i32 %lanearg, i32 %src) #3 {
                                                    ^
<stdin>:3624:66: note: possible intended match here
define amdgpu_kernel void @ds_bpermute_uniform_lane(ptr addrspace(1) %out, i32 %lanearg, i32 %src) #3 {
                                                                 ^

Input file: <stdin>
Check file: /home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.src/llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
             .
             .
             .
          3614: define amdgpu_kernel void @ds_bpermute_uniform_src(ptr addrspace(1) %out, i32 %lane) #3 { 
          3615:  store i32 7, ptr addrspace(1) %out, align 4 
          3616:  ret void 
          3617: } 
          3618:  
          3619: define amdgpu_kernel void @ds_bpermute_constant_lane(ptr addrspace(1) %out, i32 %src) #3 { 
next:6499                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
          3620:  store i32 %src, ptr addrspace(1) %out, align 4 
next:6499       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          3621:  ret void 
next:6499       ~~~~~~~~~~
          3622: } 
next:6499       ~~
          3623:  
next:6499       ~
          3624: define amdgpu_kernel void @ds_bpermute_uniform_lane(ptr addrspace(1) %out, i32 %lanearg, i32 %src) #3 { 
...

```

</details>

https://github.com/llvm/llvm-project/pull/129897


More information about the llvm-commits mailing list