Lines Matching defs:reg1

14  * ANDs reg2 with mask and places the result in reg1.
16 * You cannnot use the same register for reg1 & reg2.
19 .macro ANDI32 reg1, reg2, mask
22 movhi \reg1, %hi(\mask)
23 movui \reg1, %lo(\mask)
24 and \reg1, \reg1, \reg2
26 andi \reg1, \reg2, %lo(\mask)
29 andhi \reg1, \reg2, %hi(\mask)
34 * ORs reg2 with mask and places the result in reg1.
36 * It is safe to use the same register for reg1 & reg2.
39 .macro ORI32 reg1, reg2, mask
42 orhi \reg1, \reg2, %hi(\mask)
43 ori \reg1, \reg2, %lo(\mask)
45 ori \reg1, \reg2, %lo(\mask)
48 orhi \reg1, \reg2, %hi(\mask)
53 * XORs reg2 with mask and places the result in reg1.
55 * It is safe to use the same register for reg1 & reg2.
58 .macro XORI32 reg1, reg2, mask
61 xorhi \reg1, \reg2, %hi(\mask)
62 xori \reg1, \reg1, %lo(\mask)
64 xori \reg1, \reg2, %lo(\mask)
67 xorhi \reg1, \reg2, %hi(\mask)
75 * It is safe to use the same register for reg1 & reg2.
78 .macro BT reg1, reg2, bit
83 andi \reg1, \reg2, (1 << \bit)
85 andhi \reg1, \reg2, (1 << (\bit - 16))
92 * bit is zero. The result of the bit test is stored in reg1.
94 * It is safe to use the same register for reg1 & reg2.
97 .macro BTBZ reg1, reg2, bit, label
98 BT \reg1, \reg2, \bit
99 beq \reg1, r0, \label
104 * bit is non-zero. The result of the bit test is stored in reg1.
106 * It is safe to use the same register for reg1 & reg2.
109 .macro BTBNZ reg1, reg2, bit, label
110 BT \reg1, \reg2, \bit
111 bne \reg1, r0, \label
116 * The result of the bit test is stored in reg1.
118 * It is NOT safe to use the same register for reg1 & reg2.
121 .macro BTC reg1, reg2, bit
126 andi \reg1, \reg2, (1 << \bit)
129 andhi \reg1, \reg2, (1 << (\bit - 16))
137 * The result of the bit test is stored in reg1.
139 * It is NOT safe to use the same register for reg1 & reg2.
142 .macro BTS reg1, reg2, bit
147 andi \reg1, \reg2, (1 << \bit)
150 andhi \reg1, \reg2, (1 << (\bit - 16))
158 * The result of the bit test is stored in reg1.
160 * It is NOT safe to use the same register for reg1 & reg2.
163 .macro BTR reg1, reg2, bit
168 andi \reg1, \reg2, (1 << \bit)
171 andhi \reg1, \reg2, (1 << (\bit - 16))
179 * The result of the bit test is stored in reg1. If the
182 * It is NOT safe to use the same register for reg1 & reg2.
185 .macro BTCBZ reg1, reg2, bit, label
186 BTC \reg1, \reg2, \bit
187 beq \reg1, r0, \label
192 * The result of the bit test is stored in reg1. If the
195 * It is NOT safe to use the same register for reg1 & reg2.
198 .macro BTCBNZ reg1, reg2, bit, label
199 BTC \reg1, \reg2, \bit
200 bne \reg1, r0, \label
205 * The result of the bit test is stored in reg1. If the
208 * It is NOT safe to use the same register for reg1 & reg2.
211 .macro BTSBZ reg1, reg2, bit, label
212 BTS \reg1, \reg2, \bit
213 beq \reg1, r0, \label
218 * The result of the bit test is stored in reg1. If the
221 * It is NOT safe to use the same register for reg1 & reg2.
224 .macro BTSBNZ reg1, reg2, bit, label
225 BTS \reg1, \reg2, \bit
226 bne \reg1, r0, \label
231 * The result of the bit test is stored in reg1. If the
234 * It is NOT safe to use the same register for reg1 & reg2.
237 .macro BTRBZ reg1, reg2, bit, label
238 BTR \reg1, \reg2, \bit
239 bne \reg1, r0, \label
244 * The result of the bit test is stored in reg1. If the
247 * It is NOT safe to use the same register for reg1 & reg2.
250 .macro BTRBNZ reg1, reg2, bit, label
251 BTR \reg1, \reg2, \bit
252 bne \reg1, r0, \label
256 * Tests the bits in mask against reg2 stores the result in reg1.
259 * It is safe to use the same register for reg1 & reg2.
262 .macro TSTBZ reg1, reg2, mask, label
263 ANDI32 \reg1, \reg2, \mask
264 beq \reg1, r0, \label
268 * Tests the bits in mask against reg2 stores the result in reg1.
271 * It is safe to use the same register for reg1 & reg2.
274 .macro TSTBNZ reg1, reg2, mask, label
275 ANDI32 \reg1, \reg2, \mask
276 bne \reg1, r0, \label