mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Reapply the TargerTransformInfo changes, minus the changes to LSR and Lowerinvoke.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166248 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -72,7 +72,8 @@ NVPTXTargetMachine::NVPTXTargetMachine(const Target &T,
|
||||
: LLVMTargetMachine(T, TT, CPU, FS, Options, RM, CM, OL),
|
||||
Subtarget(TT, CPU, FS, is64bit),
|
||||
DL(Subtarget.getDataLayout()),
|
||||
InstrInfo(*this), TLInfo(*this), TSInfo(*this), FrameLowering(*this,is64bit)
|
||||
InstrInfo(*this), TLInfo(*this), TSInfo(*this), FrameLowering(*this,is64bit),
|
||||
STTI(&TLInfo)
|
||||
/*FrameInfo(TargetFrameInfo::StackGrowsUp, 8, 0)*/ {
|
||||
}
|
||||
|
||||
|
@@ -25,6 +25,7 @@
|
||||
#include "llvm/Target/TargetFrameLowering.h"
|
||||
#include "llvm/Target/TargetMachine.h"
|
||||
#include "llvm/Target/TargetSelectionDAGInfo.h"
|
||||
#include "llvm/Target/TargetTransformImpl.h"
|
||||
|
||||
namespace llvm {
|
||||
|
||||
@@ -44,6 +45,9 @@ class NVPTXTargetMachine : public LLVMTargetMachine {
|
||||
// Hold Strings that can be free'd all together with NVPTXTargetMachine
|
||||
ManagedStringPool ManagedStrPool;
|
||||
|
||||
ScalarTargetTransformImpl STTI;
|
||||
VectorTargetTransformImpl VTTI;
|
||||
|
||||
//bool addCommonCodeGenPasses(PassManagerBase &, CodeGenOpt::Level,
|
||||
// bool DisableVerify, MCContext *&OutCtx);
|
||||
|
||||
@@ -72,6 +76,12 @@ public:
|
||||
virtual const TargetSelectionDAGInfo *getSelectionDAGInfo() const {
|
||||
return &TSInfo;
|
||||
}
|
||||
virtual const ScalarTargetTransformInfo *getScalarTargetTransformInfo()const {
|
||||
return &STTI;
|
||||
}
|
||||
virtual const VectorTargetTransformInfo *getVectorTargetTransformInfo()const {
|
||||
return &VTTI;
|
||||
}
|
||||
|
||||
//virtual bool addInstSelector(PassManagerBase &PM,
|
||||
// CodeGenOpt::Level OptLevel);
|
||||
|
Reference in New Issue
Block a user