51 "Only floating point immediates are supported at the moment.");
76 while (I != MBB->
end() && I->isInsideBundle()) {
82 MCInstLowering.
lower(MI, TmpInst);
106 std::string &HexLine =
HexLines.back();
109 for (
size_t i = 0; i < CodeBytes.
size(); i += 4) {
110 unsigned int CodeDWord = *(
unsigned int *)&CodeBytes[i];
111 HexStream <<
format(
"%s%08X", (i > 0 ?
" " :
""), CodeDWord);
114 DisasmStream.
flush();
Interface definition for R600InstrInfo.
static MCOperand CreateReg(unsigned Reg)
const ConstantFP * getFPImm() const
MachineBasicBlock * getMBB() const
static MCOperand CreateExpr(const MCExpr *Val)
virtual void printInst(const MCInst *MI, raw_ostream &O, StringRef Annot)
MCCodeEmitter & getEmitter() const
virtual void EmitInstruction(const MCInst &Inst)=0
const MCAsmInfo * getMCAsmInfo() const
#define llvm_unreachable(msg)
format_object1< T > format(const char *Fmt, const T &Val)
Streaming object file generation interface.
virtual void EncodeInstruction(const MCInst &Inst, raw_ostream &OS, SmallVectorImpl< MCFixup > &Fixups) const =0
const MachineBasicBlock * getParent() const
static const MCSymbolRefExpr * Create(const MCSymbol *Symbol, MCContext &Ctx)
A self-contained host- and target-independent arbitrary-precision floating-point software implementat...
const MachineOperand & getOperand(unsigned i) const
MCAssembler & getAssembler()
MCCodeEmitter - Generic instruction encoding interface.
unsigned getNumExplicitOperands() const
AMDGPUMCInstLower(MCContext &ctx)
Floating-point immediate operand.
MCSymbol * getSymbol() const
virtual const TargetInstrInfo * getInstrInfo() const
std::vector< std::string > HexLines
void setOpcode(unsigned Op)
virtual void EmitInstruction(const MachineInstr *MI)
Implemented in AMDGPUMCInstLower.cpp.
std::vector< std::string > DisasmLines
MachineOperandType getType() const
void lower(const MachineInstr *MI, MCInst &OutMI) const
Lower a MachineInstr to an MCInst.
static const fltSemantics IEEEsingle
static MCOperand CreateImm(int64_t Val)
AMDGPU Assembly printer class.
float convertToFloat() const
static MCOperand CreateFPImm(double Val)
virtual const TargetRegisterInfo * getRegisterInfo() const
const APFloat & getValueAPF() const
unsigned getReg() const
getReg - Returns the register number.
void addOperand(const MCOperand &Op)
const fltSemantics & getSemantics() const
MachineBasicBlock reference.