; RUN: opt -S -mtriple=amdgcn-- -amdgpu-replace-lds-use-with-pointer -amdgpu-enable-lds-replace-with-pointer=true < %s | FileCheck %s ; DESCRIPTION ; ; ; LDS global @not-reachable-lds is used within non-kernel function @f0, but @f0 is *not* ; reachable from kernel @k, hence pointer replacement does not take place. ; ; CHECK: @not-reachable-lds = internal addrspace(3) global [4 x i32] undef, align 4 @not-reachable-lds = internal addrspace(3) global [4 x i32] undef, align 4 ; CHECK-NOT: @not-reachable-lds.ptr define internal void @f0() { ; CHECK-LABEL: entry: ; CHECK: %gep = getelementptr inbounds [4 x i32], [4 x i32] addrspace(3)* @not-reachable-lds, i32 0, i32 0 ; CHECK: ret void entry: %gep = getelementptr inbounds [4 x i32], [4 x i32] addrspace(3)* @not-reachable-lds, i32 0, i32 0 ret void } define protected amdgpu_kernel void @k0() { ; CHECK-LABEL: entry: ; CHECK: ret void entry: ret void }