diff options
| author | Eric Christopher <echristo@gmail.com> | 2014-06-27 01:14:54 +0000 |
|---|---|---|
| committer | Eric Christopher <echristo@gmail.com> | 2014-06-27 01:14:54 +0000 |
| commit | 1f86ccac46134cfeb6bea7719d8508e4f7104c01 (patch) | |
| tree | 41e28d74160ee8344959db4f7ae38953b058b9c3 /llvm/lib/Target/MSP430/MSP430Subtarget.h | |
| parent | 72a5b2a14e2e1b2bda5205e7634c070e221ec7f7 (diff) | |
| download | bcm5719-llvm-1f86ccac46134cfeb6bea7719d8508e4f7104c01.tar.gz bcm5719-llvm-1f86ccac46134cfeb6bea7719d8508e4f7104c01.zip | |
Move the subtarget dependent features from the target machine to
the subtarget for the MSP430 target.
llvm-svn: 211836
Diffstat (limited to 'llvm/lib/Target/MSP430/MSP430Subtarget.h')
| -rw-r--r-- | llvm/lib/Target/MSP430/MSP430Subtarget.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/llvm/lib/Target/MSP430/MSP430Subtarget.h b/llvm/lib/Target/MSP430/MSP430Subtarget.h index 4d8792eede7..0152ad19dfc 100644 --- a/llvm/lib/Target/MSP430/MSP430Subtarget.h +++ b/llvm/lib/Target/MSP430/MSP430Subtarget.h @@ -14,6 +14,12 @@ #ifndef LLVM_TARGET_MSP430_SUBTARGET_H #define LLVM_TARGET_MSP430_SUBTARGET_H +#include "MSP430FrameLowering.h" +#include "MSP430InstrInfo.h" +#include "MSP430ISelLowering.h" +#include "MSP430RegisterInfo.h" +#include "MSP430SelectionDAGInfo.h" +#include "llvm/IR/DataLayout.h" #include "llvm/Target/TargetSubtargetInfo.h" #include <string> @@ -26,16 +32,33 @@ class StringRef; class MSP430Subtarget : public MSP430GenSubtargetInfo { virtual void anchor(); bool ExtendedInsts; + const DataLayout DL; // Calculates type size & alignment + MSP430FrameLowering FrameLowering; + MSP430InstrInfo InstrInfo; + MSP430TargetLowering TLInfo; + MSP430SelectionDAGInfo TSInfo; + public: /// This constructor initializes the data members to match that /// of the specified triple. /// MSP430Subtarget(const std::string &TT, const std::string &CPU, - const std::string &FS); + const std::string &FS, const TargetMachine &TM); + + MSP430Subtarget &initializeSubtargetDependencies(StringRef CPU, StringRef FS); /// ParseSubtargetFeatures - Parses features string setting specified /// subtarget options. Definition of function is auto generated by tblgen. void ParseSubtargetFeatures(StringRef CPU, StringRef FS); + + const TargetFrameLowering *getFrameLowering() const { return &FrameLowering; } + const MSP430InstrInfo *getInstrInfo() const { return &InstrInfo; } + const DataLayout *getDataLayout() const { return &DL; } + const TargetRegisterInfo *getRegisterInfo() const { + return &InstrInfo.getRegisterInfo(); + } + const MSP430TargetLowering *getTargetLowering() const { return &TLInfo; } + const MSP430SelectionDAGInfo *getSelectionDAGInfo() const { return &TSInfo; } }; } // End llvm namespace |

