@@ -16,7 +16,7 @@ void f1() {
1616// CIR: cir.func dso_local @_Z2f1v()
1717// CIR: %0 = cir.alloca !rec_B, !cir.ptr<!rec_B>, ["v", init]
1818// CIR: %1 = cir.base_class_addr %0 : !cir.ptr<!rec_B> nonnull [0] -> !cir.ptr<!rec_A1>
19- // CIR: cir.call @_ZN2A1C2Ev(%1) : (!cir.ptr<!rec_A1>) -> ()
19+ // CIR: cir.call @_ZN2A1C2Ev(%1) {cxx_ctor = #cir.cxx_ctor<"struct A1">} : (!cir.ptr<!rec_A1>) -> ()
2020// CIR: cir.return
2121// LLVM: define dso_local void @_Z2f1v()
2222// LLVM: %1 = alloca %class.B, i64 1, align 1
@@ -35,9 +35,9 @@ void f2() {
3535// CIR: cir.func dso_local @_Z2f2v()
3636// CIR: %0 = cir.alloca !rec_C, !cir.ptr<!rec_C>, ["v", init]
3737// CIR: %1 = cir.base_class_addr %0 : !cir.ptr<!rec_C> nonnull [0] -> !cir.ptr<!rec_A1>
38- // CIR: cir.call @_ZN2A1C2Ev(%1) : (!cir.ptr<!rec_A1>) -> ()
38+ // CIR: cir.call @_ZN2A1C2Ev(%1) {cxx_ctor = #cir.cxx_ctor<"struct A1">} : (!cir.ptr<!rec_A1>) -> ()
3939// CIR: %2 = cir.base_class_addr %0 : !cir.ptr<!rec_C> nonnull [0] -> !cir.ptr<!rec_A2>
40- // CIR: cir.call @_ZN2A2C2Ev(%2) : (!cir.ptr<!rec_A2>) -> ()
40+ // CIR: cir.call @_ZN2A2C2Ev(%2) {cxx_ctor = #cir.cxx_ctor<"struct A2">} : (!cir.ptr<!rec_A2>) -> ()
4141// CIR: cir.return
4242// LLVM: define dso_local void @_Z2f2v()
4343// LLVM: %1 = alloca %class.C, i64 1, align 1
@@ -58,8 +58,8 @@ void f3() {
5858// CIR: cir.func dso_local @_Z2f3v()
5959// CIR: %0 = cir.alloca !rec_D, !cir.ptr<!rec_D>, ["v", init]
6060// CIR: %1 = cir.base_class_addr %0 : !cir.ptr<!rec_D> nonnull [0] -> !cir.ptr<!rec_A3>
61- // CIR: cir.call @_ZN2A3C2Ev(%1) : (!cir.ptr<!rec_A3>) -> ()
62- // CIR: cir.call @_ZN1DD1Ev(%0) : (!cir.ptr<!rec_D>) -> ()
61+ // CIR: cir.call @_ZN2A3C2Ev(%1) {cxx_ctor = #cir.cxx_ctor<"struct A3">} : (!cir.ptr<!rec_A3>) -> ()
62+ // CIR: cir.call @_ZN1DD1Ev(%0) {cxx_dtor = #cir.cxx_dtor<"class D">} : (!cir.ptr<!rec_D>) -> ()
6363// CIR: cir.return
6464// LLVM: define dso_local void @_Z2f3v()
6565// LLVM: %1 = alloca %class.D, i64 1, align 1
0 commit comments