| OLD | NEW | 
|     1 // Copyright 2013 the V8 project authors. All rights reserved. |     1 // Copyright 2013 the V8 project authors. All rights reserved. | 
|     2 // Use of this source code is governed by a BSD-style license that can be |     2 // Use of this source code is governed by a BSD-style license that can be | 
|     3 // found in the LICENSE file. |     3 // found in the LICENSE file. | 
|     4  |     4  | 
|     5 #include "v8.h" |     5 #include "v8.h" | 
|     6  |     6  | 
|     7 #if V8_TARGET_ARCH_X64 |     7 #if V8_TARGET_ARCH_X64 | 
|     8  |     8  | 
|     9 #include "x64/lithium-codegen-x64.h" |     9 #include "x64/lithium-codegen-x64.h" | 
|    10 #include "code-stubs.h" |    10 #include "code-stubs.h" | 
| (...skipping 3880 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  3891  |  3891  | 
|  3892  |  3892  | 
|  3893 void LCodeGen::DoCallNew(LCallNew* instr) { |  3893 void LCodeGen::DoCallNew(LCallNew* instr) { | 
|  3894   ASSERT(ToRegister(instr->context()).is(rsi)); |  3894   ASSERT(ToRegister(instr->context()).is(rsi)); | 
|  3895   ASSERT(ToRegister(instr->constructor()).is(rdi)); |  3895   ASSERT(ToRegister(instr->constructor()).is(rdi)); | 
|  3896   ASSERT(ToRegister(instr->result()).is(rax)); |  3896   ASSERT(ToRegister(instr->result()).is(rax)); | 
|  3897  |  3897  | 
|  3898   __ Set(rax, instr->arity()); |  3898   __ Set(rax, instr->arity()); | 
|  3899   // No cell in ebx for construct type feedback in optimized code |  3899   // No cell in ebx for construct type feedback in optimized code | 
|  3900   __ LoadRoot(rbx, Heap::kUndefinedValueRootIndex); |  3900   __ LoadRoot(rbx, Heap::kUndefinedValueRootIndex); | 
|  3901   CallConstructStub stub(isolate(), NO_CALL_FUNCTION_FLAGS); |  3901   CallConstructStub stub(isolate(), NO_CALL_CONSTRUCTOR_FLAGS); | 
|  3902   CallCode(stub.GetCode(), RelocInfo::CONSTRUCT_CALL, instr); |  3902   CallCode(stub.GetCode(), RelocInfo::CONSTRUCT_CALL, instr); | 
|  3903 } |  3903 } | 
|  3904  |  3904  | 
|  3905  |  3905  | 
|  3906 void LCodeGen::DoCallNewArray(LCallNewArray* instr) { |  3906 void LCodeGen::DoCallNewArray(LCallNewArray* instr) { | 
|  3907   ASSERT(ToRegister(instr->context()).is(rsi)); |  3907   ASSERT(ToRegister(instr->context()).is(rsi)); | 
|  3908   ASSERT(ToRegister(instr->constructor()).is(rdi)); |  3908   ASSERT(ToRegister(instr->constructor()).is(rdi)); | 
|  3909   ASSERT(ToRegister(instr->result()).is(rax)); |  3909   ASSERT(ToRegister(instr->result()).is(rax)); | 
|  3910  |  3910  | 
|  3911   __ Set(rax, instr->arity()); |  3911   __ Set(rax, instr->arity()); | 
| (...skipping 1792 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  5704   __ bind(deferred->exit()); |  5704   __ bind(deferred->exit()); | 
|  5705   __ bind(&done); |  5705   __ bind(&done); | 
|  5706 } |  5706 } | 
|  5707  |  5707  | 
|  5708  |  5708  | 
|  5709 #undef __ |  5709 #undef __ | 
|  5710  |  5710  | 
|  5711 } }  // namespace v8::internal |  5711 } }  // namespace v8::internal | 
|  5712  |  5712  | 
|  5713 #endif  // V8_TARGET_ARCH_X64 |  5713 #endif  // V8_TARGET_ARCH_X64 | 
| OLD | NEW |