summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AArch64/AArch64TargetMachine.h
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2014-10-06 06:45:36 +0000
committerEric Christopher <echristo@gmail.com>2014-10-06 06:45:36 +0000
commit3faf2f1e02eff60a3a75cd5da8d113d38bf26b46 (patch)
tree07131e9dc5225b502c74cfea586b2b74513d942e /llvm/lib/Target/AArch64/AArch64TargetMachine.h
parent28a3fc6c3e0578b78b23dfddd7dca5415749b87c (diff)
downloadbcm5719-llvm-3faf2f1e02eff60a3a75cd5da8d113d38bf26b46.tar.gz
bcm5719-llvm-3faf2f1e02eff60a3a75cd5da8d113d38bf26b46.zip
Add subtarget caches to aarch64, arm, ppc, and x86.
These will make it easier to test further changes to the code generation and optimization pipelines as those are moved to subtargets initialized with target feature and target cpu. llvm-svn: 219106
Diffstat (limited to 'llvm/lib/Target/AArch64/AArch64TargetMachine.h')
-rw-r--r--llvm/lib/Target/AArch64/AArch64TargetMachine.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/AArch64/AArch64TargetMachine.h b/llvm/lib/Target/AArch64/AArch64TargetMachine.h
index 42d7dc57328..7bf40ae165b 100644
--- a/llvm/lib/Target/AArch64/AArch64TargetMachine.h
+++ b/llvm/lib/Target/AArch64/AArch64TargetMachine.h
@@ -24,6 +24,7 @@ namespace llvm {
class AArch64TargetMachine : public LLVMTargetMachine {
protected:
AArch64Subtarget Subtarget;
+ mutable StringMap<std::unique_ptr<AArch64Subtarget>> SubtargetMap;
public:
AArch64TargetMachine(const Target &T, StringRef TT, StringRef CPU,
@@ -34,6 +35,7 @@ public:
const AArch64Subtarget *getSubtargetImpl() const override {
return &Subtarget;
}
+ const AArch64Subtarget *getSubtargetImpl(const Function &F) const override;
// Pass Pipeline Configuration
TargetPassConfig *createPassConfig(PassManagerBase &PM) override;
@@ -45,6 +47,7 @@ public:
bool isPBQPUsed() const { return usingPBQP; }
private:
+ bool isLittle;
bool usingPBQP;
};
OpenPOWER on IntegriCloud