Changeset View
Changeset View
Standalone View
Standalone View
lib/sanitizer_common/sanitizer_platform.h
Show First 20 Lines • Show All 279 Lines • ▼ Show 20 Lines | |||||
/// * 1800: Microsoft Visual Studio 2013 / 12.0 | /// * 1800: Microsoft Visual Studio 2013 / 12.0 | ||||
/// * 1900: Microsoft Visual Studio 2015 / 14.0 | /// * 1900: Microsoft Visual Studio 2015 / 14.0 | ||||
#ifdef _MSC_VER | #ifdef _MSC_VER | ||||
# define MSC_PREREQ(version) (_MSC_VER >= (version)) | # define MSC_PREREQ(version) (_MSC_VER >= (version)) | ||||
#else | #else | ||||
# define MSC_PREREQ(version) 0 | # define MSC_PREREQ(version) 0 | ||||
#endif | #endif | ||||
#if defined(__arm64__) && SANITIZER_IOS | #if SANITIZER_MAC && !(defined(__arm64__) && SANITIZER_IOS) | ||||
# define SANITIZER_NON_UNIQUE_TYPEINFO 1 | |||||
#else | |||||
# define SANITIZER_NON_UNIQUE_TYPEINFO 0 | # define SANITIZER_NON_UNIQUE_TYPEINFO 0 | ||||
#else | |||||
# define SANITIZER_NON_UNIQUE_TYPEINFO 1 | |||||
#endif | #endif | ||||
// On linux, some architectures had an ABI transition from 64-bit long double | // On linux, some architectures had an ABI transition from 64-bit long double | ||||
// (ie. same as double) to 128-bit long double. On those, glibc symbols | // (ie. same as double) to 128-bit long double. On those, glibc symbols | ||||
// involving long doubles come in two versions, and we need to pass the | // involving long doubles come in two versions, and we need to pass the | ||||
// correct one to dlvsym when intercepting them. | // correct one to dlvsym when intercepting them. | ||||
#if SANITIZER_LINUX && (SANITIZER_S390 || SANITIZER_PPC32 || SANITIZER_PPC64V1) | #if SANITIZER_LINUX && (SANITIZER_S390 || SANITIZER_PPC32 || SANITIZER_PPC64V1) | ||||
#define SANITIZER_NLDBL_VERSION "GLIBC_2.4" | #define SANITIZER_NLDBL_VERSION "GLIBC_2.4" | ||||
▲ Show 20 Lines • Show All 48 Lines • Show Last 20 Lines |