summaryrefslogtreecommitdiff
path: root/sim/testsuite/sim/arm/xscale/testutils.inc
diff options
context:
space:
mode:
Diffstat (limited to 'sim/testsuite/sim/arm/xscale/testutils.inc')
-rw-r--r--sim/testsuite/sim/arm/xscale/testutils.inc118
1 files changed, 0 insertions, 118 deletions
diff --git a/sim/testsuite/sim/arm/xscale/testutils.inc b/sim/testsuite/sim/arm/xscale/testutils.inc
deleted file mode 100644
index ae49db8820a..00000000000
--- a/sim/testsuite/sim/arm/xscale/testutils.inc
+++ /dev/null
@@ -1,118 +0,0 @@
-# r0-r3 are used as tmps, consider them call clobbered by these macros.
-# This uses the angel rom monitor calls.
-# ??? How do we use the \@ facility of .macros ???
-# @ is the comment char!
-
- .macro mvi_h_gr reg, val
- ldr \reg,[pc]
- b . + 8
- .word \val
- .endm
-
- .macro mvaddr_h_gr reg, addr
- ldr \reg,[pc]
- b . + 8
- .word \addr
- .endm
-
- .macro start
- .data
-failmsg:
- .asciz "fail\n"
-passmsg:
- .asciz "pass\n"
- .text
-
-do_pass:
- ldr r1, passmsg_addr
- mov r0, #4
- swi #0x123456
- exit 0
-passmsg_addr:
- .word passmsg
-
-do_fail:
- ldr r1, failmsg_addr
- mov r0, #4
- swi #0x123456
- exit 1
-failmsg_addr:
- .word failmsg
-
- .global _start
-_start:
- .endm
-
-# *** Other macros know pass/fail are 4 bytes in size! Yuck.
-
- .macro pass
- b do_pass
- .endm
-
- .macro fail
- b do_fail
- .endm
-
- .macro exit rc
- # ??? This works with the ARMulator but maybe not others.
- #mov r0, #\rc
- #swi #1
- # This seems to be portable (though it ignores rc).
- mov r0,#0x18
- mvi_h_gr r1, 0x20026
- swi #0x123456
- # If that returns, punt with a sigill.
- stc 0,cr0,[r0]
- .endm
-
-# Other macros know this only clobbers r0.
-# WARNING: It also clobbers the condition codes (FIXME).
- .macro test_h_gr reg, val
- mvaddr_h_gr r0, \val
- cmp \reg, r0
- beq . + 8
- fail
- .endm
-
- .macro mvi_h_cnvz c, n, v, z
- mov r0, #0
- .if \c
- orr r0, r0, #0x20000000
- .endif
- .if \n
- orr r0, r0, #0x80000000
- .endif
- .if \v
- orr r0, r0, #0x10000000
- .endif
- .if \z
- orr r0, r0, #0x40000000
- .endif
- mrs r1, cpsr
- bic r1, r1, #0xf0000000
- orr r1, r1, r0
- msr cpsr, r1
- # ??? nops needed
- .endm
-
-# ??? Preserve condition codes?
- .macro test_h_cnvz c, n, v, z
- mov r0, #0
- .if \c
- orr r0, r0, #0x20000000
- .endif
- .if \n
- orr r0, r0, #0x80000000
- .endif
- .if \v
- orr r0, r0, #0x10000000
- .endif
- .if \z
- orr r0, r0, #0x40000000
- .endif
- mrs r1, cpsr
- and r1, r1, #0xf0000000
- cmp r0, r1
- beq . + 8
- fail
- .endm