Index: src/compiler/instruction-selector.cc |
diff --git a/src/compiler/instruction-selector.cc b/src/compiler/instruction-selector.cc |
index 22ca9c7319e56ffdd281825dd4e24733b2a1d0f8..095045242415343cb87e601bd830f8559031c245 100644 |
--- a/src/compiler/instruction-selector.cc |
+++ b/src/compiler/instruction-selector.cc |
@@ -584,7 +584,9 @@ void InstructionSelector::InitializeCallBuffer(Node* call, CallBuffer* buffer, |
switch (buffer->descriptor->kind()) { |
case CallDescriptor::kCallCodeObject: |
buffer->instruction_args.push_back( |
- (call_code_immediate && callee->opcode() == IrOpcode::kHeapConstant) |
+ (call_code_immediate && |
+ (callee->opcode() == IrOpcode::kHeapConstant || |
+ callee->opcode() == IrOpcode::kRelocatableInt32Constant)) |
? g.UseImmediate(callee) |
: g.UseRegister(callee)); |
break; |