mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-24 22:32:47 +00:00
5957d8ffd8
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)
|
|
|