From 49b9deeb03ef92844ce826bf52a4e5baeb7fca9b Mon Sep 17 00:00:00 2001 From: Shawn Hoffman Date: Tue, 18 Aug 2020 21:54:08 -0700 Subject: msvc: add asan support (disabled by default) --- Source/UnitTests/Core/PageFaultTest.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'Source/UnitTests/Core/PageFaultTest.cpp') diff --git a/Source/UnitTests/Core/PageFaultTest.cpp b/Source/UnitTests/Core/PageFaultTest.cpp index 7b6210d7b9..e77fe49fd2 100644 --- a/Source/UnitTests/Core/PageFaultTest.cpp +++ b/Source/UnitTests/Core/PageFaultTest.cpp @@ -49,6 +49,17 @@ public: m_post_unprotect_time; }; +#ifdef _MSC_VER +#define ASAN_DISABLE __declspec(no_sanitize_address) +#else +#define ASAN_DISABLE +#endif + +static void ASAN_DISABLE perform_invalid_access(void* data) +{ + *(volatile int*)data = 5; +} + TEST(PageFault, PageFault) { EMM::InstallExceptionHandler(); @@ -61,7 +72,7 @@ TEST(PageFault, PageFault) pfjit.m_data = data; auto start = std::chrono::high_resolution_clock::now(); - *(volatile int*)data = 5; + perform_invalid_access(data); auto end = std::chrono::high_resolution_clock::now(); #define AS_NS(diff) \ -- cgit v1.2.3