#if __LP64__ | |
# define SANITIZER_WORDSIZE 64 | |
#else | |
# define SANITIZER_WORDSIZE 32 | |
#endif | |
// This is a simplified version of GetMaxVirtualAddress function. | |
unsigned long SystemVMA () { | |
#if SANITIZER_WORDSIZE == 64 | |
unsigned long vma = (unsigned long)__builtin_frame_address(0); | |
return SANITIZER_WORDSIZE - __builtin_clzll(vma); | |
#else | |
return SANITIZER_WORDSIZE; | |
#endif | |
} |