mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17527 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			58 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llvm-as < %s | llc
 | |
| 
 | |
| %a_str = internal constant [8 x sbyte] c"a = %d\0A\00"
 | |
| %a_mul_str = internal constant [13 x sbyte] c"a * %d = %d\0A\00"
 | |
| %A = global int 2
 | |
| declare int %printf(sbyte*, ...)
 | |
| 
 | |
| int %main() {  
 | |
|   %a = load int* %A
 | |
|   %a_s = getelementptr [8 x sbyte]* %a_str, long 0, long 0
 | |
|   %a_mul_s = getelementptr [13 x sbyte]* %a_mul_str, long 0, long 0
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_s, int %a)
 | |
| 
 | |
|   %r_0 = mul int %a, 0
 | |
|   %r_1 = mul int %a, 1
 | |
|   %r_2 = mul int %a, 2
 | |
|   %r_3 = mul int %a, 3
 | |
|   %r_4 = mul int %a, 4
 | |
|   %r_5 = mul int %a, 5
 | |
|   %r_6 = mul int %a, 6
 | |
|   %r_7 = mul int %a, 7
 | |
|   %r_8 = mul int %a, 8
 | |
|   %r_9 = mul int %a, 9
 | |
|   %r_10 = mul int %a, 10
 | |
|   %r_11 = mul int %a, 11
 | |
|   %r_12 = mul int %a, 12
 | |
|   %r_13 = mul int %a, 13
 | |
|   %r_14 = mul int %a, 14
 | |
|   %r_15 = mul int %a, 15
 | |
|   %r_16 = mul int %a, 16
 | |
|   %r_17 = mul int %a, 17
 | |
|   %r_18 = mul int %a, 18
 | |
|   %r_19 = mul int %a, 19
 | |
| 
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 0, int %r_0)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 1, int %r_1)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 2, int %r_2)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 3, int %r_3)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 4, int %r_4)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 5, int %r_5)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 6, int %r_6)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 7, int %r_7)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 8, int %r_8)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 9, int %r_9)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 10, int %r_10)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 11, int %r_11)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 12, int %r_12)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 13, int %r_13)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 14, int %r_14)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 15, int %r_15)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 16, int %r_16)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 17, int %r_17)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 18, int %r_18)
 | |
|   call int (sbyte*, ...)* %printf(sbyte* %a_mul_s, int 19, int %r_19)
 | |
| 
 | |
|   ret int 0
 | |
| }
 |