@@ -30,14 +30,7 @@ start:
30
30
define i8 @rotl8_5 (i8 %x ) {
31
31
; CHECK-LABEL: rotl8_5:
32
32
; CHECK: ; %bb.0: ; %start
33
- ; CHECK-NEXT: lsl r24
34
- ; CHECK-NEXT: adc r24, r1
35
- ; CHECK-NEXT: lsl r24
36
- ; CHECK-NEXT: adc r24, r1
37
- ; CHECK-NEXT: lsl r24
38
- ; CHECK-NEXT: adc r24, r1
39
- ; CHECK-NEXT: lsl r24
40
- ; CHECK-NEXT: adc r24, r1
33
+ ; CHECK-NEXT: swap r24
41
34
; CHECK-NEXT: lsl r24
42
35
; CHECK-NEXT: adc r24, r1
43
36
; CHECK-NEXT: ret
@@ -49,20 +42,9 @@ start:
49
42
define i8 @rotl8_7 (i8 %x ) {
50
43
; CHECK-LABEL: rotl8_7:
51
44
; CHECK: ; %bb.0: ; %start
52
- ; CHECK-NEXT: lsl r24
53
- ; CHECK-NEXT: adc r24, r1
54
- ; CHECK-NEXT: lsl r24
55
- ; CHECK-NEXT: adc r24, r1
56
- ; CHECK-NEXT: lsl r24
57
- ; CHECK-NEXT: adc r24, r1
58
- ; CHECK-NEXT: lsl r24
59
- ; CHECK-NEXT: adc r24, r1
60
- ; CHECK-NEXT: lsl r24
61
- ; CHECK-NEXT: adc r24, r1
62
- ; CHECK-NEXT: lsl r24
63
- ; CHECK-NEXT: adc r24, r1
64
- ; CHECK-NEXT: lsl r24
65
- ; CHECK-NEXT: adc r24, r1
45
+ ; CHECK-NEXT: bst r24, 0
46
+ ; CHECK-NEXT: ror r24
47
+ ; CHECK-NEXT: bld r24, 7
66
48
; CHECK-NEXT: ret
67
49
start:
68
50
%0 = call i8 @llvm.fshl.i8 (i8 %x , i8 %x , i8 7 )
@@ -121,18 +103,7 @@ start:
121
103
define i8 @rotr8_5 (i8 %x ) {
122
104
; CHECK-LABEL: rotr8_5:
123
105
; CHECK: ; %bb.0: ; %start
124
- ; CHECK-NEXT: bst r24, 0
125
- ; CHECK-NEXT: ror r24
126
- ; CHECK-NEXT: bld r24, 7
127
- ; CHECK-NEXT: bst r24, 0
128
- ; CHECK-NEXT: ror r24
129
- ; CHECK-NEXT: bld r24, 7
130
- ; CHECK-NEXT: bst r24, 0
131
- ; CHECK-NEXT: ror r24
132
- ; CHECK-NEXT: bld r24, 7
133
- ; CHECK-NEXT: bst r24, 0
134
- ; CHECK-NEXT: ror r24
135
- ; CHECK-NEXT: bld r24, 7
106
+ ; CHECK-NEXT: swap r24
136
107
; CHECK-NEXT: bst r24, 0
137
108
; CHECK-NEXT: ror r24
138
109
; CHECK-NEXT: bld r24, 7
@@ -145,27 +116,8 @@ start:
145
116
define i8 @rotr8_7 (i8 %x ) {
146
117
; CHECK-LABEL: rotr8_7:
147
118
; CHECK: ; %bb.0: ; %start
148
- ; CHECK-NEXT: bst r24, 0
149
- ; CHECK-NEXT: ror r24
150
- ; CHECK-NEXT: bld r24, 7
151
- ; CHECK-NEXT: bst r24, 0
152
- ; CHECK-NEXT: ror r24
153
- ; CHECK-NEXT: bld r24, 7
154
- ; CHECK-NEXT: bst r24, 0
155
- ; CHECK-NEXT: ror r24
156
- ; CHECK-NEXT: bld r24, 7
157
- ; CHECK-NEXT: bst r24, 0
158
- ; CHECK-NEXT: ror r24
159
- ; CHECK-NEXT: bld r24, 7
160
- ; CHECK-NEXT: bst r24, 0
161
- ; CHECK-NEXT: ror r24
162
- ; CHECK-NEXT: bld r24, 7
163
- ; CHECK-NEXT: bst r24, 0
164
- ; CHECK-NEXT: ror r24
165
- ; CHECK-NEXT: bld r24, 7
166
- ; CHECK-NEXT: bst r24, 0
167
- ; CHECK-NEXT: ror r24
168
- ; CHECK-NEXT: bld r24, 7
119
+ ; CHECK-NEXT: lsl r24
120
+ ; CHECK-NEXT: adc r24, r1
169
121
; CHECK-NEXT: ret
170
122
start:
171
123
%0 = call i8 @llvm.fshr.i8 (i8 %x , i8 %x , i8 7 )
0 commit comments