Changeset View
Changeset View
Standalone View
Standalone View
clang/test/CXX/except/except.spec/p14-ir.cpp
Context not available. | |||||
struct X5 : X0, X4 { }; | struct X5 : X0, X4 { }; | ||||
void test(X2 x2, X3 x3, X5 x5) { | void test(X2 x2, X3 x3, X5 x5) { | ||||
// CHECK: define linkonce_odr void @_ZN2X2C1ERKS_(%struct.X2* %this, %struct.X2* nonnull align {{[0-9]+}} dereferenceable({{[0-9]+}}) %0) unnamed_addr | // CHECK: define linkonce_odr void @_ZN2X2C1ERKS_(%struct.X2* noundef %this, %struct.X2* noundef nonnull align {{[0-9]+}} dereferenceable({{[0-9]+}}) %0) unnamed_addr | ||||
// CHECK: call void @_ZN2X2C2ERKS_({{.*}}) [[NUW:#[0-9]+]] | // CHECK: call void @_ZN2X2C2ERKS_({{.*}}) [[NUW:#[0-9]+]] | ||||
// CHECK-NEXT: ret void | // CHECK-NEXT: ret void | ||||
// CHECK-NEXT: } | // CHECK-NEXT: } | ||||
X2 x2a(x2); | X2 x2a(x2); | ||||
// CHECK: define linkonce_odr void @_ZN2X3C1ERKS_(%struct.X3* %this, %struct.X3* nonnull align {{[0-9]+}} dereferenceable({{[0-9]+}}) %0) unnamed_addr | // CHECK: define linkonce_odr void @_ZN2X3C1ERKS_(%struct.X3* noundef %this, %struct.X3* noundef nonnull align {{[0-9]+}} dereferenceable({{[0-9]+}}) %0) unnamed_addr | ||||
// CHECK: call void @_ZN2X3C2ERKS_({{.*}}) [[NUW]] | // CHECK: call void @_ZN2X3C2ERKS_({{.*}}) [[NUW]] | ||||
// CHECK-NEXT: ret void | // CHECK-NEXT: ret void | ||||
// CHECK-NEXT: } | // CHECK-NEXT: } | ||||
Context not available. | |||||
struct X9 : X6, X7 { }; | struct X9 : X6, X7 { }; | ||||
void test() { | void test() { | ||||
// CHECK: define linkonce_odr void @_ZN2X8C1Ev(%struct.X8* %this) unnamed_addr | // CHECK: define linkonce_odr void @_ZN2X8C1Ev(%struct.X8* noundef %this) unnamed_addr | ||||
// CHECK: call void @_ZN2X8C2Ev({{.*}}) [[NUW]] | // CHECK: call void @_ZN2X8C2Ev({{.*}}) [[NUW]] | ||||
// CHECK-NEXT: ret void | // CHECK-NEXT: ret void | ||||
X8(); | X8(); | ||||
// CHECK: define linkonce_odr void @_ZN2X9C1Ev(%struct.X9* %this) unnamed_addr | // CHECK: define linkonce_odr void @_ZN2X9C1Ev(%struct.X9* noundef %this) unnamed_addr | ||||
// FIXME: check that this is the end of the line here: | // FIXME: check that this is the end of the line here: | ||||
// CHECK: call void @_ZN2X9C2Ev({{.*}}) | // CHECK: call void @_ZN2X9C2Ev({{.*}}) | ||||
// CHECK-NEXT: ret void | // CHECK-NEXT: ret void | ||||
X9(); | X9(); | ||||
// CHECK: define linkonce_odr void @_ZN2X8C2Ev(%struct.X8* %this) unnamed_addr | // CHECK: define linkonce_odr void @_ZN2X8C2Ev(%struct.X8* noundef %this) unnamed_addr | ||||
// CHECK: call void @_ZN2X6C2Ev({{.*}}) [[NUW]] | // CHECK: call void @_ZN2X6C2Ev({{.*}}) [[NUW]] | ||||
// CHECK-NEXT: ret void | // CHECK-NEXT: ret void | ||||
// CHECK: define linkonce_odr void @_ZN2X9C2Ev(%struct.X9* %this) unnamed_addr | // CHECK: define linkonce_odr void @_ZN2X9C2Ev(%struct.X9* noundef %this) unnamed_addr | ||||
// CHECK: call void @_ZN2X6C2Ev({{.*}}) [[NUW]] | // CHECK: call void @_ZN2X6C2Ev({{.*}}) [[NUW]] | ||||
// FIXME: and here: | // FIXME: and here: | ||||
// CHECK-NEXT: bitcast | // CHECK-NEXT: bitcast | ||||
Context not available. |