mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-01 00:33:09 +00:00
Remove code in MipsAsmPrinter and MipsMCInstLower.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158434 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
9e97587e02
commit
63b37f122d
@ -230,15 +230,6 @@ void MipsAsmPrinter::EmitFunctionBodyStart() {
|
||||
if (MipsFI->getEmitNOAT())
|
||||
OutStreamer.EmitRawText(StringRef("\t.set\tnoat"));
|
||||
}
|
||||
|
||||
if ((MF->getTarget().getRelocationModel() == Reloc::PIC_) &&
|
||||
Subtarget->isABI_O32() && MipsFI->globalBaseRegSet()) {
|
||||
SmallVector<MCInst, 4> MCInsts;
|
||||
MCInstLowering.LowerSETGP01(MCInsts);
|
||||
for (SmallVector<MCInst, 4>::iterator I = MCInsts.begin();
|
||||
I != MCInsts.end(); ++I)
|
||||
OutStreamer.EmitInstruction(*I);
|
||||
}
|
||||
}
|
||||
|
||||
/// EmitFunctionBodyEnd - Targets can override this to emit stuff after
|
||||
|
@ -109,6 +109,7 @@ MCOperand MipsMCInstLower::LowerSymbolOperand(const MachineOperand &MO,
|
||||
return MCOperand::CreateExpr(AddExpr);
|
||||
}
|
||||
|
||||
/*
|
||||
static void CreateMCInst(MCInst& Inst, unsigned Opc, const MCOperand& Opnd0,
|
||||
const MCOperand& Opnd1,
|
||||
const MCOperand& Opnd2 = MCOperand()) {
|
||||
@ -118,6 +119,7 @@ static void CreateMCInst(MCInst& Inst, unsigned Opc, const MCOperand& Opnd0,
|
||||
if (Opnd2.isValid())
|
||||
Inst.addOperand(Opnd2);
|
||||
}
|
||||
*/
|
||||
|
||||
MCOperand MipsMCInstLower::LowerOperand(const MachineOperand& MO,
|
||||
unsigned offset) const {
|
||||
@ -156,23 +158,3 @@ void MipsMCInstLower::Lower(const MachineInstr *MI, MCInst &OutMI) const {
|
||||
OutMI.addOperand(MCOp);
|
||||
}
|
||||
}
|
||||
|
||||
// Create the following two instructions:
|
||||
// "lui $2, %hi(_gp_disp)"
|
||||
// "addiu $2, $2, %lo(_gp_disp)"
|
||||
void MipsMCInstLower::LowerSETGP01(SmallVector<MCInst, 4>& MCInsts) {
|
||||
MCOperand RegOpnd = MCOperand::CreateReg(Mips::V0);
|
||||
StringRef SymName("_gp_disp");
|
||||
const MCSymbol *Sym = Ctx->GetOrCreateSymbol(SymName);
|
||||
const MCSymbolRefExpr *MCSym;
|
||||
|
||||
MCSym = MCSymbolRefExpr::Create(Sym, MCSymbolRefExpr::VK_Mips_ABS_HI, *Ctx);
|
||||
MCOperand SymHi = MCOperand::CreateExpr(MCSym);
|
||||
MCSym = MCSymbolRefExpr::Create(Sym, MCSymbolRefExpr::VK_Mips_ABS_LO, *Ctx);
|
||||
MCOperand SymLo = MCOperand::CreateExpr(MCSym);
|
||||
|
||||
MCInsts.resize(2);
|
||||
|
||||
CreateMCInst(MCInsts[0], Mips::LUi, RegOpnd, SymHi);
|
||||
CreateMCInst(MCInsts[1], Mips::ADDiu, RegOpnd, RegOpnd, SymLo);
|
||||
}
|
||||
|
@ -33,7 +33,6 @@ public:
|
||||
MipsMCInstLower(MipsAsmPrinter &asmprinter);
|
||||
void Initialize(Mangler *mang, MCContext* C);
|
||||
void Lower(const MachineInstr *MI, MCInst &OutMI) const;
|
||||
void LowerSETGP01(SmallVector<MCInst, 4>& MCInsts);
|
||||
private:
|
||||
MCOperand LowerSymbolOperand(const MachineOperand &MO,
|
||||
MachineOperandType MOTy, unsigned Offset) const;
|
||||
|
Loading…
Reference in New Issue
Block a user