Skip to content

Commit 7ffd955

Browse files
committed
more
1 parent 382bc96 commit 7ffd955

File tree

4 files changed

+33
-27
lines changed

4 files changed

+33
-27
lines changed

llvm/test/CodeGen/ARM/combine-movc-sub.ll

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,15 @@ declare void @foo(ptr, ptr)
2525
define hidden fastcc ptr @test(ptr %Search, ptr %ClauseList, i32 %Level, ptr nocapture %New) {
2626
; CHECK-LABEL: test:
2727
; CHECK: @ %bb.0: @ %entry
28-
; CHECK-NEXT: push.w {r4, r5, r6, r7, r8, r9, lr}
29-
; CHECK-NEXT: sub sp, #4
30-
; CHECK-NEXT: sub.w r7, r2, #32
28+
; CHECK-NEXT: push.w {r4, r5, r6, r7, r8, r9, r10, lr}
29+
; CHECK-NEXT: sub.w r9, r2, #32
3130
; CHECK-NEXT: mov r8, r0
3231
; CHECK-NEXT: movs r0, #1
3332
; CHECK-NEXT: mov r4, r2
34-
; CHECK-NEXT: add.w r6, r0, r7, lsr #5
33+
; CHECK-NEXT: add.w r6, r0, r9, lsr #5
3534
; CHECK-NEXT: mov r5, r1
36-
; CHECK-NEXT: mov.w r9, #0
35+
; CHECK-NEXT: lsr.w r7, r9, #5
36+
; CHECK-NEXT: mov.w r10, #0
3737
; CHECK-NEXT: b .LBB0_2
3838
; CHECK-NEXT: .LBB0_1: @ %for.inc
3939
; CHECK-NEXT: @ in Loop: Header=BB0_2 Depth=1
@@ -47,15 +47,15 @@ define hidden fastcc ptr @test(ptr %Search, ptr %ClauseList, i32 %Level, ptr noc
4747
; CHECK-NEXT: add.w r0, r0, r6, lsl #2
4848
; CHECK-NEXT: ldr r0, [r0, #40]
4949
; CHECK-NEXT: it hi
50-
; CHECK-NEXT: andhi r2, r7, #31
50+
; CHECK-NEXT: subhi.w r2, r9, r7, lsl #5
5151
; CHECK-NEXT: lsrs r0, r2
5252
; CHECK-NEXT: lsls r0, r0, #31
5353
; CHECK-NEXT: beq .LBB0_1
5454
; CHECK-NEXT: @ %bb.3: @ %if.then
5555
; CHECK-NEXT: @ in Loop: Header=BB0_2 Depth=1
5656
; CHECK-NEXT: mov r0, r8
5757
; CHECK-NEXT: bl foo
58-
; CHECK-NEXT: str.w r9, [r5, #4]
58+
; CHECK-NEXT: str.w r10, [r5, #4]
5959
; CHECK-NEXT: b .LBB0_1
6060
entry:
6161
%cmp4.i.i = icmp ugt i32 %Level, 31

llvm/test/CodeGen/ARM/dagcombine-ld-op-st.ll

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,11 @@ define i16 @test(ptr %p1) {
4141
;
4242
; CHECK-BE-NORMAL-LABEL: test:
4343
; CHECK-BE-NORMAL: @ %bb.0: @ %entry
44-
; CHECK-BE-NORMAL-NEXT: ldrh r1, [r0]
44+
; CHECK-BE-NORMAL-NEXT: ldr r1, [r0]
4545
; CHECK-BE-NORMAL-NEXT: movw r2, #65534
46-
; CHECK-BE-NORMAL-NEXT: orr r1, r1, r2
47-
; CHECK-BE-NORMAL-NEXT: strh r1, [r0]
46+
; CHECK-BE-NORMAL-NEXT: orr r2, r2, r1, lsr #16
47+
; CHECK-BE-NORMAL-NEXT: pkhbt r1, r1, r2, lsl #16
48+
; CHECK-BE-NORMAL-NEXT: str r1, [r0]
4849
; CHECK-BE-NORMAL-NEXT: mov r0, #0
4950
; CHECK-BE-NORMAL-NEXT: bx lr
5051
;

llvm/test/CodeGen/ARM/illegal-bitfield-loadstore.ll

Lines changed: 20 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -90,16 +90,16 @@ define void @i56_or(ptr %a) {
9090
;
9191
; BE-LABEL: i56_or:
9292
; BE: @ %bb.0:
93-
; BE-NEXT: mov r1, r0
94-
; BE-NEXT: ldr r0, [r0]
95-
; BE-NEXT: ldrh r2, [r1, #4]!
96-
; BE-NEXT: ldrb r3, [r1, #2]
93+
; BE-NEXT: ldr r1, [r0]
94+
; BE-NEXT: strb r1, [r0, #3]
95+
; BE-NEXT: ldrh r2, [r0, #4]!
96+
; BE-NEXT: ldrb r3, [r0, #2]
9797
; BE-NEXT: orr r2, r3, r2, lsl #8
98-
; BE-NEXT: orr r0, r2, r0, lsl #24
99-
; BE-NEXT: orr r0, r0, #384
100-
; BE-NEXT: strb r0, [r1, #2]
101-
; BE-NEXT: lsr r0, r0, #8
102-
; BE-NEXT: strh r0, [r1]
98+
; BE-NEXT: orr r1, r2, r1, lsl #24
99+
; BE-NEXT: orr r1, r1, #384
100+
; BE-NEXT: strb r1, [r0, #2]
101+
; BE-NEXT: lsr r1, r1, #8
102+
; BE-NEXT: strh r1, [r0]
103103
; BE-NEXT: mov pc, lr
104104
%aa = load i56, ptr %a
105105
%b = or i56 %aa, 384
@@ -118,11 +118,14 @@ define void @i56_and_or(ptr %a) {
118118
;
119119
; BE-LABEL: i56_and_or:
120120
; BE: @ %bb.0:
121-
; BE-NEXT: ldrh r1, [r0, #4]!
122-
; BE-NEXT: mov r2, #128
123-
; BE-NEXT: orr r1, r1, #1
124-
; BE-NEXT: strb r2, [r0, #2]
125-
; BE-NEXT: strh r1, [r0]
121+
; BE-NEXT: mov r1, r0
122+
; BE-NEXT: mov r3, #128
123+
; BE-NEXT: ldrh r2, [r1, #4]!
124+
; BE-NEXT: strb r3, [r1, #2]
125+
; BE-NEXT: ldr r3, [r0]
126+
; BE-NEXT: strb r3, [r0, #3]
127+
; BE-NEXT: orr r0, r2, #1
128+
; BE-NEXT: strh r0, [r1]
126129
; BE-NEXT: mov pc, lr
127130

128131
%b = load i56, ptr %a, align 1
@@ -143,9 +146,11 @@ define void @i56_insert_bit(ptr %a, i1 zeroext %bit) {
143146
;
144147
; BE-LABEL: i56_insert_bit:
145148
; BE: @ %bb.0:
146-
; BE-NEXT: ldrh r2, [r0, #4]!
149+
; BE-NEXT: ldr r2, [r0]
147150
; BE-NEXT: mov r3, #57088
151+
; BE-NEXT: strb r2, [r0, #3]
148152
; BE-NEXT: orr r3, r3, #16711680
153+
; BE-NEXT: ldrh r2, [r0, #4]!
149154
; BE-NEXT: and r2, r3, r2, lsl #8
150155
; BE-NEXT: orr r1, r2, r1, lsl #13
151156
; BE-NEXT: lsr r1, r1, #8

llvm/test/CodeGen/ARM/rotate-add.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,9 @@ define i64 @test_rotl_udiv_special_case(i64 %i) {
124124
; CHECK-NEXT: ldr r12, .LCPI8_0
125125
; CHECK-NEXT: adc lr, r2, #0
126126
; CHECK-NEXT: umull r3, r2, lr, r12
127-
; CHECK-NEXT: bic r3, r2, #1
128-
; CHECK-NEXT: add r2, r3, r2, lsr #1
129127
; CHECK-NEXT: ldr r3, .LCPI8_1
128+
; CHECK-NEXT: lsr r2, r2, #1
129+
; CHECK-NEXT: add r2, r2, r2, lsl #1
130130
; CHECK-NEXT: sub r2, lr, r2
131131
; CHECK-NEXT: subs r0, r0, r2
132132
; CHECK-NEXT: sbc r1, r1, #0

0 commit comments

Comments
 (0)