summaryrefslogtreecommitdiff
path: root/src/vm/arm/stubs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm/arm/stubs.cpp')
-rw-r--r--src/vm/arm/stubs.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/vm/arm/stubs.cpp b/src/vm/arm/stubs.cpp
index 7e7435c..b86732c 100644
--- a/src/vm/arm/stubs.cpp
+++ b/src/vm/arm/stubs.cpp
@@ -26,6 +26,10 @@
#include "ecall.h"
#include "threadsuspend.h"
+#if defined(TIZEN_ASAN_ENVIRONMENT) && !defined(CROSS_COMPILE) && !defined(DACCESS_COMPILE)
+#include <tizenasanenv.h>
+#endif
+
// target write barriers
EXTERN_C void JIT_WriteBarrier(Object **dst, Object *ref);
EXTERN_C void JIT_WriteBarrier_End();
@@ -2477,6 +2481,12 @@ class UMEntryThunk * UMEntryThunk::Decode(void *pCallback)
void UMEntryThunkCode::Encode(BYTE* pTargetCode, void* pvSecretParam)
{
+#if defined(TIZEN_ASAN_ENVIRONMENT) && !defined(CROSS_COMPILE) && !defined(DACCESS_COMPILE)
+ pTargetCode = (BYTE *)TizenASanEnv::CreateWrapper((LPVOID)pTargetCode,
+ TizenASanEnv::PushAndDisableASan,
+ TizenASanEnv::PopAndEnableASan);
+#endif
+
// ldr r12, [pc + 8]
m_code[0] = 0xf8df;
m_code[1] = 0xc008;