From 5bb1631a69eb8b8f3c7eca7476e320372c967454 Mon Sep 17 00:00:00 2001 From: Kostya Serebryany Date: Thu, 16 Jun 2016 20:06:06 +0000 Subject: [sanitizers] introduce yet another API function: __sanitizer_install_malloc_and_free_hooks git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@272943 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/msan/msan.h | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'lib/msan') diff --git a/lib/msan/msan.h b/lib/msan/msan.h index be74f6ea1..1f2ff59ca 100644 --- a/lib/msan/msan.h +++ b/lib/msan/msan.h @@ -309,15 +309,21 @@ void MsanTSDDtor(void *tsd); } // namespace __msan -#define MSAN_MALLOC_HOOK(ptr, size) \ - if (&__sanitizer_malloc_hook) { \ - UnpoisonParam(2); \ - __sanitizer_malloc_hook(ptr, size); \ - } -#define MSAN_FREE_HOOK(ptr) \ - if (&__sanitizer_free_hook) { \ - UnpoisonParam(1); \ - __sanitizer_free_hook(ptr); \ - } +#define MSAN_MALLOC_HOOK(ptr, size) \ + do { \ + if (&__sanitizer_malloc_hook) { \ + UnpoisonParam(2); \ + __sanitizer_malloc_hook(ptr, size); \ + } \ + RunMallocHooks(ptr, size); \ + } while (false) +#define MSAN_FREE_HOOK(ptr) \ + do { \ + if (&__sanitizer_free_hook) { \ + UnpoisonParam(1); \ + __sanitizer_free_hook(ptr); \ + } \ + RunFreeHooks(ptr); \ + } while (false) #endif // MSAN_H -- cgit v1.2.3