Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1)

Side by Side Diff: src/mips/code-stubs-mips.cc

Issue 2313093002: [stubs] Port StoreTransitionStub and ElementsTransitionAndStoreStub to TurboFan. (Closed)
Patch Set: Addressing comments Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/interface-descriptors.cc ('k') | src/mips/interface-descriptors-mips.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_MIPS 5 #if V8_TARGET_ARCH_MIPS
6 6
7 #include "src/code-stubs.h" 7 #include "src/code-stubs.h"
8 #include "src/api-arguments.h" 8 #include "src/api-arguments.h"
9 #include "src/base/bits.h" 9 #include "src/base/bits.h"
10 #include "src/bootstrapper.h" 10 #include "src/bootstrapper.h"
(...skipping 3858 matching lines...) Expand 10 before | Expand all | Expand 10 after
3869 __ Addu(t9, pointer_reg, Operand(Code::kHeaderSize - kHeapObjectTag)); 3869 __ Addu(t9, pointer_reg, Operand(Code::kHeaderSize - kHeapObjectTag));
3870 __ Jump(t9); 3870 __ Jump(t9);
3871 3871
3872 __ bind(&transition_call); 3872 __ bind(&transition_call);
3873 __ lw(too_far, FieldMemOperand(too_far, WeakCell::kValueOffset)); 3873 __ lw(too_far, FieldMemOperand(too_far, WeakCell::kValueOffset));
3874 __ JumpIfSmi(too_far, miss); 3874 __ JumpIfSmi(too_far, miss);
3875 3875
3876 __ lw(receiver_map, MemOperand(pointer_reg, kPointerSize * 2)); 3876 __ lw(receiver_map, MemOperand(pointer_reg, kPointerSize * 2));
3877 3877
3878 // Load the map into the correct register. 3878 // Load the map into the correct register.
3879 DCHECK(feedback.is(VectorStoreTransitionDescriptor::MapRegister())); 3879 DCHECK(feedback.is(StoreTransitionDescriptor::MapRegister()));
3880 __ mov(feedback, too_far); 3880 __ mov(feedback, too_far);
3881 3881
3882 __ Addu(t9, receiver_map, Operand(Code::kHeaderSize - kHeapObjectTag)); 3882 __ Addu(t9, receiver_map, Operand(Code::kHeaderSize - kHeapObjectTag));
3883 __ Jump(t9); 3883 __ Jump(t9);
3884 3884
3885 __ bind(&prepare_next); 3885 __ bind(&prepare_next);
3886 __ Addu(pointer_reg, pointer_reg, Operand(kPointerSize * 3)); 3886 __ Addu(pointer_reg, pointer_reg, Operand(kPointerSize * 3));
3887 __ Branch(&next_loop, lt, pointer_reg, Operand(too_far)); 3887 __ Branch(&next_loop, lt, pointer_reg, Operand(too_far));
3888 3888
3889 // We exhausted our array of map handler pairs. 3889 // We exhausted our array of map handler pairs.
(...skipping 1474 matching lines...) Expand 10 before | Expand all | Expand 10 after
5364 kStackUnwindSpace, kInvalidStackOffset, 5364 kStackUnwindSpace, kInvalidStackOffset,
5365 return_value_operand, NULL); 5365 return_value_operand, NULL);
5366 } 5366 }
5367 5367
5368 #undef __ 5368 #undef __
5369 5369
5370 } // namespace internal 5370 } // namespace internal
5371 } // namespace v8 5371 } // namespace v8
5372 5372
5373 #endif // V8_TARGET_ARCH_MIPS 5373 #endif // V8_TARGET_ARCH_MIPS
OLDNEW
« no previous file with comments | « src/interface-descriptors.cc ('k') | src/mips/interface-descriptors-mips.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698