Skip to content

Commit 158a8f0

Browse files
committed
lit-tests: Adapt codegen/align.d to LLVM 21 IR changes
1 parent fe80b5c commit 158a8f0

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

tests/codegen/align.d

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ Outer passAndReturnOuterByVal(Outer arg) { return arg; }
2121
// CHECK-SAME: ptr {{noalias sret.*|inreg noalias}} align 32 %.sret_arg
2222
/* How the arg is passed by value is ABI-specific, but the pointer must be aligned.
2323
* When the argument is passed as a byte array and copied into a stack alloc, that stack alloca must be aligned. */
24-
// CHECK: {{(align 32 %arg|%arg = alloca %align.Outer, align 32)}}
24+
// CHECK: {{(align 32 %arg|%arg = alloca %align.Outer, align 32|call void @llvm.memcpy.* %.sret_arg,.* %arg)}}
2525

2626
Inner passAndReturnInnerByVal(Inner arg) { return arg; }
2727
// CHECK: define{{.*}} void @{{.*}}_D5align23passAndReturnInnerByValFSQBh5InnerZQl
2828
// CHECK-SAME: ptr {{noalias sret.*|inreg noalias}} align 32 %.sret_arg
29-
// CHECK: {{(align 32 %arg|%arg = alloca %align.Inner, align 32)}}
29+
// CHECK: {{(align 32 %arg|%arg = alloca %align.Inner, align 32|call void @llvm.memcpy.* %.sret_arg,.* %arg)}}
3030

3131
void main() {
3232
Outer outer;
@@ -61,11 +61,11 @@ void main() {
6161
// CHECK: call{{.*}} void @{{.*}}_D5align23passAndReturnOuterByValFSQBh5OuterZQl
6262
// CHECK-SAME: ptr {{noalias sret.*|inreg noalias}} align 32 %.sret_tmp
6363
// The argument is either passed by aligned (optimizer hint) pointer or as an array of i32/64 and copied into an aligned stack slot inside the callee.
64-
// CHECK-SAME: {{(align 32 %|\[[0-9]+ x i..\])}}
64+
// CHECK-SAME: {{(align 32 |\[[0-9]+ x i..\])}}
6565

6666
inner = passAndReturnInnerByVal(inner);
6767
// CHECK: call{{.*}} void @{{.*}}_D5align23passAndReturnInnerByValFSQBh5InnerZQl
6868
// CHECK-SAME: ptr {{noalias sret.*|inreg noalias}} align 32 %.sret_tmp
6969
// The argument is either passed by aligned (optimizer hint) pointer or as an array of i32/64 and copied into an aligned stack slot inside the callee.
70-
// CHECK-SAME: {{(align 32 %|\[[0-9]+ x i..\])}}
70+
// CHECK-SAME: {{(align 32 |\[[0-9]+ x i..\])}}
7171
}

0 commit comments

Comments
 (0)