diff options
author | Hal Finkel <hfinkel@anl.gov> | 2015-01-09 02:03:11 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2015-01-09 02:03:11 +0000 |
commit | 5ff00b43506d75cdd5189a9574dc4c8b9ee3bce5 (patch) | |
tree | 326d178d4154ac04ee9a77abc6571651bedfb6de /llvm/lib/Target/PowerPC/PPCSubtarget.cpp | |
parent | 311c7db8e3655795c28adc797fcbac434b01bc51 (diff) | |
download | bcm5719-llvm-5ff00b43506d75cdd5189a9574dc4c8b9ee3bce5.tar.gz bcm5719-llvm-5ff00b43506d75cdd5189a9574dc4c8b9ee3bce5.zip |
[PowerPC] Add a flag for experimenting with subreg liveness tracking
This cannot yet be enabled by default, it causes ~50 miscompiles in the test
suite.
llvm-svn: 225497
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCSubtarget.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCSubtarget.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCSubtarget.cpp b/llvm/lib/Target/PowerPC/PPCSubtarget.cpp index fb47c910c2f..d8ba1c71a0f 100644 --- a/llvm/lib/Target/PowerPC/PPCSubtarget.cpp +++ b/llvm/lib/Target/PowerPC/PPCSubtarget.cpp @@ -19,6 +19,7 @@ #include "llvm/IR/Attributes.h" #include "llvm/IR/Function.h" #include "llvm/IR/GlobalValue.h" +#include "llvm/Support/CommandLine.h" #include "llvm/Support/Host.h" #include "llvm/Support/TargetRegistry.h" #include "llvm/Target/TargetMachine.h" @@ -32,6 +33,9 @@ using namespace llvm; #define GET_SUBTARGETINFO_CTOR #include "PPCGenSubtargetInfo.inc" +static cl::opt<bool> UseSubRegLiveness("ppc-track-subreg-liveness", +cl::desc("Enable subregister liveness tracking for PPC"), cl::Hidden); + /// Return the datalayout string of a subtarget. static std::string getDataLayoutString(const Triple &T) { bool is64Bit = T.getArch() == Triple::ppc64 || T.getArch() == Triple::ppc64le; @@ -234,3 +238,7 @@ bool PPCSubtarget::useAA() const { return needsAggressiveScheduling(DarwinDirective); } +bool PPCSubtarget::enableSubRegLiveness() const { + return UseSubRegLiveness; +} + |