diff options
author | Hal Finkel <hfinkel@anl.gov> | 2014-10-02 22:34:22 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2014-10-02 22:34:22 +0000 |
commit | fe3368cb57eceff4671de7be47d426c8e46fa0d9 (patch) | |
tree | cfed89bb432e8c5715f34a04a7dca09a558c21e7 /llvm/lib/Target/PowerPC/PPCSubtarget.h | |
parent | e1ca44bd4c1dd12106b6e933c8649363a69ac6c6 (diff) | |
download | bcm5719-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.h | 2 |
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; } |