qemu/tests/tcg/cris/bare/testutils.inc

118 lines
1.3 KiB
PHP

.syntax no_register_prefix
.macro start
.text
.global main
main:
.endm
.macro quit
jump pass
nop
.endm
.macro pass
jump pass
nop
.endm
.macro startnostack
start
.endm
.macro fail
.data
99:
.asciz " checkr3 failed\n"
.text
move.d 99b, $r10
jsr _fail
nop
.endm
.macro checkr3 val
cmp.d 0x\val, $r3
beq 100f
nop
.data
99:
.asciz "checkr3 failed\n"
.text
move.d 99b, $r10
jsr _fail
nop
100:
.endm
; Test the condition codes
.macro test_cc N Z V C
.if \N
bpl 9f
nop
.else
bmi 9f
nop
.endif
.if \Z
bne 9f
nop
.else
beq 9f
nop
.endif
.if \V
bvc 9f
nop
.else
bvs 9f
nop
.endif
.if \C
bcc 9f
nop
.else
bcs 9f
nop
.endif
ba 8f
nop
9:
.data
99:
.asciz "test_move_cc failed\n"
.text
move.d 99b, $r10
jsr _fail
nop
8:
.endm
.macro test_move_cc N Z V C
.if \N
bpl 9f
nop
.else
bmi 9f
nop
.endif
.if \Z
bne 9f
nop
.else
beq 9f
nop
.endif
ba 8f
nop
9:
.data
99:
.asciz "test_move_cc failed\n"
.text
move.d 99b, $r10
jsr _fail
nop
8:
.endm