32 lines
		
	
	
		
			836 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			836 B
		
	
	
	
		
			LLVM
		
	
	
	
; RUN: opt -S -mtriple=amdgcn--  -amdgpu-replace-lds-use-with-pointer -amdgpu-enable-lds-replace-with-pointer=true < %s | FileCheck %s
 | 
						|
 | 
						|
; DESCRIPTION ;
 | 
						|
;
 | 
						|
; LDS global @small_lds is used within non-kernel function @f0, and @f0 is reachable
 | 
						|
; from kernel @k0, but since @small_lds too small for pointer replacement, pointer
 | 
						|
; replacement does not take place.
 | 
						|
;
 | 
						|
 | 
						|
; CHECK: @small_lds = addrspace(3) global i8 undef, align 1
 | 
						|
@small_lds = addrspace(3) global i8 undef, align 1
 | 
						|
 | 
						|
; CHECK-NOT: @small_lds.ptr
 | 
						|
 | 
						|
define void @f0() {
 | 
						|
; CHECK-LABEL: entry:
 | 
						|
; CHECK:   store i8 1, i8 addrspace(3)* @small_lds, align 1
 | 
						|
; CHECK:   ret void
 | 
						|
entry:
 | 
						|
  store i8 1, i8 addrspace(3)* @small_lds, align 1
 | 
						|
  ret void
 | 
						|
}
 | 
						|
 | 
						|
define amdgpu_kernel void @k0() {
 | 
						|
; CHECK-LABEL: entry:
 | 
						|
; CHECK:   call void @f0()
 | 
						|
; CHECK:   ret void
 | 
						|
entry:
 | 
						|
  call void @f0()
 | 
						|
  ret void
 | 
						|
}
 |