[mips] [IAS] Add partial support for the ULHU pseudo-instruction.
[oota-llvm.git] / test / MC / Mips / set-nomacro.s
1 # RUN: llvm-mc %s -arch=mips -mcpu=mips32 2>&1 | FileCheck %s
2
3 # CHECK-NOT: warning: macro instruction expanded into multiple instructions
4   .set macro
5   li  $8, -16
6   li  $8, 16
7   li  $8, 161616
8
9   la  $8, 16
10   la  $8, 161616
11   la  $8, 16($9)
12   la  $8, 161616($9)
13   la  $8, symbol
14
15   jal $25
16   jal $4, $25
17
18   bne $2, 0, 1332
19   bne $2, 1, 1332
20   beq $2, 0, 1332
21   beq $2, 1, 1332
22
23   blt $7, $8, local_label
24   blt $7, $0, local_label
25   blt $0, $8, local_label
26   blt $0, $0, local_label
27
28   bltu $7, $8, local_label
29   bltu $7, $0, local_label
30   bltu $0, $8, local_label
31   bltu $0, $0, local_label
32
33   ble $7, $8, local_label
34   ble $7, $0, local_label
35   ble $0, $8, local_label
36   ble $0, $0, local_label
37
38   bleu $7, $8, local_label
39   bleu $7, $0, local_label
40   bleu $0, $8, local_label
41   bleu $0, $0, local_label
42
43   bge $7, $8, local_label
44   bge $7, $0, local_label
45   bge $0, $8, local_label
46   bge $0, $0, local_label
47
48   bgeu $7, $8, local_label
49   bgeu $7, $0, local_label
50   bgeu $0, $8, local_label
51   bgeu $0, $0, local_label
52
53   bgt $7, $8, local_label
54   bgt $7, $0, local_label
55   bgt $0, $8, local_label
56   bgt $0, $0, local_label
57
58   bgtu $7, $8, local_label
59   bgtu $7, $0, local_label
60   bgtu $0, $8, local_label
61   bgtu $0, $0, local_label
62
63   ulhu $5, 0
64
65   add $4, $5, $6
66
67   .set noreorder
68   .set nomacro
69   li  $8, -16
70 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
71   li  $8, 16
72 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
73   li  $8, 161616
74 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
75
76   la  $8, 16
77 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
78   la  $8, 161616
79 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
80   la  $8, 16($9)
81 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
82   la  $8, 161616($9)
83 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
84   la  $8, symbol
85 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
86
87   jal $25
88 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
89   jal $4, $25
90 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
91
92   bne $2, 0, 1332
93 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
94   bne $2, 1, 1332
95 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
96   beq $2, 0, 1332
97 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
98   beq $2, 1, 1332
99 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
100
101   blt $7, $8, local_label
102 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
103   blt $7, $0, local_label
104 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
105   blt $0, $8, local_label
106 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
107   blt $0, $0, local_label
108 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
109
110   bltu $7, $8, local_label
111 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
112   bltu $7, $0, local_label
113 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
114   bltu $0, $8, local_label
115 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
116   bltu $0, $0, local_label
117 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
118
119   ble $7, $8, local_label
120 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
121   ble $7, $0, local_label
122 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
123   ble $0, $8, local_label
124 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
125   ble $0, $0, local_label
126 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
127
128   bleu $7, $8, local_label
129 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
130   bleu $7, $0, local_label
131 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
132   bleu $0, $8, local_label
133 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
134   bleu $0, $0, local_label
135 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
136
137   bge $7, $8, local_label
138 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
139   bge $7, $0, local_label
140 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
141   bge $0, $8, local_label
142 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
143   bge $0, $0, local_label
144 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
145
146   bgeu $7, $8, local_label
147 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
148   bgeu $7, $0, local_label
149 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
150   bgeu $0, $8, local_label
151 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
152   bgeu $0, $0, local_label
153 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
154
155   bgt $7, $8, local_label
156 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
157   bgt $7, $0, local_label
158 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
159   bgt $0, $8, local_label
160 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
161   bgt $0, $0, local_label
162 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
163
164   bgtu $7, $8, local_label
165 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
166   bgtu $7, $0, local_label
167 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
168   bgtu $0, $8, local_label
169 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
170   bgtu $0, $0, local_label
171 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
172
173   ulhu $5, 0
174 # CHECK: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions
175
176   add $4, $5, $6
177 # CHECK-NOT: [[@LINE-1]]:3: warning: macro instruction expanded into multiple instructions