Skip to content

Commit 003c4a9

Browse files
committed
add extra test
1 parent c6a3ff2 commit 003c4a9

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

llvm/test/Transforms/Attributor/range-and-constant-fold.ll

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33

44
@g = internal unnamed_addr addrspace(4) constant [3 x i8] c"12\00", align 16
55

6-
define void @foo(i32 %a, i32 %b, ptr %p) {
6+
define void @foo(i32 %a, i32 %b, ptr %p.0, ptr %p.1) {
77
; CHECK-LABEL: define void @foo(
8-
; CHECK-SAME: i32 [[A:%.*]], i32 [[B:%.*]], ptr nofree nonnull writeonly captures(none) dereferenceable(1) [[P:%.*]]) #[[ATTR0:[0-9]+]] {
8+
; CHECK-SAME: i32 [[A:%.*]], i32 [[B:%.*]], ptr nofree nonnull writeonly captures(none) dereferenceable(1) [[P_0:%.*]], ptr nofree nonnull writeonly align 4 captures(none) dereferenceable(8) [[P_1:%.*]]) #[[ATTR0:[0-9]+]] {
99
; CHECK-NEXT: [[ENTRY:.*:]]
1010
; CHECK-NEXT: [[CMP:%.*]] = icmp ne i32 [[A]], [[B]]
1111
; CHECK-NEXT: br i1 [[CMP]], label %[[L1:.*]], label %[[L2:.*]]
@@ -15,8 +15,10 @@ define void @foo(i32 %a, i32 %b, ptr %p) {
1515
; CHECK-NEXT: br label %[[L3]]
1616
; CHECK: [[L3]]:
1717
; CHECK-NEXT: [[PHI:%.*]] = phi ptr addrspace(4) [ @g, %[[L1]] ], [ getelementptr inbounds nuw (i8, ptr addrspace(4) @g, i64 1), %[[L2]] ]
18-
; CHECK-NEXT: [[LOAD:%.*]] = load i8, ptr addrspace(4) [[PHI]], align 1
19-
; CHECK-NEXT: store i8 [[LOAD]], ptr [[P]], align 1
18+
; CHECK-NEXT: [[LOAD_SMALL:%.*]] = load i8, ptr addrspace(4) [[PHI]], align 4
19+
; CHECK-NEXT: store i8 [[LOAD_SMALL]], ptr [[P_0]], align 1
20+
; CHECK-NEXT: [[LOAD_LARGE:%.*]] = load i64, ptr addrspace(4) [[PHI]], align 4
21+
; CHECK-NEXT: store i64 [[LOAD_LARGE]], ptr [[P_1]], align 4
2022
; CHECK-NEXT: ret void
2123
;
2224
entry:
@@ -28,7 +30,9 @@ l2:
2830
br label %l3
2931
l3:
3032
%phi = phi ptr addrspace(4) [ @g, %l1 ], [ getelementptr inbounds nuw (i8, ptr addrspace(4) @g, i64 1), %l2 ]
31-
%load = load i8, ptr addrspace(4) %phi
32-
store i8 %load, ptr %p
33+
%load.small = load i8, ptr addrspace(4) %phi
34+
store i8 %load.small, ptr %p.0
35+
%load.large = load i64, ptr addrspace(4) %phi
36+
store i64 %load.large, ptr %p.1
3337
ret void
3438
}

0 commit comments

Comments
 (0)