File tree Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Original file line number Diff line number Diff line change 1
- // XFAIL: *
2
1
// RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -emit-cir %s -o - | FileCheck %s
3
2
4
3
typedef struct {
@@ -12,8 +11,9 @@ int cstyle_cast_lvalue(A a) {
12
11
// CHECK: cir.func dso_local @cstyle_cast_lvalue(%arg0: !rec_A loc({{.*}}))
13
12
// CHECK: [[ALLOC_A:%.*]] = cir.alloca !rec_A, !cir.ptr<!rec_A>, ["a", init] {alignment = 4 : i64}
14
13
// 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>
17
17
// CHECK: [[X:%.*]] = cir.load{{.*}} [[X_ADDR]] : !cir.ptr<!s32i>, !s32i
18
18
// CHECK: cir.store{{.*}} [[X]], [[ALLOC_RET]] : !s32i, !cir.ptr<!s32i>
19
19
// CHECK: [[RET:%.*]] = cir.load{{.*}} [[ALLOC_RET]] : !cir.ptr<!s32i>, !s32i
You can’t perform that action at this time.
0 commit comments