mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-30 16:17:05 +00:00 
			
		
		
		
	that the sign of the result follows the sign of the divisor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35301 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			27 lines
		
	
	
		
			932 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			932 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llvm-as %s -o - | llvm-dis > %t.ll
 | |
| ; RUN: diff %t.ll %s.out
 | |
| 
 | |
| ; test 33 bits
 | |
| ;
 | |
| @b = constant i33 add(i33 8589934591, i33 1)
 | |
| @c = constant i33 add(i33 8589934591, i33 8589934591)
 | |
| @d = constant i33 add(i33 8589934584, i33 8)
 | |
| @e = constant i33 sub(i33 0 , i33 1)
 | |
| @f = constant i33 sub(i33 0 , i33 8589934591)
 | |
| @g = constant i33 sub(i33 2 , i33 8589934591)
 | |
| 
 | |
| @h = constant i33 shl(i33 1 , i33 33)
 | |
| @i = constant i33 shl(i33 1 , i33 32)
 | |
| @j = constant i33 lshr(i33 8589934591 , i33 32)
 | |
| @l = constant i33 ashr(i33 8589934591 , i33 32)
 | |
| 
 | |
| @n = constant i33 mul(i33 8589934591, i33 2)
 | |
| @q = constant i33 sdiv(i33 -1,        i33 4294967295)
 | |
| @r = constant i33 udiv(i33 -1,        i33 4294967295)
 | |
| @s = constant i33 srem(i33  1,        i33 8589934590)
 | |
| @t = constant i33 urem(i33 8589934591,i33 -1)
 | |
| @o = constant i33 trunc( i34 8589934592 to i33 )
 | |
| @p = constant i33 trunc( i34 8589934591  to i33 )
 | |
| @u = constant i33 srem(i33  -1,       i33 17)
 | |
|  
 |