summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCSubtarget.h
diff options
context:
space:
mode:
authorBill Schmidt <wschmidt@linux.vnet.ibm.com>2015-01-14 20:17:10 +0000
committerBill Schmidt <wschmidt@linux.vnet.ibm.com>2015-01-14 20:17:10 +0000
commit082cfc05f1509da7aa87fd1e30e279755b4477d8 (patch)
tree75c19175799a82386f6817a6ed3ce6539c6eac2c /llvm/lib/Target/PowerPC/PPCSubtarget.h
parent9e3e53f6dd95aefea84dff499a111d6ba590a340 (diff)
downloadbcm5719-llvm-082cfc05f1509da7aa87fd1e30e279755b4477d8.tar.gz
bcm5719-llvm-082cfc05f1509da7aa87fd1e30e279755b4477d8.zip
[PPC64] Add support for the ICBT instruction on POWER8.
Patch by Kit Barton. Support for the ICBT instruction is currently present, but limited to embedded processors. This change adds a new FeatureICBT that can be used to identify whether the ICBT instruction is available on a specific processor. Two new tests are added: * Positive test to ensure the icbt instruction is present when using -mcpu=pwr8 * Negative test to ensure the icbt instruction is not generated when using -mcpu=pwr7 Both test cases use the Prefetch opcode in LLVM. They are based on the ppc64-prefetch.ll test case. llvm-svn: 226033
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCSubtarget.h')
-rw-r--r--llvm/lib/Target/PowerPC/PPCSubtarget.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCSubtarget.h b/llvm/lib/Target/PowerPC/PPCSubtarget.h
index a1b644d2685..f5dc3003a7a 100644
--- a/llvm/lib/Target/PowerPC/PPCSubtarget.h
+++ b/llvm/lib/Target/PowerPC/PPCSubtarget.h
@@ -113,6 +113,7 @@ protected:
bool DeprecatedDST;
bool HasLazyResolverStubs;
bool IsLittleEndian;
+ bool HasICBT;
enum {
PPC_ABI_UNKNOWN,
@@ -230,6 +231,7 @@ public:
bool isE500() const { return IsE500; }
bool isDeprecatedMFTB() const { return DeprecatedMFTB; }
bool isDeprecatedDST() const { return DeprecatedDST; }
+ bool hasICBT() const { return HasICBT; }
const Triple &getTargetTriple() const { return TargetTriple; }
OpenPOWER on IntegriCloud