summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/Host.cpp
diff options
context:
space:
mode:
authorGabor Buella <gabor.buella@intel.com>2018-05-10 07:26:05 +0000
committerGabor Buella <gabor.buella@intel.com>2018-05-10 07:26:05 +0000
commita832b22baefa6c4d7e5518bd2469add47d5605d5 (patch)
tree3df19403d288ca25a9932e50f60432f8bb385cce /llvm/lib/Support/Host.cpp
parent6bbca36414e9a2249949d9a64d5f0891a4543c30 (diff)
downloadbcm5719-llvm-a832b22baefa6c4d7e5518bd2469add47d5605d5.tar.gz
bcm5719-llvm-a832b22baefa6c4d7e5518bd2469add47d5605d5.zip
[X86] ptwrite intrinsic
Reviewers: craig.topper, RKSimon Reviewed By: craig.topper, RKSimon Differential Revision: https://reviews.llvm.org/D46539 llvm-svn: 331961
Diffstat (limited to 'llvm/lib/Support/Host.cpp')
-rw-r--r--llvm/lib/Support/Host.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Support/Host.cpp b/llvm/lib/Support/Host.cpp
index d13aa8d5b1a..9981bcc75f0 100644
--- a/llvm/lib/Support/Host.cpp
+++ b/llvm/lib/Support/Host.cpp
@@ -1286,6 +1286,11 @@ bool sys::getHostCPUFeatures(StringMap<bool> &Features) {
Features["xsavec"] = HasLeafD && ((EAX >> 1) & 1) && HasAVXSave;
Features["xsaves"] = HasLeafD && ((EAX >> 3) & 1) && HasAVXSave;
+ bool HasLeaf14 = MaxLevel >= 0x14 &&
+ !getX86CpuIDAndInfoEx(0x14, 0x0, &EAX, &EBX, &ECX, &EDX);
+
+ Features["ptwrite"] = HasLeaf14 && ((EBX >> 4) & 1);
+
return true;
}
#elif defined(__linux__) && (defined(__arm__) || defined(__aarch64__))
OpenPOWER on IntegriCloud