mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-11-04 05:17:07 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12416 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			14 lines
		
	
	
		
			386 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			386 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
; RUN: llvm-as < %s | opt -basicaa -load-vn -gcse -instcombine | llvm-dis | not grep sub
 | 
						|
declare int %strlen(sbyte*)
 | 
						|
declare void %use(int %X)
 | 
						|
 | 
						|
sbyte %test(sbyte* %P, sbyte* %Q) {
 | 
						|
	%A = load sbyte* %Q
 | 
						|
	%X = call int %strlen(sbyte* %P)
 | 
						|
	%B = load sbyte* %Q                ;; CSE with A.
 | 
						|
	call void %use(int %X)             ;; make strlen not dead
 | 
						|
 | 
						|
	%C = sub sbyte %A, %B
 | 
						|
	ret sbyte %C
 | 
						|
}
 |