[compiler-rt] 6313ece - Revert "[hwasan] Add definitions for missing operator delete functions"

Leonard Chan via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 15 13:52:30 PST 2023


Author: Leonard Chan
Date: 2023-02-15T21:51:49Z
New Revision: 6313ece5ce943c426adb766d2ecb579a4c751ff7

URL: https://github.com/llvm/llvm-project/commit/6313ece5ce943c426adb766d2ecb579a4c751ff7
DIFF: https://github.com/llvm/llvm-project/commit/6313ece5ce943c426adb766d2ecb579a4c751ff7.diff

LOG: Revert "[hwasan] Add definitions for missing operator delete functions"

This reverts commit d6ff0808618cd421d7ee82daec951956ec27a837.

This broke a bunch of builders:
http://45.33.8.238/linux/99657/step_10.txt
https://lab.llvm.org/buildbot/#/builders/247/builds/1627

Added: 
    

Modified: 
    compiler-rt/lib/hwasan/hwasan_new_delete.cpp
    compiler-rt/test/hwasan/TestCases/new-test.cpp

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/hwasan/hwasan_new_delete.cpp b/compiler-rt/lib/hwasan/hwasan_new_delete.cpp
index f31ac3a04cced..495046a754f10 100644
--- a/compiler-rt/lib/hwasan/hwasan_new_delete.cpp
+++ b/compiler-rt/lib/hwasan/hwasan_new_delete.cpp
@@ -92,14 +92,6 @@ INTERCEPTOR_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void operator delete[](
     void *ptr, std::nothrow_t const &) {
   OPERATOR_DELETE_BODY;
 }
-INTERCEPTOR_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void operator delete(
-    void *ptr, size_t) NOEXCEPT {
-  OPERATOR_DELETE_BODY;
-}
-INTERCEPTOR_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void operator delete[](
-    void *ptr, size_t) NOEXCEPT {
-  OPERATOR_DELETE_BODY;
-}
 
 #endif  // OPERATOR_NEW_BODY
 
@@ -142,13 +134,5 @@ INTERCEPTOR_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void operator delete[](
     void *ptr, std::align_val_t, std::nothrow_t const &) NOEXCEPT {
   OPERATOR_DELETE_BODY;
 }
-INTERCEPTOR_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void operator delete(
-    void *ptr, size_t, std::align_val_t, std::nothrow_t const &) NOEXCEPT {
-  OPERATOR_DELETE_BODY;
-}
-INTERCEPTOR_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void operator delete[](
-    void *ptr, size_t, std::align_val_t, std::nothrow_t const &) NOEXCEPT {
-  OPERATOR_DELETE_BODY;
-}
 
 #endif  // OPERATOR_NEW_ALIGN_BODY

diff  --git a/compiler-rt/test/hwasan/TestCases/new-test.cpp b/compiler-rt/test/hwasan/TestCases/new-test.cpp
index f530d9c4fa0bf..184c0a69529cc 100644
--- a/compiler-rt/test/hwasan/TestCases/new-test.cpp
+++ b/compiler-rt/test/hwasan/TestCases/new-test.cpp
@@ -9,100 +9,6 @@
 #include <sanitizer/allocator_interface.h>
 #include <sanitizer/hwasan_interface.h>
 
-void operator_new_delete(size_t size) {
-	void *alloc = operator new(size);
-	assert(alloc != nullptr);
-	assert(__sanitizer_get_allocated_size(alloc) == size);
-	operator delete(alloc);
-
-	alloc = operator new(size);
-	assert(alloc != nullptr);
-	assert(__sanitizer_get_allocated_size(alloc) == size);
-	operator delete(alloc, size);
-}
-
-void operator_new_delete_array(size_t size) {
-	void *alloc = operator new[](size);
-	assert(alloc != nullptr);
-	assert(__sanitizer_get_allocated_size(alloc) == size);
-	operator delete[](alloc);
-
-	alloc = operator new[](size);
-	assert(alloc != nullptr);
-	assert(__sanitizer_get_allocated_size(alloc) == size);
-	operator delete[](alloc, size);
-}
-
-void operator_new_delete(size_t size, std::align_val_t align) {
-	void *alloc = operator new(size, align);
-	assert(alloc != nullptr);
-  assert(reinterpret_cast<uintptr_t>(alloc) % static_cast<uintptr_t>(align) == 0);
-	assert(__sanitizer_get_allocated_size(alloc) >= size);
-	operator delete(alloc, align);
-
-	alloc = operator new(size, align);
-	assert(alloc != nullptr);
-  assert(reinterpret_cast<uintptr_t>(alloc) % static_cast<uintptr_t>(align) == 0);
-	assert(__sanitizer_get_allocated_size(alloc) >= size);
-	operator delete(alloc, size, align);
-}
-
-void operator_new_delete_array(size_t size, std::align_val_t align) {
-	void *alloc = operator new[](size, align);
-	assert(alloc != nullptr);
-  assert(reinterpret_cast<uintptr_t>(alloc) % static_cast<uintptr_t>(align) == 0);
-	assert(__sanitizer_get_allocated_size(alloc) >= size);
-	operator delete[](alloc, align);
-
-	alloc = operator new[](size, align);
-	assert(alloc != nullptr);
-  assert(reinterpret_cast<uintptr_t>(alloc) % static_cast<uintptr_t>(align) == 0);
-	assert(__sanitizer_get_allocated_size(alloc) >= size);
-	operator delete[](alloc, size, align);
-}
-
-void operator_new_delete(size_t size, const std::nothrow_t &tag) {
-	void *alloc = operator new(size, tag);
-	assert(alloc != nullptr);
-	assert(__sanitizer_get_allocated_size(alloc) == size);
-	operator delete(alloc, tag);
-}
-
-void operator_new_delete_array(size_t size, const std::nothrow_t &tag) {
-	void *alloc = operator new[](size, tag);
-	assert(alloc != nullptr);
-	assert(__sanitizer_get_allocated_size(alloc) == size);
-	operator delete[](alloc, tag);
-}
-
-void operator_new_delete(size_t size, std::align_val_t align, const std::nothrow_t &tag) {
-	void *alloc = operator new(size, align, tag);
-	assert(alloc != nullptr);
-  assert(reinterpret_cast<uintptr_t>(alloc) % static_cast<uintptr_t>(align) == 0);
-	assert(__sanitizer_get_allocated_size(alloc) >= size);
-	operator delete(alloc, align, tag);
-}
-
-void operator_new_delete_array(size_t size, std::align_val_t align, const std::nothrow_t &tag) {
-	void *alloc = operator new[](size, align, tag);
-	assert(alloc != nullptr);
-  assert(reinterpret_cast<uintptr_t>(alloc) % static_cast<uintptr_t>(align) == 0);
-	assert(__sanitizer_get_allocated_size(alloc) >= size);
-	operator delete[](alloc, align, tag);
-}
-
-void operator_new_delete(size_t size, void *ptr) {
-	void *alloc = operator new(size, ptr);
-	assert(alloc == ptr);
-	operator delete(alloc, ptr);
-}
-
-void operator_new_delete_array(size_t size, void *ptr) {
-	void *alloc = operator new[](size, ptr);
-	assert(alloc == ptr);
-	operator delete[](alloc, ptr);
-}
-
 int main() {
   __hwasan_enable_allocator_tagging();
 
@@ -112,16 +18,6 @@ int main() {
   assert(__sanitizer_get_allocated_size(a1) == 1);
   delete[] a1;
 
-	constexpr size_t kSize = 8;
-	operator_new_delete(kSize);
-	operator_new_delete_array(kSize);
-	operator_new_delete(kSize, std::nothrow);
-	operator_new_delete_array(kSize, std::nothrow);
-
-	char buffer[kSize];
-	operator_new_delete(kSize, buffer);
-	operator_new_delete_array(kSize, buffer);
-
 #if defined(__cpp_aligned_new) &&                                              \
     (!defined(__GLIBCXX__) ||                                                  \
      (defined(_GLIBCXX_RELEASE) && _GLIBCXX_RELEASE >= 7))
@@ -132,14 +28,5 @@ int main() {
   assert(reinterpret_cast<uintptr_t>(a2) % static_cast<uintptr_t>(kAlign) == 0);
   assert(__sanitizer_get_allocated_size(a2) >= 4);
   ::operator delete(a2, kAlign);
-
-	operator_new_delete(kSize, std::align_val_t{kSize});
-	operator_new_delete_array(kSize, std::align_val_t{kSize});
-	operator_new_delete(kSize, std::align_val_t{kSize * 2});
-	operator_new_delete_array(kSize, std::align_val_t{kSize * 2});
-	operator_new_delete(kSize, std::align_val_t{kSize}, std::nothrow);
-	operator_new_delete_array(kSize, std::align_val_t{kSize}, std::nothrow);
-	operator_new_delete(kSize, std::align_val_t{kSize * 2}, std::nothrow);
-	operator_new_delete_array(kSize, std::align_val_t{kSize * 2}, std::nothrow);
 #endif
 }


        


More information about the llvm-commits mailing list