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 "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_IA32 | 7 #if V8_TARGET_ARCH_IA32 |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
(...skipping 3608 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3619 if (FLAG_debug_code) { | 3619 if (FLAG_debug_code) { |
3620 __ test(ecx, Immediate(kSmiTagMask)); | 3620 __ test(ecx, Immediate(kSmiTagMask)); |
3621 __ Assert(not_equal, kExpectedAllocationSite); | 3621 __ Assert(not_equal, kExpectedAllocationSite); |
3622 __ cmp(FieldOperand(ecx, HeapObject::kMapOffset), | 3622 __ cmp(FieldOperand(ecx, HeapObject::kMapOffset), |
3623 isolate()->factory()->allocation_site_map()); | 3623 isolate()->factory()->allocation_site_map()); |
3624 __ Assert(equal, kExpectedAllocationSite); | 3624 __ Assert(equal, kExpectedAllocationSite); |
3625 } | 3625 } |
3626 | 3626 |
3627 // Tail call into the stub that handles binary operations with allocation | 3627 // Tail call into the stub that handles binary operations with allocation |
3628 // sites. | 3628 // sites. |
3629 BinaryOpWithAllocationSiteStub stub(isolate(), state_); | 3629 BinaryOpWithAllocationSiteStub stub(isolate(), state()); |
3630 __ TailCallStub(&stub); | 3630 __ TailCallStub(&stub); |
3631 } | 3631 } |
3632 | 3632 |
3633 | 3633 |
3634 void ICCompareStub::GenerateSmis(MacroAssembler* masm) { | 3634 void ICCompareStub::GenerateSmis(MacroAssembler* masm) { |
3635 DCHECK(state_ == CompareIC::SMI); | 3635 DCHECK(state_ == CompareIC::SMI); |
3636 Label miss; | 3636 Label miss; |
3637 __ mov(ecx, edx); | 3637 __ mov(ecx, edx); |
3638 __ or_(ecx, eax); | 3638 __ or_(ecx, eax); |
3639 __ JumpIfNotSmi(ecx, &miss, Label::kNear); | 3639 __ JumpIfNotSmi(ecx, &miss, Label::kNear); |
(...skipping 1364 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5004 Operand(ebp, 7 * kPointerSize), | 5004 Operand(ebp, 7 * kPointerSize), |
5005 NULL); | 5005 NULL); |
5006 } | 5006 } |
5007 | 5007 |
5008 | 5008 |
5009 #undef __ | 5009 #undef __ |
5010 | 5010 |
5011 } } // namespace v8::internal | 5011 } } // namespace v8::internal |
5012 | 5012 |
5013 #endif // V8_TARGET_ARCH_IA32 | 5013 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |