From c54a2f0cf5c85777721c313c7b7ce0d06314ce8f Mon Sep 17 00:00:00 2001 From: Gleb Balykov Date: Mon, 28 Jun 2021 16:50:50 +0300 Subject: [PATCH] Add YieldProcessor implementation for arm --- src/coreclr/gc/env/gcenv.base.h | 9 ++------- src/coreclr/pal/inc/pal.h | 2 +- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/src/coreclr/gc/env/gcenv.base.h b/src/coreclr/gc/env/gcenv.base.h index 0aa1d0bd673f2..59eb74862f5ca 100644 --- a/src/coreclr/gc/env/gcenv.base.h +++ b/src/coreclr/gc/env/gcenv.base.h @@ -227,15 +227,10 @@ typedef DWORD (WINAPI *PTHREAD_START_ROUTINE)(void* lpThreadParameter); #endif // defined(__i386__) || defined(__x86_64__) -#ifdef __aarch64__ +#if defined(__arm__) || defined(__aarch64__) #define YieldProcessor() asm volatile ("yield") #define MemoryBarrier __sync_synchronize -#endif // __aarch64__ - -#ifdef __arm__ - #define YieldProcessor() - #define MemoryBarrier __sync_synchronize -#endif // __arm__ +#endif // __arm__ || __aarch64__ #endif // _MSC_VER diff --git a/src/coreclr/pal/inc/pal.h b/src/coreclr/pal/inc/pal.h index 8e0553e02e888..532c3e82d3ded 100644 --- a/src/coreclr/pal/inc/pal.h +++ b/src/coreclr/pal/inc/pal.h @@ -3582,7 +3582,7 @@ YieldProcessor() __asm__ __volatile__( "rep\n" "nop"); -#elif defined(HOST_ARM64) +#elif defined(HOST_ARM) || defined(HOST_ARM64) __asm__ __volatile__( "yield"); #else return;