diff options
Diffstat (limited to 'llvm/lib/IR/User.cpp')
-rw-r--r-- | llvm/lib/IR/User.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/IR/User.cpp b/llvm/lib/IR/User.cpp index 33a3686c94a..4a3eba9e8cf 100644 --- a/llvm/lib/IR/User.cpp +++ b/llvm/lib/IR/User.cpp @@ -162,7 +162,9 @@ void *User::operator new(size_t Size) { // User operator delete Implementation //===----------------------------------------------------------------------===// -void User::operator delete(void *Usr) { +// Repress memory sanitization, due to use-after-destroy by operator +// delete. Bug report 24578 identifies this issue. +LLVM_NO_SANITIZE_MEMORY_ATTRIBUTE void User::operator delete(void *Usr) { // Hung off uses use a single Use* before the User, while other subclasses // use a Use[] allocated prior to the user. User *Obj = static_cast<User *>(Usr); |