diff options
author | Yang Zhang <yang.z.zhang@intel.com> | 2015-08-28 09:58:54 +0800 |
---|---|---|
committer | Yang Zhang <yang.z.zhang@intel.com> | 2015-09-01 12:44:00 +0800 |
commit | e44e3482bdb4d0ebde2d8b41830ac2cdb07948fb (patch) | |
tree | 66b09f592c55df2878107a468a91d21506104d3f /qemu/tests/tcg/cris/testutils.inc | |
parent | 9ca8dbcc65cfc63d6f5ef3312a33184e1d726e00 (diff) |
Add qemu 2.4.0
Change-Id: Ic99cbad4b61f8b127b7dc74d04576c0bcbaaf4f5
Signed-off-by: Yang Zhang <yang.z.zhang@intel.com>
Diffstat (limited to 'qemu/tests/tcg/cris/testutils.inc')
-rw-r--r-- | qemu/tests/tcg/cris/testutils.inc | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/qemu/tests/tcg/cris/testutils.inc b/qemu/tests/tcg/cris/testutils.inc new file mode 100644 index 000000000..aa1641b2e --- /dev/null +++ b/qemu/tests/tcg/cris/testutils.inc @@ -0,0 +1,117 @@ + .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 |