mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-26 09:16:08 +00:00
[AArch64][compiler-rt] Add LSE support for Windows. (#116706)
This commit is contained in:
parent
62bf5840a6
commit
77bf34c315
@ -48,6 +48,8 @@ _Bool __aarch64_have_lse_atomics
|
||||
#elif defined(__linux__) && __has_include(<sys/auxv.h>)
|
||||
#include "aarch64/hwcap.inc"
|
||||
#include "aarch64/lse_atomics/getauxval.inc"
|
||||
#elif defined(_WIN32)
|
||||
#include "aarch64/lse_atomics/windows.inc"
|
||||
#else
|
||||
// When unimplemented, we leave __aarch64_have_lse_atomics initialized to false.
|
||||
#endif
|
||||
|
@ -0,0 +1,12 @@
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
#include <windows.h>
|
||||
#include <processthreadsapi.h>
|
||||
|
||||
#ifndef PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE
|
||||
#define PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE 34
|
||||
#endif
|
||||
|
||||
static void CONSTRUCTOR_ATTRIBUTE init_have_lse_atomics(void) {
|
||||
if (IsProcessorFeaturePresent(PF_ARM_V81_ATOMIC_INSTRUCTIONS_AVAILABLE))
|
||||
__aarch64_have_lse_atomics = true;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user