diff --git a/include/llvm/CodeGen/MachineInstr.h b/include/llvm/CodeGen/MachineInstr.h index 23b56eacb4d..818331d2521 100644 --- a/include/llvm/CodeGen/MachineInstr.h +++ b/include/llvm/CodeGen/MachineInstr.h @@ -75,10 +75,6 @@ private: enum { DEFFLAG = 0x01, // this is a def of the operand USEFLAG = 0x02, // this is a use of the operand - HIFLAG32 = 0x04, // operand is %hi32(value_or_immedVal) - LOFLAG32 = 0x08, // operand is %lo32(value_or_immedVal) - HIFLAG64 = 0x10, // operand is %hi64(value_or_immedVal) - LOFLAG64 = 0x20, // operand is %lo64(value_or_immedVal) PCRELATIVE = 0x40 // Operand is relative to PC, not a global address }; @@ -215,13 +211,6 @@ public: /// UseType getUseType() const { return UseType(flags & (USEFLAG|DEFFLAG)); } - /// isPCRelative - This returns the value of the PCRELATIVE flag, which - /// indicates whether this operand should be emitted as a PC relative value - /// instead of a global address. This is used for operands of the forms: - /// MachineBasicBlock, GlobalAddress, ExternalSymbol - /// - bool isPCRelative() const { return (flags & PCRELATIVE) != 0; } - /// isRegister - Return true if this operand is a register operand. The X86 /// backend currently can't decide whether to use MO_MR or MO_VR to represent /// them, so we accept both. @@ -307,10 +296,6 @@ public: MachineOperand& setUse () { flags |= USEFLAG; return *this; } bool isDef () const { return flags & DEFFLAG; } MachineOperand& setDef () { flags |= DEFFLAG; return *this; } - bool isHiBits32 () const { return flags & HIFLAG32; } - bool isLoBits32 () const { return flags & LOFLAG32; } - bool isHiBits64 () const { return flags & HIFLAG64; } - bool isLoBits64 () const { return flags & LOFLAG64; } /// hasAllocatedReg - Returns true iff a machine register has been /// allocated to this operand. diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp index 8889a7aea2d..3d65dfd31bd 100644 --- a/lib/CodeGen/MachineInstr.cpp +++ b/lib/CodeGen/MachineInstr.cpp @@ -176,18 +176,6 @@ static void print(const MachineOperand &MO, std::ostream &OS, if (TM) MRI = TM->getRegisterInfo(); - bool CloseParen = true; - if (MO.isHiBits32()) - OS << "%lm("; - else if (MO.isLoBits32()) - OS << "%lo("; - else if (MO.isHiBits64()) - OS << "%hh("; - else if (MO.isLoBits64()) - OS << "%hm("; - else - CloseParen = false; - switch (MO.getType()) { case MachineOperand::MO_VirtualRegister: if (MO.getVRegValue()) { @@ -235,9 +223,6 @@ static void print(const MachineOperand &MO, std::ostream &OS, default: assert(0 && "Unrecognized operand type"); } - - if (CloseParen) - OS << ")"; } void MachineInstr::print(std::ostream &OS, const TargetMachine *TM) const { @@ -272,8 +257,7 @@ void MachineInstr::print(std::ostream &OS, const TargetMachine *TM) const { OS << "\n"; } -namespace llvm { -std::ostream &operator<<(std::ostream &os, const MachineInstr &MI) { +std::ostream &llvm::operator<<(std::ostream &os, const MachineInstr &MI) { // If the instruction is embedded into a basic block, we can find the target // info for the instruction. if (const MachineBasicBlock *MBB = MI.getParent()) { @@ -301,16 +285,7 @@ std::ostream &operator<<(std::ostream &os, const MachineInstr &MI) { return os << "\n"; } -std::ostream &operator<<(std::ostream &OS, const MachineOperand &MO) { - if (MO.isHiBits32()) - OS << "%lm("; - else if (MO.isLoBits32()) - OS << "%lo("; - else if (MO.isHiBits64()) - OS << "%hh("; - else if (MO.isLoBits64()) - OS << "%hm("; - +std::ostream &llvm::operator<<(std::ostream &OS, const MachineOperand &MO) { switch (MO.getType()) { case MachineOperand::MO_VirtualRegister: if (MO.hasAllocatedReg()) @@ -356,10 +331,5 @@ std::ostream &operator<<(std::ostream &OS, const MachineOperand &MO) { break; } - if (MO.isHiBits32() || MO.isLoBits32() || MO.isHiBits64() || MO.isLoBits64()) - OS << ")"; - return OS; } - -} diff --git a/lib/Target/Alpha/AlphaAsmPrinter.cpp b/lib/Target/Alpha/AlphaAsmPrinter.cpp index 600dbe2247d..435e8e84d89 100644 --- a/lib/Target/Alpha/AlphaAsmPrinter.cpp +++ b/lib/Target/Alpha/AlphaAsmPrinter.cpp @@ -123,12 +123,7 @@ void AlphaAsmPrinter::printOp(const MachineOperand &MO, bool IsCallOp) { return; case MachineOperand::MO_GlobalAddress: - //Abuse PCrel to specify pcrel calls - //calls are the only thing that use this flag -// if (MO.isPCRelative()) -// O << PrivateGlobalPrefix << Mang->getValueName(MO.getGlobal()) << "..ng"; -// else - O << Mang->getValueName(MO.getGlobal()); + O << Mang->getValueName(MO.getGlobal()); return; default: diff --git a/lib/Target/X86/X86CodeEmitter.cpp b/lib/Target/X86/X86CodeEmitter.cpp index c2161d84559..65a5a530a34 100644 --- a/lib/Target/X86/X86CodeEmitter.cpp +++ b/lib/Target/X86/X86CodeEmitter.cpp @@ -440,7 +440,6 @@ void Emitter::emitInstruction(const MachineInstr &MI) { } else if (MO1.isGlobalAddress()) { assert(sizeOfImm(Desc) == 4 && "Don't know how to emit non-pointer values!"); - assert(!MO1.isPCRelative() && "Function pointer ref is PC relative?"); emitGlobalAddressForPtr(MO1.getGlobal(), MO1.getOffset()); } else if (MO1.isExternalSymbol()) { assert(sizeOfImm(Desc) == 4 &&