Index: src/mips/lithium-mips.cc |
diff --git a/src/mips/lithium-mips.cc b/src/mips/lithium-mips.cc |
index cc5c10d3401b9f3cb8de1a4afefa637fba3fbe4c..533207c5d7b7bbd08aa974c0f7dd5da615624eb6 100644 |
--- a/src/mips/lithium-mips.cc |
+++ b/src/mips/lithium-mips.cc |
@@ -355,6 +355,17 @@ void LCallNew::PrintDataTo(StringStream* stream) { |
} |
+void LCallNewArray::PrintDataTo(StringStream* stream) { |
+ stream->Add("= "); |
+ constructor()->PrintTo(stream); |
+ stream->Add(" #%d / ", arity()); |
+ ASSERT(hydrogen()->property_cell()->value()->IsSmi()); |
+ ElementsKind kind = static_cast<ElementsKind>( |
+ Smi::cast(hydrogen()->property_cell()->value())->value()); |
+ stream->Add(" (%s) ", ElementsKindToString(kind)); |
+} |
+ |
+ |
void LAccessArgumentsAt::PrintDataTo(StringStream* stream) { |
arguments()->PrintTo(stream); |
stream->Add(" length "); |
@@ -1141,6 +1152,14 @@ LInstruction* LChunkBuilder::DoCallNew(HCallNew* instr) { |
} |
+LInstruction* LChunkBuilder::DoCallNewArray(HCallNewArray* instr) { |
+ LOperand* constructor = UseFixed(instr->constructor(), a1); |
+ argument_count_ -= instr->argument_count(); |
+ LCallNewArray* result = new(zone()) LCallNewArray(constructor); |
+ return MarkAsCall(DefineFixed(result, v0), instr); |
+} |
+ |
+ |
LInstruction* LChunkBuilder::DoCallFunction(HCallFunction* instr) { |
LOperand* function = UseFixed(instr->function(), a1); |
argument_count_ -= instr->argument_count(); |