diff --git a/lib/Target/X86/X86CodeEmitter.cpp b/lib/Target/X86/X86CodeEmitter.cpp index d4d43af84fb..0c472a725bc 100644 --- a/lib/Target/X86/X86CodeEmitter.cpp +++ b/lib/Target/X86/X86CodeEmitter.cpp @@ -971,6 +971,12 @@ public: if (!Op.isMCValue()) return false; + const MCValue &Val = Op.getMCValue(); + if (Val.isAbsolute()) { + Instr->addOperand(MachineOperand::CreateImm(Val.getConstant())); + return true; + } + // FIXME: Relocation / fixup. Instr->addOperand(MachineOperand::CreateImm(0)); return true;