| OLD | NEW | 
|---|
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_IA32 | 7 #if V8_TARGET_ARCH_IA32 | 
| 8 | 8 | 
| 9 #include "ia32/lithium-codegen-ia32.h" | 9 #include "ia32/lithium-codegen-ia32.h" | 
| 10 #include "ic.h" | 10 #include "ic.h" | 
| (...skipping 4247 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 4258 } | 4258 } | 
| 4259 | 4259 | 
| 4260 | 4260 | 
| 4261 void LCodeGen::DoCallNew(LCallNew* instr) { | 4261 void LCodeGen::DoCallNew(LCallNew* instr) { | 
| 4262   ASSERT(ToRegister(instr->context()).is(esi)); | 4262   ASSERT(ToRegister(instr->context()).is(esi)); | 
| 4263   ASSERT(ToRegister(instr->constructor()).is(edi)); | 4263   ASSERT(ToRegister(instr->constructor()).is(edi)); | 
| 4264   ASSERT(ToRegister(instr->result()).is(eax)); | 4264   ASSERT(ToRegister(instr->result()).is(eax)); | 
| 4265 | 4265 | 
| 4266   // No cell in ebx for construct type feedback in optimized code | 4266   // No cell in ebx for construct type feedback in optimized code | 
| 4267   __ mov(ebx, isolate()->factory()->undefined_value()); | 4267   __ mov(ebx, isolate()->factory()->undefined_value()); | 
| 4268   CallConstructStub stub(isolate(), NO_CALL_FUNCTION_FLAGS); | 4268   CallConstructStub stub(isolate(), NO_CALL_CONSTRUCTOR_FLAGS); | 
| 4269   __ Move(eax, Immediate(instr->arity())); | 4269   __ Move(eax, Immediate(instr->arity())); | 
| 4270   CallCode(stub.GetCode(), RelocInfo::CONSTRUCT_CALL, instr); | 4270   CallCode(stub.GetCode(), RelocInfo::CONSTRUCT_CALL, instr); | 
| 4271 } | 4271 } | 
| 4272 | 4272 | 
| 4273 | 4273 | 
| 4274 void LCodeGen::DoCallNewArray(LCallNewArray* instr) { | 4274 void LCodeGen::DoCallNewArray(LCallNewArray* instr) { | 
| 4275   ASSERT(ToRegister(instr->context()).is(esi)); | 4275   ASSERT(ToRegister(instr->context()).is(esi)); | 
| 4276   ASSERT(ToRegister(instr->constructor()).is(edi)); | 4276   ASSERT(ToRegister(instr->constructor()).is(edi)); | 
| 4277   ASSERT(ToRegister(instr->result()).is(eax)); | 4277   ASSERT(ToRegister(instr->result()).is(eax)); | 
| 4278 | 4278 | 
| (...skipping 2145 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 6424   __ bind(deferred->exit()); | 6424   __ bind(deferred->exit()); | 
| 6425   __ bind(&done); | 6425   __ bind(&done); | 
| 6426 } | 6426 } | 
| 6427 | 6427 | 
| 6428 | 6428 | 
| 6429 #undef __ | 6429 #undef __ | 
| 6430 | 6430 | 
| 6431 } }  // namespace v8::internal | 6431 } }  // namespace v8::internal | 
| 6432 | 6432 | 
| 6433 #endif  // V8_TARGET_ARCH_IA32 | 6433 #endif  // V8_TARGET_ARCH_IA32 | 
| OLD | NEW | 
|---|