summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCSubtarget.h
diff options
context:
space:
mode:
authorHal Finkel <hfinkel@anl.gov>2014-10-02 22:34:22 +0000
committerHal Finkel <hfinkel@anl.gov>2014-10-02 22:34:22 +0000
commitfe3368cb57eceff4671de7be47d426c8e46fa0d9 (patch)
treecfed89bb432e8c5715f34a04a7dca09a558c21e7 /llvm/lib/Target/PowerPC/PPCSubtarget.h
parente1ca44bd4c1dd12106b6e933c8649363a69ac6c6 (diff)
downloadbcm5719-llvm-fe3368cb57eceff4671de7be47d426c8e46fa0d9.tar.gz
bcm5719-llvm-fe3368cb57eceff4671de7be47d426c8e46fa0d9.zip
[PowerPC] Modern Book-E cores support sync
Older Book-E cores, such as the PPC 440, support only msync (which has the same encoding as sync 0), but not any of the other sync forms. Newer Book-E cores, however, do support sync, and for performance reasons we should allow the use of the more-general form. This refactors msync use into its own feature group so that it applies by default only to older Book-E cores (of the relevant cores, we only have definitions for the PPC440/450 currently). llvm-svn: 218923
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 993afdf82b5..9e4953f20d9 100644
--- a/llvm/lib/Target/PowerPC/PPCSubtarget.h
+++ b/llvm/lib/Target/PowerPC/PPCSubtarget.h
@@ -103,6 +103,7 @@ protected:
bool HasPOPCNTD;
bool HasLDBRX;
bool IsBookE;
+ bool HasOnlyMSYNC;
bool IsE500;
bool IsPPC4xx;
bool IsPPC6xx;
@@ -219,6 +220,7 @@ public:
bool hasPOPCNTD() const { return HasPOPCNTD; }
bool hasLDBRX() const { return HasLDBRX; }
bool isBookE() const { return IsBookE; }
+ bool hasOnlyMSYNC() const { return HasOnlyMSYNC; }
bool isPPC4xx() const { return IsPPC4xx; }
bool isPPC6xx() const { return IsPPC6xx; }
bool isE500() const { return IsE500; }
OpenPOWER on IntegriCloud