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@4464 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			19 lines
		
	
	
		
			556 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			556 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
; This testcase is used to make sure that the outer element of arrays are 
 | 
						|
; folded completely away if possible.  This is a very common case, so it should
 | 
						|
; be efficient.
 | 
						|
;
 | 
						|
implementation
 | 
						|
 | 
						|
sbyte* %merge1([100 x sbyte] *%A, long %N) {
 | 
						|
	%P = getelementptr [100 x sbyte] *%A, long 0, long %N
 | 
						|
	ret sbyte* %P
 | 
						|
}
 | 
						|
 | 
						|
sbyte* %merge2([100 x sbyte] *%A, long %N) {
 | 
						|
        ; The graph for this example should end up exactly the same as for merge1
 | 
						|
        %P1 = getelementptr [100 x sbyte] *%A, long 0, long 0
 | 
						|
	%P2 = getelementptr sbyte* %P1, long %N
 | 
						|
	ret sbyte* %P2
 | 
						|
}
 | 
						|
 |