Skip to content

Commit 01e18ef

Browse files
committed
[CIR] Update and UnXFAIL CIR/CodeGen/cast.c
1 parent fe79950 commit 01e18ef

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

clang/test/CIR/CodeGen/cast.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
// XFAIL: *
21
// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-cir %s -o - | FileCheck %s
32

43
typedef struct {
@@ -12,8 +11,9 @@ int cstyle_cast_lvalue(A a) {
1211
// CHECK: cir.func dso_local @cstyle_cast_lvalue(%arg0: !rec_A loc({{.*}}))
1312
// CHECK: [[ALLOC_A:%.*]] = cir.alloca !rec_A, !cir.ptr<!rec_A>, ["a", init] {alignment = 4 : i64}
1413
// CHECK: [[ALLOC_RET:%.*]] = cir.alloca !s32i, !cir.ptr<!s32i>, ["__retval"] {alignment = 4 : i64}
15-
// CHECK: cir.store{{.*}} %arg0, [[ALLOC_A]] : !rec_A, !cir.ptr<!rec_A>
16-
// CHECK: [[X_ADDR:%.*]] = cir.get_member [[ALLOC_A]][0] {name = "x"} : !cir.ptr<!rec_A> -> !cir.ptr<!s32i>
14+
// CHECK: [[REF_TMP:%.*]] = cir.alloca !rec_A, !cir.ptr<!rec_A>, ["ref.tmp0"] {alignment = 4 : i64}
15+
// CHECK: cir.copy [[ALLOC_A]] to [[REF_TMP]] : !cir.ptr<!rec_A>
16+
// CHECK: [[X_ADDR:%.*]] = cir.get_member [[REF_TMP]][0] {name = "x"} : !cir.ptr<!rec_A> -> !cir.ptr<!s32i>
1717
// CHECK: [[X:%.*]] = cir.load{{.*}} [[X_ADDR]] : !cir.ptr<!s32i>, !s32i
1818
// CHECK: cir.store{{.*}} [[X]], [[ALLOC_RET]] : !s32i, !cir.ptr<!s32i>
1919
// CHECK: [[RET:%.*]] = cir.load{{.*}} [[ALLOC_RET]] : !cir.ptr<!s32i>, !s32i

0 commit comments

Comments
 (0)