File tree Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Original file line number Diff line number Diff line change 1+ // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -fclangir -emit-cir %s -o %t.cir -O1
2+ // RUN: FileCheck --check-prefix=CIR --input-file=%t.cir %s
3+
4+ // CIR: #tbaa[[TBAA_NO:.*]] = #cir.tbaa
5+ void f (int * a , float * b ) {
6+ if (* a == 1 ) {
7+ * b = 2.0f ;
8+ } else {
9+ * b = 3.0f ;
10+ }
11+ }
12+
13+ // CIR: cir.scope
14+ // CIR: %[[TMP1:.*]] = cir.load deref {{.*}} : !cir.ptr<!cir.ptr<!s32i>>, !cir.ptr<!s32i> tbaa([#tbaa[[TBAA_NO]]])
15+ // CIR: %[[TMP2:.*]] = cir.load {{.*}} %[[TMP1]] : !cir.ptr<!s32i>, !s32i tbaa([#tbaa[[TBAA_NO]]])
16+ // CIR: cir.if
17+ // CIR: %[[C2:.*]] = cir.const #cir.fp<2
18+ // CIR: %[[TMP3:.*]] = cir.load deref {{.*}} %[[ARG_b:.*]] : !cir.ptr<!cir.ptr<!cir.float>>, !cir.ptr<!cir.float> tbaa([#tbaa[[TBAA_NO]]])
19+ // CIR: cir.store {{.*}} %[[C2]], %[[TMP3]] : !cir.float, !cir.ptr<!cir.float> tbaa([#tbaa[[TBAA_NO]]])
20+ // CIR: else
21+ // CIR: %[[C3:.*]] = cir.const #cir.fp<3
22+ // CIR: %[[TMP4:.*]] = cir.load deref {{.*}} %[[ARG_b]] : !cir.ptr<!cir.ptr<!cir.float>>, !cir.ptr<!cir.float> tbaa([#tbaa[[TBAA_NO]]])
23+ // CIR: cir.store {{.*}} %[[C3]], %[[TMP4]] : !cir.float, !cir.ptr<!cir.float> tbaa([#tbaa[[TBAA_NO]]])
You can’t perform that action at this time.
0 commit comments