Skip to content

Commit 5bab1f0

Browse files
committed
[ARM][TypePromotion] Re-generate test checks. NFC
Tests were missing load/store alignment. One test in casts.ll had no check lines.
1 parent 65bc8ba commit 5bab1f0

File tree

6 files changed

+24
-14
lines changed

6 files changed

+24
-14
lines changed

llvm/test/Transforms/TypePromotion/ARM/calls.ll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ define hidden i32 @call_return_pointer(i8 zeroext %p_13) local_unnamed_addr #0 {
169169
; CHECK-NEXT: [[TMP1:%.*]] = trunc i32 [[TMP0]] to i8
170170
; CHECK-NEXT: [[CONV1:%.*]] = zext i8 [[TMP1]] to i16
171171
; CHECK-NEXT: [[CALL:%.*]] = tail call i16** @func_62(i8 zeroext undef, i32 undef, i16 signext [[CONV1]], i32* undef)
172-
; CHECK-NEXT: [[TMP2:%.*]] = load i32, i32* getelementptr inbounds (%struct.anon, %struct.anon* @g_893, i32 0, i32 0), align 4
172+
; CHECK-NEXT: [[TMP2:%.*]] = load i32, i32* getelementptr inbounds ([[STRUCT_ANON:%.*]], %struct.anon* @g_893, i32 0, i32 0), align 4
173173
; CHECK-NEXT: [[CONV2:%.*]] = trunc i32 [[TMP2]] to i16
174174
; CHECK-NEXT: br label [[FOR_COND:%.*]]
175175
; CHECK: for.cond:

llvm/test/Transforms/TypePromotion/ARM/casts.ll

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ define i8 @trunc_i16_i8(i16* %ptr, i16 zeroext %arg0, i8 zeroext %arg1) {
3232
; CHECK-LABEL: @trunc_i16_i8(
3333
; CHECK-NEXT: entry:
3434
; CHECK-NEXT: [[TMP0:%.*]] = zext i8 [[ARG1:%.*]] to i32
35-
; CHECK-NEXT: [[TMP1:%.*]] = load i16, i16* [[PTR:%.*]]
35+
; CHECK-NEXT: [[TMP1:%.*]] = load i16, i16* [[PTR:%.*]], align 2
3636
; CHECK-NEXT: [[TMP2:%.*]] = add i16 [[TMP1]], [[ARG0:%.*]]
3737
; CHECK-NEXT: [[TMP3:%.*]] = trunc i16 [[TMP2]] to i8
3838
; CHECK-NEXT: [[TMP4:%.*]] = zext i8 [[TMP3]] to i32
@@ -132,7 +132,7 @@ entry:
132132
define i1 @or_icmp_ugt(i32 %arg, i8* %ptr) {
133133
; CHECK-LABEL: @or_icmp_ugt(
134134
; CHECK-NEXT: entry:
135-
; CHECK-NEXT: [[TMP0:%.*]] = load i8, i8* [[PTR:%.*]]
135+
; CHECK-NEXT: [[TMP0:%.*]] = load i8, i8* [[PTR:%.*]], align 1
136136
; CHECK-NEXT: [[TMP1:%.*]] = zext i8 [[TMP0]] to i32
137137
; CHECK-NEXT: [[TMP2:%.*]] = zext i8 [[TMP0]] to i32
138138
; CHECK-NEXT: [[MUL:%.*]] = shl nuw nsw i32 [[TMP2]], 1
@@ -246,6 +246,16 @@ exit:
246246
}
247247

248248
define i16 @bitcast_i16(i16 zeroext %arg0, i16 zeroext %arg1) {
249+
; CHECK-LABEL: @bitcast_i16(
250+
; CHECK-NEXT: entry:
251+
; CHECK-NEXT: [[TMP0:%.*]] = zext i16 [[ARG0:%.*]] to i32
252+
; CHECK-NEXT: [[CAST:%.*]] = bitcast i16 12345 to i16
253+
; CHECK-NEXT: [[TMP1:%.*]] = zext i16 [[CAST]] to i32
254+
; CHECK-NEXT: [[ADD:%.*]] = add nuw i32 [[TMP0]], 1
255+
; CHECK-NEXT: [[CMP:%.*]] = icmp ule i32 [[ADD]], [[TMP1]]
256+
; CHECK-NEXT: [[RES:%.*]] = select i1 [[CMP]], i16 [[ARG1:%.*]], i16 32657
257+
; CHECK-NEXT: ret i16 [[RES]]
258+
;
249259
entry:
250260
%cast = bitcast i16 12345 to i16
251261
%add = add nuw i16 %arg0, 1
@@ -518,7 +528,7 @@ define i8 @search_through_zext_load(i8* %a, i8 zeroext %b, i16 zeroext %c) {
518528
; CHECK-NEXT: entry:
519529
; CHECK-NEXT: [[TMP0:%.*]] = zext i8 [[B:%.*]] to i32
520530
; CHECK-NEXT: [[TMP1:%.*]] = zext i16 [[C:%.*]] to i32
521-
; CHECK-NEXT: [[LOAD:%.*]] = load i8, i8* [[A:%.*]]
531+
; CHECK-NEXT: [[LOAD:%.*]] = load i8, i8* [[A:%.*]], align 1
522532
; CHECK-NEXT: [[TMP2:%.*]] = zext i8 [[LOAD]] to i32
523533
; CHECK-NEXT: [[CMP1:%.*]] = icmp ult i32 [[TMP2]], [[TMP1]]
524534
; CHECK-NEXT: br i1 [[CMP1]], label [[IF_THEN:%.*]], label [[IF_END:%.*]]
@@ -631,7 +641,7 @@ define i16 @trunc_sink_less_than_store(i16 zeroext %a, i16 zeroext %b, i16 zeroe
631641
; CHECK-NEXT: [[TMP4:%.*]] = and i32 [[SUB]], 255
632642
; CHECK-NEXT: [[ADD:%.*]] = add nuw i32 [[TMP2]], [[TMP4]]
633643
; CHECK-NEXT: [[TMP5:%.*]] = trunc i32 [[ADD]] to i8
634-
; CHECK-NEXT: store i8 [[TMP5]], i8* [[E:%.*]]
644+
; CHECK-NEXT: store i8 [[TMP5]], i8* [[E:%.*]], align 1
635645
; CHECK-NEXT: br label [[IF_END]]
636646
; CHECK: if.end:
637647
; CHECK-NEXT: [[RETVAL:%.*]] = phi i32 [ 0, [[ENTRY:%.*]] ], [ [[SUB]], [[IF_THEN]] ]
@@ -981,7 +991,7 @@ entry:
981991
define i32 @replace_trunk_with_mask(i16* %a) {
982992
; CHECK-LABEL: @replace_trunk_with_mask(
983993
; CHECK-NEXT: entry:
984-
; CHECK-NEXT: [[TMP0:%.*]] = load i16, i16* [[A:%.*]]
994+
; CHECK-NEXT: [[TMP0:%.*]] = load i16, i16* [[A:%.*]], align 2
985995
; CHECK-NEXT: [[TMP1:%.*]] = zext i16 [[TMP0]] to i32
986996
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[TMP1]], 0
987997
; CHECK-NEXT: br i1 [[CMP]], label [[COND_END:%.*]], label [[COND_FALSE:%.*]]

llvm/test/Transforms/TypePromotion/ARM/icmps.ll

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,8 @@ define void @store_dsp_res(i8* %in, i8* %out, i8 %compare) {
168168
; CHECK-LABEL: @store_dsp_res(
169169
; CHECK-NEXT: [[FIRST:%.*]] = getelementptr inbounds i8, i8* [[IN:%.*]], i32 0
170170
; CHECK-NEXT: [[SECOND:%.*]] = getelementptr inbounds i8, i8* [[IN]], i32 1
171-
; CHECK-NEXT: [[LD0:%.*]] = load i8, i8* [[FIRST]]
172-
; CHECK-NEXT: [[LD1:%.*]] = load i8, i8* [[SECOND]]
171+
; CHECK-NEXT: [[LD0:%.*]] = load i8, i8* [[FIRST]], align 1
172+
; CHECK-NEXT: [[LD1:%.*]] = load i8, i8* [[SECOND]], align 1
173173
; CHECK-NEXT: [[XOR:%.*]] = xor i8 [[LD0]], -1
174174
; CHECK-NEXT: [[CMP:%.*]] = icmp ult i8 [[COMPARE:%.*]], [[LD1]]
175175
; CHECK-NEXT: [[SELECT:%.*]] = select i1 [[CMP]], i8 [[COMPARE]], i8 [[XOR]]
@@ -253,7 +253,7 @@ define i32 @icmp_not(i16 zeroext %arg0, i16 zeroext %arg1) {
253253
define i32 @icmp_i1(i1* %arg0, i1 zeroext %arg1, i32 %a, i32 %b) {
254254
; CHECK-LABEL: @icmp_i1(
255255
; CHECK-NEXT: entry:
256-
; CHECK-NEXT: [[LOAD:%.*]] = load i1, i1* [[ARG0:%.*]]
256+
; CHECK-NEXT: [[LOAD:%.*]] = load i1, i1* [[ARG0:%.*]], align 1
257257
; CHECK-NEXT: [[NOT:%.*]] = xor i1 [[LOAD]], true
258258
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i1 [[ARG1:%.*]], [[NOT]]
259259
; CHECK-NEXT: [[RES:%.*]] = select i1 [[CMP]], i32 [[A:%.*]], i32 [[B:%.*]]
@@ -271,7 +271,7 @@ define i32 @icmp_i7(i7* %arg0, i7 zeroext %arg1, i32 %a, i32 %b) {
271271
; CHECK-LABEL: @icmp_i7(
272272
; CHECK-NEXT: entry:
273273
; CHECK-NEXT: [[TMP0:%.*]] = zext i7 [[ARG1:%.*]] to i32
274-
; CHECK-NEXT: [[LOAD:%.*]] = load i7, i7* [[ARG0:%.*]]
274+
; CHECK-NEXT: [[LOAD:%.*]] = load i7, i7* [[ARG0:%.*]], align 1
275275
; CHECK-NEXT: [[TMP1:%.*]] = zext i7 [[LOAD]] to i32
276276
; CHECK-NEXT: [[ADD:%.*]] = add nuw i32 [[TMP1]], 1
277277
; CHECK-NEXT: [[CMP:%.*]] = icmp ult i32 [[TMP0]], [[ADD]]

llvm/test/Transforms/TypePromotion/ARM/phis-ret.ll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ define i16 @promote_arg_return(i16 zeroext %arg1, i16 zeroext %arg2, i8* %res) {
278278
; CHECK-NEXT: [[MUL:%.*]] = mul nuw nsw i32 [[ADD]], 3
279279
; CHECK-NEXT: [[CMP:%.*]] = icmp ult i32 [[MUL]], [[TMP2]]
280280
; CHECK-NEXT: [[CONV:%.*]] = zext i1 [[CMP]] to i8
281-
; CHECK-NEXT: store i8 [[CONV]], i8* [[RES:%.*]]
281+
; CHECK-NEXT: store i8 [[CONV]], i8* [[RES:%.*]], align 1
282282
; CHECK-NEXT: [[TMP3:%.*]] = trunc i32 [[TMP1]] to i16
283283
; CHECK-NEXT: ret i16 [[TMP3]]
284284
;

llvm/test/Transforms/TypePromotion/ARM/pointers.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,8 @@ define i8 @call_pointer(i8 zeroext %x, i8 zeroext %y, i16* %a, i16* %b) {
130130
define i16 @pointer_to_pointer(i16** %arg, i16 zeroext %limit) {
131131
; CHECK-LABEL: @pointer_to_pointer(
132132
; CHECK-NEXT: entry:
133-
; CHECK-NEXT: [[ADDR:%.*]] = load i16*, i16** [[ARG:%.*]]
134-
; CHECK-NEXT: [[VAL:%.*]] = load i16, i16* [[ADDR]]
133+
; CHECK-NEXT: [[ADDR:%.*]] = load i16*, i16** [[ARG:%.*]], align 8
134+
; CHECK-NEXT: [[VAL:%.*]] = load i16, i16* [[ADDR]], align 2
135135
; CHECK-NEXT: [[TMP0:%.*]] = zext i16 [[VAL]] to i32
136136
; CHECK-NEXT: [[ADD:%.*]] = add nuw i32 [[TMP0]], 7
137137
; CHECK-NEXT: [[CMP:%.*]] = icmp ult i32 [[ADD]], 256

llvm/test/Transforms/TypePromotion/ARM/signed.ll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
; Test to check that ARMCodeGenPrepare doesn't optimised away sign extends.
55
define i16 @test_signed_load(i16* %ptr) {
66
; CHECK-LABEL: @test_signed_load(
7-
; CHECK-NEXT: [[LOAD:%.*]] = load i16, i16* [[PTR:%.*]]
7+
; CHECK-NEXT: [[LOAD:%.*]] = load i16, i16* [[PTR:%.*]], align 2
88
; CHECK-NEXT: [[CONV0:%.*]] = zext i16 [[LOAD]] to i32
99
; CHECK-NEXT: [[CONV1:%.*]] = sext i16 [[LOAD]] to i32
1010
; CHECK-NEXT: [[CMP:%.*]] = icmp eq i32 [[CONV0]], [[CONV1]]

0 commit comments

Comments
 (0)