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 #if V8_TARGET_ARCH_IA32 | 5 #if V8_TARGET_ARCH_IA32 |
6 | 6 |
7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
8 #include "src/bootstrapper.h" | 8 #include "src/bootstrapper.h" |
9 #include "src/code-stubs.h" | 9 #include "src/code-stubs.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 4591 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4602 __ j(not_equal, ¬_array); | 4602 __ j(not_equal, ¬_array); |
4603 HandleArrayCases(masm, receiver, name, vector, slot, scratch, true, &miss); | 4603 HandleArrayCases(masm, receiver, name, vector, slot, scratch, true, &miss); |
4604 | 4604 |
4605 __ bind(¬_array); | 4605 __ bind(¬_array); |
4606 __ CompareRoot(scratch, Heap::kmegamorphic_symbolRootIndex); | 4606 __ CompareRoot(scratch, Heap::kmegamorphic_symbolRootIndex); |
4607 __ j(not_equal, &miss); | 4607 __ j(not_equal, &miss); |
4608 __ push(slot); | 4608 __ push(slot); |
4609 __ push(vector); | 4609 __ push(vector); |
4610 Code::Flags code_flags = Code::RemoveTypeAndHolderFromFlags( | 4610 Code::Flags code_flags = Code::RemoveTypeAndHolderFromFlags( |
4611 Code::ComputeHandlerFlags(Code::LOAD_IC)); | 4611 Code::ComputeHandlerFlags(Code::LOAD_IC)); |
4612 masm->isolate()->stub_cache()->GenerateProbe( | 4612 masm->isolate()->stub_cache()->GenerateProbe(masm, Code::LOAD_IC, code_flags, |
4613 masm, Code::LOAD_IC, code_flags, false, receiver, name, vector, scratch); | 4613 receiver, name, vector, scratch); |
4614 __ pop(vector); | 4614 __ pop(vector); |
4615 __ pop(slot); | 4615 __ pop(slot); |
4616 | 4616 |
4617 __ bind(&miss); | 4617 __ bind(&miss); |
4618 LoadIC::GenerateMiss(masm); | 4618 LoadIC::GenerateMiss(masm); |
4619 } | 4619 } |
4620 | 4620 |
4621 | 4621 |
4622 void KeyedLoadICStub::Generate(MacroAssembler* masm) { | 4622 void KeyedLoadICStub::Generate(MacroAssembler* masm) { |
4623 GenerateImpl(masm, false); | 4623 GenerateImpl(masm, false); |
(...skipping 1034 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5658 Operand(ebp, 7 * kPointerSize), NULL); | 5658 Operand(ebp, 7 * kPointerSize), NULL); |
5659 } | 5659 } |
5660 | 5660 |
5661 | 5661 |
5662 #undef __ | 5662 #undef __ |
5663 | 5663 |
5664 } // namespace internal | 5664 } // namespace internal |
5665 } // namespace v8 | 5665 } // namespace v8 |
5666 | 5666 |
5667 #endif // V8_TARGET_ARCH_IA32 | 5667 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |