mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-11-03 14:21:30 +00:00 
			
		
		
		
	Remove "target endian/pointersize" or add "target datalayout" to make the test parse properly or set the datalayout because defaults changes. For PR645: Make global names use the @ prefix. For llvm-upgrade changes: Fix test cases or completely remove use of llvm-upgrade for test cases that cannot survive the new renaming or upgrade capabilities. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33533 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			31 lines
		
	
	
		
			638 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			638 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
; RUN: llvm-as %s -o - | llvm-dis > %t1.ll
 | 
						|
; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
 | 
						|
; RUN: diff %t1.ll %t2.ll
 | 
						|
 | 
						|
declare void @"foo"()
 | 
						|
 | 
						|
implementation
 | 
						|
 | 
						|
; foo test basic arith operations
 | 
						|
define void @"foo"() {
 | 
						|
	%t1 = malloc i31, i32 4
 | 
						|
        %t2 = malloc i31, i32 7, align 1024
 | 
						|
        %t3 = malloc [4 x i15]
 | 
						|
 | 
						|
        %idx = getelementptr [4 x i15]* %t3, i64 0, i64 2
 | 
						|
        store i15 -123, i15* %idx
 | 
						|
 | 
						|
        free [4 x i15]* %t3
 | 
						|
        free i31* %t2
 | 
						|
        free i31* %t1
 | 
						|
        
 | 
						|
        %t4 = alloca i12, i32 100
 | 
						|
        free i12* %t4
 | 
						|
 | 
						|
        %t5 = alloca i31
 | 
						|
        store i31 -123, i31* %t5
 | 
						|
 | 
						|
        free i31* %t5
 | 
						|
	ret void
 | 
						|
}
 |