* d10v_sim.h (SEXT56): Define.
[deliverable/binutils-gdb.git] / sim / testsuite / d10v-elf / t-macros.i
1 .macro start
2 .text
3 .align 2
4 .globl _start
5 _start:
6 .endm
7
8
9 .macro exit47
10 ldi r6, 1
11 ldi r2, 47
12 trap 15
13 .endm
14
15
16 .macro exit0
17 ldi r6, 1
18 ldi r2, 0
19 trap 15
20 .endm
21
22
23 .macro load reg val
24 ldi \reg, #\val
25 .endm
26
27
28 .macro load2w reg hi lo
29 ld2w \reg, @(1f,r0)
30 .data
31 .align 2
32 1: .short \hi
33 .short \lo
34 .text
35 .endm
36
37
38 .macro check exit reg val
39 cmpeqi \reg, #\val
40 brf0t 1f
41 0: ldi r6, 1
42 ldi r2, \exit
43 trap 15
44 1:
45 .endm
46
47
48 .macro check2w2 exit reg hi lo
49 st2w \reg, @(1f,r0)
50 ld r2, @(1f, r0)
51 cmpeqi r2, #\hi
52 brf0f 0f
53 ld r2, @(1f + 2, r0)
54 cmpeqi r2, #\lo
55 brf0f 0f
56 bra 2f
57 0: ldi r6, 1
58 ldi r2, \exit
59 trap 15
60 .data
61 .align 2
62 1: .long 0
63 .text
64 2:
65 .endm
66
67
68 .macro loadacc2 acc guard hi lo
69 ldi r2, #\lo
70 mvtaclo r2, \acc
71 ldi r2, #\hi
72 mvtachi r2, \acc
73 ldi r2, #\guard
74 mvtacg r2, \acc
75 .endm
76
77
78 .macro checkacc2 exit acc guard hi lo
79 ldi r2, #\guard
80 mvfacg r3, \acc
81 cmpeq r2, r3
82 brf0f 0f
83 ldi r2, #\hi
84 mvfachi r3, \acc
85 cmpeq r2, r3
86 brf0f 0f
87 ldi r2, #\lo
88 mvfaclo r3, \acc
89 cmpeq r2, r3
90 brf0f 0f
91 bra 4f
92 0: ldi r6, 1
93 ldi r2, \exit
94 trap 15
95 4:
96 .endm
97
98
99 .macro loadpsw2 val
100 ldi r2, #\val
101 mvtc r2, cr0
102 .endm
103
104
105 .macro checkpsw2 exit val
106 mvfc r2, cr0
107 cmpeqi r2, #\val
108 brf0t 1f
109 ldi r6, 1
110 ldi r2, \exit
111 trap 15
112 1:
113 .endm
114
115
116 .macro hello
117 ;; 4:write (1, string, strlen (string))
118 ldi r6, 4
119 ldi r2, 1
120 ldi r3, 1f
121 ldi r4, 2f-1f-1
122 trap 15
123 .section .rodata
124 1: .string "Hello World!\n"
125 2: .align 2
126 .text
127 .endm
This page took 0.034936 seconds and 5 git commands to generate.