Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
clang/test/CodeGenCXX/cxx2a-destroying-delete.cpp
Show First 20 Lines • Show All 105 Lines • ▼ Show 20 Lines | struct J { | ||||
J(); // might throw | J(); // might throw | ||||
void operator delete(J *, std::destroying_delete_t); | void operator delete(J *, std::destroying_delete_t); | ||||
}; | }; | ||||
// CHECK-ITANIUM-LABEL: define {{.*}}@_Z1j | // CHECK-ITANIUM-LABEL: define {{.*}}@_Z1j | ||||
// CHECK-MSABI-LABEL: define {{.*}}@"?j@@ | // CHECK-MSABI-LABEL: define {{.*}}@"?j@@ | ||||
J *j() { | J *j() { | ||||
// CHECK-ITANIUM: invoke {{.*}}@_ZN1JC1Ev( | // CHECK-ITANIUM: invoke {{.*}}@_ZN1JC1Ev( | ||||
// CHECK-ITANIUM: call {{.*}}@_ZdlPv( | // CHECK-ITANIUM: call {{.*}}@_ZdlPvm( | ||||
// CHECK-NOT: } | // CHECK-NOT: } | ||||
// CHECK-MSABI: invoke {{.*}}@"??0J@@Q{{AE|EAA}}@XZ"( | // CHECK-MSABI: invoke {{.*}}@"??0J@@Q{{AE|EAA}}@XZ"( | ||||
// CHECK-MSABI: call {{.*}}@"??3@YAXP{{E?}}AX@Z"( | // CHECK-MSABI: call {{.*}}@"??3@YAXP{{E?}}AX{{I|_K}}@Z"( | ||||
return new J; | return new J; | ||||
// CHECK: } | // CHECK: } | ||||
} | } | ||||
struct K { | struct K { | ||||
K(); // might throw | K(); // might throw | ||||
void operator delete(void *); | void operator delete(void *); | ||||
void operator delete(K *, std::destroying_delete_t); | void operator delete(K *, std::destroying_delete_t); | ||||
▲ Show 20 Lines • Show All 90 Lines • Show Last 20 Lines |