.include "testutils.inc" | |
start | |
moveq -1, $r0 | |
moveq 0, $r1 | |
addq 1, $r0 | |
ax | |
addq 0, $r1 | |
move.d $r0, $r3 | |
checkr3 0 | |
move.d $r1, $r3 | |
checkr3 1 | |
move.d 0, $r0 | |
moveq -1, $r1 | |
subq 1, $r0 | |
ax | |
subq 0, $r1 | |
move.d $r0, $r3 | |
checkr3 ffffffff | |
move.d $r1, $r3 | |
checkr3 fffffffe | |
moveq -1, $r0 | |
moveq -1, $r1 | |
cmpq -1, $r0 | |
ax | |
cmpq -1, $r1 | |
beq 1f | |
nop | |
fail | |
1: | |
cmpq 0, $r0 | |
ax | |
cmpq -1, $r1 | |
bne 1f | |
nop | |
fail | |
1: | |
;; test for broken X sequence, run it several times. | |
moveq 8, $r0 | |
1: | |
moveq 0, $r3 | |
move.d $r0, $r1 | |
andq 1, $r1 | |
lslq 4, $r1 | |
moveq 1, $r2 | |
or.d $r1, $r2 | |
ba 2f | |
move $r2, $ccs | |
2: | |
addq 0, $r3 | |
move.d $r0, $r4 | |
move.d $r1, $r5 | |
move.d $r2, $r6 | |
move.d $r3, $r7 | |
lsrq 4, $r1 | |
move.d $r1, $r8 | |
xor $r1, $r3 | |
checkr3 0 | |
subq 1, $r0 | |
bne 1b | |
nop | |
pass | |
quit |