@@ -53,23 +53,22 @@ define signext i32 @bittest_10_i32(i32 signext %a) nounwind {
53
53
; MIPS64: # %bb.0:
54
54
; MIPS64-NEXT: andi $1, $4, 1024
55
55
; MIPS64-NEXT: sltiu $1, $1, 1
56
- ; MIPS64-NEXT: dsll $1, $1, 32
57
56
; MIPS64-NEXT: jr $ra
58
- ; MIPS64-NEXT: dsrl $2, $1, 32
57
+ ; MIPS64-NEXT: sll $2, $1, 0
59
58
;
60
59
; MIPS64R2-LABEL: bittest_10_i32:
61
60
; MIPS64R2: # %bb.0:
62
61
; MIPS64R2-NEXT: andi $1, $4, 1024
63
62
; MIPS64R2-NEXT: sltiu $1, $1, 1
64
63
; MIPS64R2-NEXT: jr $ra
65
- ; MIPS64R2-NEXT: dext $2, $1, 0, 32
64
+ ; MIPS64R2-NEXT: sll $2, $1, 0
66
65
;
67
66
; MIPS64R6-LABEL: bittest_10_i32:
68
67
; MIPS64R6: # %bb.0:
69
68
; MIPS64R6-NEXT: andi $1, $4, 1024
70
69
; MIPS64R6-NEXT: sltiu $1, $1, 1
71
70
; MIPS64R6-NEXT: jr $ra
72
- ; MIPS64R6-NEXT: dext $2, $1, 0, 32
71
+ ; MIPS64R6-NEXT: sll $2, $1, 0
73
72
;
74
73
; MM32R3-LABEL: bittest_10_i32:
75
74
; MM32R3: # %bb.0:
@@ -111,23 +110,22 @@ define signext i32 @bittest_15_i32(i32 signext %a) nounwind {
111
110
; MIPS64: # %bb.0:
112
111
; MIPS64-NEXT: andi $1, $4, 32768
113
112
; MIPS64-NEXT: sltiu $1, $1, 1
114
- ; MIPS64-NEXT: dsll $1, $1, 32
115
113
; MIPS64-NEXT: jr $ra
116
- ; MIPS64-NEXT: dsrl $2, $1, 32
114
+ ; MIPS64-NEXT: sll $2, $1, 0
117
115
;
118
116
; MIPS64R2-LABEL: bittest_15_i32:
119
117
; MIPS64R2: # %bb.0:
120
118
; MIPS64R2-NEXT: andi $1, $4, 32768
121
119
; MIPS64R2-NEXT: sltiu $1, $1, 1
122
120
; MIPS64R2-NEXT: jr $ra
123
- ; MIPS64R2-NEXT: dext $2, $1, 0, 32
121
+ ; MIPS64R2-NEXT: sll $2, $1, 0
124
122
;
125
123
; MIPS64R6-LABEL: bittest_15_i32:
126
124
; MIPS64R6: # %bb.0:
127
125
; MIPS64R6-NEXT: andi $1, $4, 32768
128
126
; MIPS64R6-NEXT: sltiu $1, $1, 1
129
127
; MIPS64R6-NEXT: jr $ra
130
- ; MIPS64R6-NEXT: dext $2, $1, 0, 32
128
+ ; MIPS64R6-NEXT: sll $2, $1, 0
131
129
;
132
130
; MM32R3-LABEL: bittest_15_i32:
133
131
; MM32R3: # %bb.0:
@@ -171,23 +169,22 @@ define signext i32 @bittest_16_i32(i32 signext %a) nounwind {
171
169
; MIPS64-NEXT: not $1, $4
172
170
; MIPS64-NEXT: srl $1, $1, 16
173
171
; MIPS64-NEXT: andi $1, $1, 1
174
- ; MIPS64-NEXT: dsll $1, $1, 32
175
172
; MIPS64-NEXT: jr $ra
176
- ; MIPS64-NEXT: dsrl $2, $1, 32
173
+ ; MIPS64-NEXT: sll $2, $1, 0
177
174
;
178
175
; MIPS64R2-LABEL: bittest_16_i32:
179
176
; MIPS64R2: # %bb.0:
180
177
; MIPS64R2-NEXT: not $1, $4
181
178
; MIPS64R2-NEXT: ext $1, $1, 16, 1
182
179
; MIPS64R2-NEXT: jr $ra
183
- ; MIPS64R2-NEXT: dext $2, $1, 0, 32
180
+ ; MIPS64R2-NEXT: sll $2, $1, 0
184
181
;
185
182
; MIPS64R6-LABEL: bittest_16_i32:
186
183
; MIPS64R6: # %bb.0:
187
184
; MIPS64R6-NEXT: not $1, $4
188
185
; MIPS64R6-NEXT: ext $1, $1, 16, 1
189
186
; MIPS64R6-NEXT: jr $ra
190
- ; MIPS64R6-NEXT: dext $2, $1, 0, 32
187
+ ; MIPS64R6-NEXT: sll $2, $1, 0
191
188
;
192
189
; MM32R3-LABEL: bittest_16_i32:
193
190
; MM32R3: # %bb.0:
@@ -228,24 +225,20 @@ define signext i32 @bittest_31_i32(i32 signext %a) nounwind {
228
225
; MIPS64-LABEL: bittest_31_i32:
229
226
; MIPS64: # %bb.0:
230
227
; MIPS64-NEXT: not $1, $4
231
- ; MIPS64-NEXT: srl $1, $1, 31
232
- ; MIPS64-NEXT: dsll $1, $1, 32
233
228
; MIPS64-NEXT: jr $ra
234
- ; MIPS64-NEXT: dsrl $2, $1, 32
229
+ ; MIPS64-NEXT: srl $2, $1, 31
235
230
;
236
231
; MIPS64R2-LABEL: bittest_31_i32:
237
232
; MIPS64R2: # %bb.0:
238
233
; MIPS64R2-NEXT: not $1, $4
239
- ; MIPS64R2-NEXT: srl $1, $1, 31
240
234
; MIPS64R2-NEXT: jr $ra
241
- ; MIPS64R2-NEXT: dext $2, $1, 0, 32
235
+ ; MIPS64R2-NEXT: srl $2, $1, 31
242
236
;
243
237
; MIPS64R6-LABEL: bittest_31_i32:
244
238
; MIPS64R6: # %bb.0:
245
239
; MIPS64R6-NEXT: not $1, $4
246
- ; MIPS64R6-NEXT: srl $1, $1, 31
247
240
; MIPS64R6-NEXT: jr $ra
248
- ; MIPS64R6-NEXT: dext $2, $1, 0, 32
241
+ ; MIPS64R6-NEXT: srl $2, $1, 31
249
242
;
250
243
; MM32R3-LABEL: bittest_31_i32:
251
244
; MM32R3: # %bb.0:
0 commit comments