| Index: src/compiler/instruction.cc
|
| diff --git a/src/compiler/instruction.cc b/src/compiler/instruction.cc
|
| index 62bd5b74e951456a0a8ab1d6a4d4e085df51514c..9b051bab7a6add13dd2bbf1acc13db3cfc4886d0 100644
|
| --- a/src/compiler/instruction.cc
|
| +++ b/src/compiler/instruction.cc
|
| @@ -44,8 +44,15 @@ std::ostream& operator<<(std::ostream& os,
|
| case InstructionOperand::CONSTANT:
|
| return os << "[constant:" << ConstantOperand::cast(op).virtual_register()
|
| << "]";
|
| - case InstructionOperand::IMMEDIATE:
|
| - return os << "[immediate:" << ImmediateOperand::cast(op).index() << "]";
|
| + case InstructionOperand::IMMEDIATE: {
|
| + auto imm = ImmediateOperand::cast(op);
|
| + switch (imm.type()) {
|
| + case ImmediateOperand::INLINE:
|
| + return os << "#" << imm.inline_value();
|
| + case ImmediateOperand::INDEXED:
|
| + return os << "[immediate:" << imm.indexed_value() << "]";
|
| + }
|
| + }
|
| case InstructionOperand::ALLOCATED:
|
| switch (AllocatedOperand::cast(op).allocated_kind()) {
|
| case AllocatedOperand::STACK_SLOT:
|
| @@ -606,7 +613,7 @@ RpoNumber InstructionSequence::InputRpo(Instruction* instr, size_t index) {
|
| InstructionOperand* operand = instr->InputAt(index);
|
| Constant constant =
|
| operand->IsImmediate()
|
| - ? GetImmediate(ImmediateOperand::cast(operand)->index())
|
| + ? GetImmediate(ImmediateOperand::cast(operand))
|
| : GetConstant(ConstantOperand::cast(operand)->virtual_register());
|
| return constant.ToRpoNumber();
|
| }
|
|
|