diff options
author | Craig Topper <craig.topper@gmail.com> | 2011-10-30 19:57:21 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2011-10-30 19:57:21 +0000 |
commit | 228d9131aad9f3553c9c69abf010f41ce43c8423 (patch) | |
tree | c3e652f593d0cba0ee2a2404b675921a8df71859 /llvm/lib/Target/X86/X86Subtarget.h | |
parent | 3d5692a475ef0368dc64dde60dd5afcf3cd1214e (diff) | |
download | bcm5719-llvm-228d9131aad9f3553c9c69abf010f41ce43c8423.tar.gz bcm5719-llvm-228d9131aad9f3553c9c69abf010f41ce43c8423.zip |
Add intrinsics and feature flag for read/write FS/GS base instructions. Also add AVX2 feature flag.
llvm-svn: 143319
Diffstat (limited to 'llvm/lib/Target/X86/X86Subtarget.h')
-rw-r--r-- | llvm/lib/Target/X86/X86Subtarget.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86Subtarget.h b/llvm/lib/Target/X86/X86Subtarget.h index 5e08f014e7d..763fb432f4a 100644 --- a/llvm/lib/Target/X86/X86Subtarget.h +++ b/llvm/lib/Target/X86/X86Subtarget.h @@ -78,6 +78,9 @@ protected: /// HasAVX - Target has AVX instructions bool HasAVX; + /// HasAVX2 - Target has AVX2 instructions + bool HasAVX2; + /// HasAES - Target has AES instructions bool HasAES; @@ -99,6 +102,9 @@ protected: /// HasF16C - Processor has 16-bit floating point conversion instructions. bool HasF16C; + /// HasFSGSBase - Processor has FS/GS base insturctions. + bool HasFSGSBase; + /// HasLZCNT - Processor has LZCNT instruction. bool HasLZCNT; @@ -181,6 +187,7 @@ public: bool has3DNowA() const { return X863DNowLevel >= ThreeDNowA; } bool hasPOPCNT() const { return HasPOPCNT; } bool hasAVX() const { return HasAVX; } + bool hasAVX2() const { return HasAVX2; } bool hasXMM() const { return hasSSE1() || hasAVX(); } bool hasXMMInt() const { return hasSSE2() || hasAVX(); } bool hasAES() const { return HasAES; } @@ -190,6 +197,7 @@ public: bool hasMOVBE() const { return HasMOVBE; } bool hasRDRAND() const { return HasRDRAND; } bool hasF16C() const { return HasF16C; } + bool hasFSGSBase() const { return HasFSGSBase; } bool hasLZCNT() const { return HasLZCNT; } bool hasBMI() const { return HasBMI; } bool hasBMI2() const { return HasBMI2; } |