diff --git a/lib/Target/Sparc/SparcAsmPrinter.cpp b/lib/Target/Sparc/SparcAsmPrinter.cpp index 06e11b0057a..0808575e788 100644 --- a/lib/Target/Sparc/SparcAsmPrinter.cpp +++ b/lib/Target/Sparc/SparcAsmPrinter.cpp @@ -464,7 +464,7 @@ void V8Printer::printBaseOffsetPair (const MachineInstr *MI, int i) { /// void V8Printer::printMachineInstruction(const MachineInstr *MI) { unsigned Opcode = MI->getOpcode(); - const TargetInstrInfo &TII = TM.getInstrInfo(); + const TargetInstrInfo &TII = *TM.getInstrInfo(); const TargetInstrDescriptor &Desc = TII.get(Opcode); O << Desc.Name << " "; diff --git a/lib/Target/Sparc/SparcTargetMachine.h b/lib/Target/Sparc/SparcTargetMachine.h index 13f655ab1f1..cbb8e043dd1 100644 --- a/lib/Target/Sparc/SparcTargetMachine.h +++ b/lib/Target/Sparc/SparcTargetMachine.h @@ -31,8 +31,8 @@ class SparcV8TargetMachine : public TargetMachine { public: SparcV8TargetMachine(const Module &M, IntrinsicLowering *IL); - virtual const SparcV8InstrInfo &getInstrInfo() const { return InstrInfo; } - virtual const TargetFrameInfo &getFrameInfo() const { return FrameInfo; } + virtual const SparcV8InstrInfo *getInstrInfo() const { return &InstrInfo; } + virtual const TargetFrameInfo *getFrameInfo() const { return &FrameInfo; } virtual const MRegisterInfo *getRegisterInfo() const { return &InstrInfo.getRegisterInfo(); } @@ -40,9 +40,6 @@ public: return &JITInfo; } - virtual const TargetSchedInfo &getSchedInfo() const { abort(); } - virtual const TargetRegInfo &getRegInfo() const { abort(); } - /// addPassesToEmitMachineCode - Add passes to the specified pass manager to /// get machine code emitted. This uses a MachineCodeEmitter object to handle /// actually outputting the machine code and resolving things like the address diff --git a/lib/Target/SparcV8/SparcV8AsmPrinter.cpp b/lib/Target/SparcV8/SparcV8AsmPrinter.cpp index 06e11b0057a..0808575e788 100644 --- a/lib/Target/SparcV8/SparcV8AsmPrinter.cpp +++ b/lib/Target/SparcV8/SparcV8AsmPrinter.cpp @@ -464,7 +464,7 @@ void V8Printer::printBaseOffsetPair (const MachineInstr *MI, int i) { /// void V8Printer::printMachineInstruction(const MachineInstr *MI) { unsigned Opcode = MI->getOpcode(); - const TargetInstrInfo &TII = TM.getInstrInfo(); + const TargetInstrInfo &TII = *TM.getInstrInfo(); const TargetInstrDescriptor &Desc = TII.get(Opcode); O << Desc.Name << " "; diff --git a/lib/Target/SparcV8/SparcV8TargetMachine.h b/lib/Target/SparcV8/SparcV8TargetMachine.h index 13f655ab1f1..cbb8e043dd1 100644 --- a/lib/Target/SparcV8/SparcV8TargetMachine.h +++ b/lib/Target/SparcV8/SparcV8TargetMachine.h @@ -31,8 +31,8 @@ class SparcV8TargetMachine : public TargetMachine { public: SparcV8TargetMachine(const Module &M, IntrinsicLowering *IL); - virtual const SparcV8InstrInfo &getInstrInfo() const { return InstrInfo; } - virtual const TargetFrameInfo &getFrameInfo() const { return FrameInfo; } + virtual const SparcV8InstrInfo *getInstrInfo() const { return &InstrInfo; } + virtual const TargetFrameInfo *getFrameInfo() const { return &FrameInfo; } virtual const MRegisterInfo *getRegisterInfo() const { return &InstrInfo.getRegisterInfo(); } @@ -40,9 +40,6 @@ public: return &JITInfo; } - virtual const TargetSchedInfo &getSchedInfo() const { abort(); } - virtual const TargetRegInfo &getRegInfo() const { abort(); } - /// addPassesToEmitMachineCode - Add passes to the specified pass manager to /// get machine code emitted. This uses a MachineCodeEmitter object to handle /// actually outputting the machine code and resolving things like the address