void testExplicitOperatorNewDeleteOveraligned() { void *p = operator new(128, (std::align_val_t)64); operator delete(p, (std::align_val_t)64); p = operator new[](128, (std::align_val_t)64); operator delete[](p, (std::align_val_t)64); p = __builtin_operator_new(128, (std::align_val_t)64); __builtin_operator_delete(p, (std::align_val_t)64); }
void testExplicitOperatorNewDelete() { void *p = operator new(128); operator delete(p); p = operator new[](128); operator delete[](p); p = __builtin_operator_new(128); __builtin_operator_delete(p); }
// CHECK-LABEL: define void @_ZN8builtins1fEv void f() { // CHECK: call noalias i8* @_Znwm(i64 4) [[ATTR_BUILTIN_NEW]] // CHECK: call void @_ZdlPv({{.*}}) [[ATTR_BUILTIN_DELETE]] __builtin_operator_delete(__builtin_operator_new(4)); }