diff --git a/lib/Target/TargetMachine.cpp b/lib/Target/TargetMachine.cpp index d508b32a399..83bd2f3a3d8 100644 --- a/lib/Target/TargetMachine.cpp +++ b/lib/Target/TargetMachine.cpp @@ -49,10 +49,12 @@ TargetMachine::findOptimalStorageSize(const Type* ty) const /*ctor*/ -MachineInstrInfo::MachineInstrInfo(const MachineInstrDescriptor* _desc, +MachineInstrInfo::MachineInstrInfo(const TargetMachine& tgt, + const MachineInstrDescriptor* _desc, unsigned int _descSize, unsigned int _numRealOpCodes) - : desc(_desc), descSize(_descSize), numRealOpCodes(_numRealOpCodes) + : target(tgt), + desc(_desc), descSize(_descSize), numRealOpCodes(_numRealOpCodes) { // FIXME: TargetInstrDescriptors should not be global assert(TargetInstrDescriptors == NULL && desc != NULL); diff --git a/lib/Target/TargetSchedInfo.cpp b/lib/Target/TargetSchedInfo.cpp index 14ac057654d..f9dca290b06 100644 --- a/lib/Target/TargetSchedInfo.cpp +++ b/lib/Target/TargetSchedInfo.cpp @@ -78,14 +78,15 @@ ComputeMinGap(const InstrRUsage &fromRU, // Interface to machine description for instruction scheduling //--------------------------------------------------------------------------- -MachineSchedInfo::MachineSchedInfo(int NumSchedClasses, - const MachineInstrInfo* Mii, +MachineSchedInfo::MachineSchedInfo(const TargetMachine& tgt, + int NumSchedClasses, const InstrClassRUsage* ClassRUsages, const InstrRUsageDelta* UsageDeltas, const InstrIssueDelta* IssueDeltas, unsigned int NumUsageDeltas, unsigned int NumIssueDeltas) - : numSchedClasses(NumSchedClasses), mii(Mii), + : target(tgt), + numSchedClasses(NumSchedClasses), mii(& tgt.getInstrInfo()), classRUsages(ClassRUsages), usageDeltas(UsageDeltas), issueDeltas(IssueDeltas), numUsageDeltas(NumUsageDeltas), numIssueDeltas(NumIssueDeltas)