]> git.proxmox.com Git - qemu.git/blame - tests/lm32/macros.inc
configure: Copy test data to build directory
[qemu.git] / tests / lm32 / macros.inc
CommitLineData
d65f0831
MW
1
2.macro test_name name
3 .data
4tn_\name:
5 .asciz "\name"
6 .text
7 mvhi r13, hi(tn_\name)
8 ori r13, r13, lo(tn_\name)
9 sw (r12+8), r13
10.endm
11
12.macro load reg val
13 mvhi \reg, hi(\val)
14 ori \reg, \reg, lo(\val)
15.endm
16
17.macro tc_pass
18 mvi r13, 0
19 sw (r12+4), r13
20.endm
21
22.macro tc_fail
23 mvi r13, 1
24 sw (r12+4), r13
25.endm
26
27.macro check_r3 val
28 mvhi r13, hi(\val)
29 ori r13, r13, lo(\val)
30 be r3, r13, 1f
31 tc_fail
32 bi 2f
331:
34 tc_pass
352:
36.endm
37
38.macro check_mem adr val
39 mvhi r13, hi(\adr)
40 ori r13, r13, lo(\adr)
41 mvhi r14, hi(\val)
42 ori r14, r14, lo(\val)
43 lw r13, (r13+0)
44 be r13, r14, 1f
45 tc_fail
46 bi 2f
471:
48 tc_pass
492:
50.endm
51
52.macro check_excp excp
53 andi r13, r25, \excp
54 bne r13, r0, 1f
55 tc_fail
56 bi 2f
571:
58 tc_pass
592:
60.endm
61
62.macro start
63 .global _main
64 .text
65_main:
66 mvhi r12, hi(0xffff0000) # base address of test block
67 ori r12, r12, lo(0xffff0000)
68.endm
69
70.macro end
71 sw (r12+0), r0
721:
73 bi 1b
74.endm
75
76# base +
77# 0 ctrl
78# 4 pass/fail
79# 8 ptr to test name