diff options
author | Martin Storsjo <martin@martin.st> | 2019-10-02 11:04:55 +0000 |
---|---|---|
committer | Martin Storsjo <martin@martin.st> | 2019-10-02 11:04:55 +0000 |
commit | 353ac42ce2f2250e4dacc533aed71285adf372df (patch) | |
tree | 27569770d4d581fed754e9109a7b86e1141f2f35 /llvm/lib/Support/Host.cpp | |
parent | d44fc23abdb6c29239cfae4c8bc1aeb10fc0705e (diff) | |
download | bcm5719-llvm-353ac42ce2f2250e4dacc533aed71285adf372df.tar.gz bcm5719-llvm-353ac42ce2f2250e4dacc533aed71285adf372df.zip |
[Support, ARM64] Define getHostCPUFeatures for Windows on ARM64 platform
Patch by Adam Kallai!
Differential Revision: https://reviews.llvm.org/D68139
llvm-svn: 373445
Diffstat (limited to 'llvm/lib/Support/Host.cpp')
-rw-r--r-- | llvm/lib/Support/Host.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/Support/Host.cpp b/llvm/lib/Support/Host.cpp index 5509ec00886..2a473a1994c 100644 --- a/llvm/lib/Support/Host.cpp +++ b/llvm/lib/Support/Host.cpp @@ -1512,6 +1512,17 @@ bool sys::getHostCPUFeatures(StringMap<bool> &Features) { return true; } +#elif defined(_WIN32) && (defined(__aarch64__) || defined(_M_ARM64)) +bool sys::getHostCPUFeatures(StringMap<bool> &Features) { + if (IsProcessorFeaturePresent(PF_ARM_NEON_INSTRUCTIONS_AVAILABLE)) + Features["neon"] = true; + if (IsProcessorFeaturePresent(PF_ARM_V8_CRC32_INSTRUCTIONS_AVAILABLE)) + Features["crc"] = true; + if (IsProcessorFeaturePresent(PF_ARM_V8_CRYPTO_INSTRUCTIONS_AVAILABLE)) + Features["crypto"] = true; + + return true; +} #else bool sys::getHostCPUFeatures(StringMap<bool> &Features) { return false; } #endif |