forked from OSchip/llvm-project
Add enums and functions for symbols Mips64 uses.
llvm-svn: 140295
This commit is contained in:
parent
dc397a6402
commit
25ce3647e5
|
@ -332,6 +332,11 @@ void MipsAsmPrinter::printOperand(const MachineInstr *MI, int opNum,
|
|||
case MipsII::MO_GOTTPREL: O << "%gottprel("; break;
|
||||
case MipsII::MO_TPREL_HI: O << "%tprel_hi("; break;
|
||||
case MipsII::MO_TPREL_LO: O << "%tprel_lo("; break;
|
||||
case MipsII::MO_GPOFF_HI: O << "%hi(%neg(%gp_rel("; break;
|
||||
case MipsII::MO_GPOFF_LO: O << "%lo(%neg(%gp_rel("; break;
|
||||
case MipsII::MO_GOT_DISP: O << "%got_disp("; break;
|
||||
case MipsII::MO_GOT_PAGE: O << "%got_page("; break;
|
||||
case MipsII::MO_GOT_OFST: O << "%got_ofst("; break;
|
||||
}
|
||||
|
||||
switch (MO.getType()) {
|
||||
|
|
|
@ -72,7 +72,14 @@ namespace MipsII {
|
|||
/// MO_TPREL_HI/LO - Represents the hi and low part of the offset from
|
||||
// the thread pointer (Local Exec TLS).
|
||||
MO_TPREL_HI,
|
||||
MO_TPREL_LO
|
||||
MO_TPREL_LO,
|
||||
|
||||
// N32/64 Flags.
|
||||
MO_GPOFF_HI,
|
||||
MO_GPOFF_LO,
|
||||
MO_GOT_DISP,
|
||||
MO_GOT_PAGE,
|
||||
MO_GOT_OFST
|
||||
};
|
||||
|
||||
enum {
|
||||
|
|
|
@ -46,6 +46,11 @@ MCOperand MipsMCInstLower::LowerSymbolOperand(const MachineOperand &MO,
|
|||
case MipsII::MO_GOTTPREL: Kind = MipsMCSymbolRefExpr::VK_Mips_GOTTPREL; break;
|
||||
case MipsII::MO_TPREL_HI: Kind = MipsMCSymbolRefExpr::VK_Mips_TPREL_HI; break;
|
||||
case MipsII::MO_TPREL_LO: Kind = MipsMCSymbolRefExpr::VK_Mips_TPREL_LO; break;
|
||||
case MipsII::MO_GPOFF_HI: Kind = MipsMCSymbolRefExpr::VK_Mips_GPOFF_HI; break;
|
||||
case MipsII::MO_GPOFF_LO: Kind = MipsMCSymbolRefExpr::VK_Mips_GPOFF_LO; break;
|
||||
case MipsII::MO_GOT_DISP: Kind = MipsMCSymbolRefExpr::VK_Mips_GOT_DISP; break;
|
||||
case MipsII::MO_GOT_PAGE: Kind = MipsMCSymbolRefExpr::VK_Mips_GOT_PAGE; break;
|
||||
case MipsII::MO_GOT_OFST: Kind = MipsMCSymbolRefExpr::VK_Mips_GOT_OFST; break;
|
||||
}
|
||||
|
||||
switch (MOTy) {
|
||||
|
|
|
@ -33,6 +33,11 @@ void MipsMCSymbolRefExpr::PrintImpl(raw_ostream &OS) const {
|
|||
case VK_Mips_GOTTPREL: OS << "%gottprel("; break;
|
||||
case VK_Mips_TPREL_HI: OS << "%tprel_hi("; break;
|
||||
case VK_Mips_TPREL_LO: OS << "%tprel_lo("; break;
|
||||
case VK_Mips_GPOFF_HI: OS << "%hi(%neg(%gp_rel("; break;
|
||||
case VK_Mips_GPOFF_LO: OS << "%lo(%neg(%gp_rel("; break;
|
||||
case VK_Mips_GOT_DISP: OS << "%got_disp("; break;
|
||||
case VK_Mips_GOT_PAGE: OS << "%got_page("; break;
|
||||
case VK_Mips_GOT_OFST: OS << "%got_ofst("; break;
|
||||
}
|
||||
|
||||
OS << *Symbol;
|
||||
|
|
|
@ -25,7 +25,12 @@ public:
|
|||
VK_Mips_TLSGD,
|
||||
VK_Mips_GOTTPREL,
|
||||
VK_Mips_TPREL_HI,
|
||||
VK_Mips_TPREL_LO
|
||||
VK_Mips_TPREL_LO,
|
||||
VK_Mips_GPOFF_HI,
|
||||
VK_Mips_GPOFF_LO,
|
||||
VK_Mips_GOT_DISP,
|
||||
VK_Mips_GOT_PAGE,
|
||||
VK_Mips_GOT_OFST
|
||||
};
|
||||
|
||||
private:
|
||||
|
|
Loading…
Reference in New Issue