[scudo] Add default implementations for weak functions
Summary: This is in preparation for platforms where `SANITIZER_SUPPORTS_WEAK_HOOKS` is 0. They require a default implementation. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42557 llvm-svn: 323795
This commit is contained in:
parent
1d53101387
commit
4223af42b8
|
@ -736,6 +736,18 @@ uptr __sanitizer_get_allocated_size(const void *Ptr) {
|
||||||
return Instance.getUsableSize(Ptr);
|
return Instance.getUsableSize(Ptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !SANITIZER_SUPPORTS_WEAK_HOOKS
|
||||||
|
SANITIZER_INTERFACE_WEAK_DEF(void, __sanitizer_malloc_hook,
|
||||||
|
void *Ptr, uptr Size) {
|
||||||
|
(void)Ptr;
|
||||||
|
(void)Size;
|
||||||
|
}
|
||||||
|
|
||||||
|
SANITIZER_INTERFACE_WEAK_DEF(void, __sanitizer_free_hook, void *Ptr) {
|
||||||
|
(void)Ptr;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// Interface functions
|
// Interface functions
|
||||||
|
|
||||||
void __scudo_set_rss_limit(uptr LimitMb, s32 HardLimit) {
|
void __scudo_set_rss_limit(uptr LimitMb, s32 HardLimit) {
|
||||||
|
|
|
@ -12,13 +12,12 @@
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
|
|
||||||
#include "scudo_flags.h"
|
#include "scudo_flags.h"
|
||||||
|
#include "scudo_interface_internal.h"
|
||||||
#include "scudo_utils.h"
|
#include "scudo_utils.h"
|
||||||
|
|
||||||
#include "sanitizer_common/sanitizer_flags.h"
|
#include "sanitizer_common/sanitizer_flags.h"
|
||||||
#include "sanitizer_common/sanitizer_flag_parser.h"
|
#include "sanitizer_common/sanitizer_flag_parser.h"
|
||||||
|
|
||||||
SANITIZER_INTERFACE_WEAK_DEF(const char*, __scudo_default_options, void);
|
|
||||||
|
|
||||||
namespace __scudo {
|
namespace __scudo {
|
||||||
|
|
||||||
static Flags ScudoFlags; // Use via getFlags().
|
static Flags ScudoFlags; // Use via getFlags().
|
||||||
|
@ -119,3 +118,9 @@ Flags *getFlags() {
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace __scudo
|
} // namespace __scudo
|
||||||
|
|
||||||
|
#if !SANITIZER_SUPPORTS_WEAK_HOOKS
|
||||||
|
SANITIZER_INTERFACE_WEAK_DEF(const char*, __scudo_default_options, void) {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
|
@ -20,6 +20,9 @@ using __sanitizer::uptr;
|
||||||
using __sanitizer::s32;
|
using __sanitizer::s32;
|
||||||
|
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE
|
||||||
|
const char* __scudo_default_options();
|
||||||
|
|
||||||
SANITIZER_INTERFACE_ATTRIBUTE
|
SANITIZER_INTERFACE_ATTRIBUTE
|
||||||
void __scudo_set_rss_limit(uptr LimitMb, s32 HardLimit);
|
void __scudo_set_rss_limit(uptr LimitMb, s32 HardLimit);
|
||||||
} // extern "C"
|
} // extern "C"
|
||||||
|
|
Loading…
Reference in New Issue