Since the DataLayout is always found off of the subtarget go ahead
and query the base target machine implementation for it.
llvm-svn: 211055
diff --git a/llvm/lib/Target/ARM/ARMTargetMachine.h b/llvm/lib/Target/ARM/ARMTargetMachine.h
index 6d9a31b..15492778 100644
--- a/llvm/lib/Target/ARM/ARMTargetMachine.h
+++ b/llvm/lib/Target/ARM/ARMTargetMachine.h
@@ -53,7 +53,9 @@
const InstrItineraryData *getInstrItineraryData() const override {
return &getSubtargetImpl()->getInstrItineraryData();
}
-
+ const DataLayout *getDataLayout() const override {
+ return getSubtargetImpl()->getDataLayout();
+ }
/// \brief Register ARM analysis passes with a pass manager.
void addAnalysisPasses(PassManagerBase &PM) override;
@@ -93,9 +95,6 @@
return &FrameLowering;
}
const ARMInstrInfo *getInstrInfo() const override { return &InstrInfo; }
- const DataLayout *getDataLayout() const override {
- return getSubtargetImpl()->getDataLayout();
- }
};
/// ARMLETargetMachine - ARM little endian target machine.
@@ -160,9 +159,6 @@
const ARMFrameLowering *getFrameLowering() const override {
return FrameLowering.get();
}
- const DataLayout *getDataLayout() const override {
- return getSubtargetImpl()->getDataLayout();
- }
};
/// ThumbLETargetMachine - Thumb little endian target machine.