Upload Tizen:Base source
[external/binutils.git] / gas / testsuite / gas / lm32 / insn.s
1         .macro RegReg insn      
2         \insn   r31, r0, r0
3         \insn   r0, r31, r0
4         \insn   r0, r0, r31
5         \insn   r1, r2, r3
6         .endm
7
8         .macro RegImm insn
9         \insn   r0, r0, 0
10         \insn   r0, r0, -32768
11         \insn   r0, r0, 32767
12         \insn   r0, r31, 0
13         \insn   r0, r31, -32768
14         \insn   r0, r31, 32767
15         \insn   r31, r0, 0
16         \insn   r31, r0, -32768
17         \insn   r31, r0, 32767
18         .endm
19
20         .macro RegUImm insn
21         \insn   r0, r0, 0
22         \insn   r0, r0, 65535
23         \insn   r0, r31, 0
24         \insn   r0, r31, 65535
25         \insn   r31, r0, 0
26         \insn   r31, r0, 65535
27         .endm
28
29         RegReg  add
30         RegImm  addi
31         RegReg  and
32         RegUImm andi
33         RegUImm andhi
34
35         andhi   r0, r0, hi(0x0000ffff)
36         andhi   r0, r0, hi(0xffff0000)
37
38         bi      label
39         b       r0
40         b       r31
41
42         be      r0, r0, label
43         be      r1, r2, label
44         bg      r0, r0, label
45         bg      r1, r2, label
46         bge     r0, r0, label
47         bge     r1, r2, label
48         bgeu    r0, r0, label
49         bgeu    r1, r2, label
50         bgu     r0, r0, label
51         bgu     r1, r2, label
52         bne     r0, r0, label
53         bne     r1, r2, label
54
55         calli   label
56         call    r0
57         call    r31
58
59         RegReg  cmpe
60         RegImm  cmpei
61         RegReg  cmpg
62         RegImm  cmpgi
63         RegReg  cmpge
64         RegImm  cmpgei
65         RegReg  cmpgeu
66         RegUImm cmpgeui
67         RegReg  cmpgu
68         RegUImm cmpgui
69         RegReg  cmpne
70         RegImm  cmpnei
71
72         RegReg  divu
73         RegReg  modu
74         RegReg  mul
75         RegImm  muli
76
77         RegReg  nor
78         RegUImm nori
79         RegReg  or
80         RegUImm ori
81         ori     r0, r0, lo(0xffff0000)
82         ori     r0, r0, lo(0x0000ffff)
83         RegUImm orhi
84         orhi    r0, r0, hi(0x0000ffff)
85         orhi    r0, r0, hi(0xffff0000)
86
87         RegReg  sl
88         RegReg  sr
89         RegReg  sru
90
91         sli     r0, r0, 0
92         sli     r0, r0, 31
93         sri     r0, r0, 0
94         sri     r0, r0, 31
95         srui    r0, r0, 0
96         srui    r0, r0, 31
97
98         RegReg  sub
99
100         RegReg  xnor
101         RegUImm xnori
102         RegReg  xor
103         RegUImm xori
104
105         sextb   r0, r0
106         sextb   r31, r0
107         sextb   r0, r31
108         sextb   r2, r1
109         sexth   r0, r0
110         sexth   r31, r0
111         sexth   r0, r31
112         sexth   r2, r1
113
114         lb      r0, (r0+0)
115         lb      r1, (r2+3)
116         lbu     r0, (r0+0)
117         lbu     r1, (r2+3)      
118         lh      r0, (r0+0)
119         lh      r1, (r2+3)
120         lhu     r0, (r0+0)
121         lhu     r1, (r2+3)
122         lw      r0, (r0+0)
123         lw      r1, (r2+3)
124         sb      (r0+0), r0
125         sb      (r1+2), r3
126         sh      (r0+0), r0
127         sh      (r1+2), r3
128         sw      (r0+0), r0
129         sw      (r1+2), r3
130
131         break
132         scall
133
134         eret
135         bret
136
137         ret
138         mvi     r0, 0   
139         mv      r0, r0
140         mvhi   r0, 0
141         mvhi   r0, hi(0)
142         not     r0, r0