Chromium Code Reviews| Index: src/full-codegen/full-codegen.cc |
| diff --git a/src/full-codegen/full-codegen.cc b/src/full-codegen/full-codegen.cc |
| index 4bb0b4d1b7d7e446bc1435cf4b919bc108d8da06..e4d03c45d4d80759eb3ac4d525c7abaaec3feef3 100644 |
| --- a/src/full-codegen/full-codegen.cc |
| +++ b/src/full-codegen/full-codegen.cc |
| @@ -507,6 +507,19 @@ void FullCodeGenerator::EmitSubString(CallRuntime* expr) { |
| context()->Plug(result_register()); |
| } |
| +void FullCodeGenerator::EmitNewObject(CallRuntime* expr) { |
| + // Load the arguments on the stack and call the stub. |
|
Benedikt Meurer
2016/03/31 17:49:29
Please use EmitIntrinsicAsStubCall here.
Camillo Bruni
2016/04/01 10:44:13
Could swear that I tried that :D
|
| + FastNewObjectStub stub(isolate()); |
| + ZoneList<Expression*>* args = expr->arguments(); |
| + DCHECK(args->length() == 2); |
| + VisitForStackValue(args->at(0)); |
| + VisitForStackValue(args->at(1)); |
| + __ Pop(stub.GetCallInterfaceDescriptor().GetRegisterParameter(1)); |
| + __ Pop(stub.GetCallInterfaceDescriptor().GetRegisterParameter(0)); |
| + __ CallStub(&stub); |
| + OperandStackDepthDecrement(2); |
| + context()->Plug(result_register()); |
| +} |
| void FullCodeGenerator::EmitRegExpExec(CallRuntime* expr) { |
| // Load the arguments on the stack and call the stub. |