| Index: src/arm/lithium-arm.cc
|
| diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc
|
| index 4ee515900dee162cb1a92de1771afacb829f3566..2e097f9302cba7fa882d46e46f4dbd99c09a444d 100644
|
| --- a/src/arm/lithium-arm.cc
|
| +++ b/src/arm/lithium-arm.cc
|
| @@ -255,6 +255,20 @@ void LInnerAllocatedObject::PrintDataTo(StringStream* stream) {
|
| }
|
|
|
|
|
| +void LCallFunction::PrintDataTo(StringStream* stream) {
|
| + context()->PrintTo(stream);
|
| + stream->Add(" ");
|
| + function()->PrintTo(stream);
|
| + if (hydrogen()->HasVectorAndSlot()) {
|
| + stream->Add(" (type-feedback-vector ");
|
| + temp_vector()->PrintTo(stream);
|
| + stream->Add(" ");
|
| + temp_slot()->PrintTo(stream);
|
| + stream->Add(")");
|
| + }
|
| +}
|
| +
|
| +
|
| void LCallJSFunction::PrintDataTo(StringStream* stream) {
|
| stream->Add("= ");
|
| function()->PrintTo(stream);
|
| @@ -1243,7 +1257,15 @@ LInstruction* LChunkBuilder::DoCallNewArray(HCallNewArray* instr) {
|
| LInstruction* LChunkBuilder::DoCallFunction(HCallFunction* instr) {
|
| LOperand* context = UseFixed(instr->context(), cp);
|
| LOperand* function = UseFixed(instr->function(), r1);
|
| - LCallFunction* call = new(zone()) LCallFunction(context, function);
|
| + LOperand* slot = NULL;
|
| + LOperand* vector = NULL;
|
| + if (instr->HasVectorAndSlot()) {
|
| + slot = FixedTemp(r3);
|
| + vector = FixedTemp(r2);
|
| + }
|
| +
|
| + LCallFunction* call =
|
| + new (zone()) LCallFunction(context, function, slot, vector);
|
| return MarkAsCall(DefineFixed(call, r0), instr);
|
| }
|
|
|
|
|