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_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 1968 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1979 __ Branch(&done_initialize_count); | 1979 __ Branch(&done_initialize_count); |
1980 | 1980 |
1981 __ bind(¬_array_function); | 1981 __ bind(¬_array_function); |
1982 CreateWeakCellStub weak_cell_stub(masm->isolate()); | 1982 CreateWeakCellStub weak_cell_stub(masm->isolate()); |
1983 CallStubInRecordCallTarget(masm, &weak_cell_stub); | 1983 CallStubInRecordCallTarget(masm, &weak_cell_stub); |
1984 | 1984 |
1985 __ bind(&done_initialize_count); | 1985 __ bind(&done_initialize_count); |
1986 // Initialize the call counter. | 1986 // Initialize the call counter. |
1987 __ Lsa(at, a2, a3, kPointerSizeLog2 - kSmiTagSize); | 1987 __ Lsa(at, a2, a3, kPointerSizeLog2 - kSmiTagSize); |
1988 __ li(t0, Operand(Smi::FromInt(1))); | 1988 __ li(t0, Operand(Smi::FromInt(1))); |
| 1989 __ Branch(USE_DELAY_SLOT, &done); |
1989 __ sw(t0, FieldMemOperand(at, FixedArray::kHeaderSize + kPointerSize)); | 1990 __ sw(t0, FieldMemOperand(at, FixedArray::kHeaderSize + kPointerSize)); |
1990 __ b(&done); | |
1991 | 1991 |
1992 __ bind(&done_increment_count); | 1992 __ bind(&done_increment_count); |
1993 | 1993 |
1994 // Increment the call count for monomorphic function calls. | 1994 // Increment the call count for monomorphic function calls. |
1995 __ Lsa(at, a2, a3, kPointerSizeLog2 - kSmiTagSize); | 1995 __ Lsa(at, a2, a3, kPointerSizeLog2 - kSmiTagSize); |
1996 __ lw(t0, FieldMemOperand(at, FixedArray::kHeaderSize + kPointerSize)); | 1996 __ lw(t0, FieldMemOperand(at, FixedArray::kHeaderSize + kPointerSize)); |
1997 __ Addu(t0, t0, Operand(Smi::FromInt(1))); | 1997 __ Addu(t0, t0, Operand(Smi::FromInt(1))); |
1998 __ sw(t0, FieldMemOperand(at, FixedArray::kHeaderSize + kPointerSize)); | 1998 __ sw(t0, FieldMemOperand(at, FixedArray::kHeaderSize + kPointerSize)); |
1999 | 1999 |
2000 __ bind(&done); | 2000 __ bind(&done); |
(...skipping 3630 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5631 kStackUnwindSpace, kInvalidStackOffset, | 5631 kStackUnwindSpace, kInvalidStackOffset, |
5632 return_value_operand, NULL); | 5632 return_value_operand, NULL); |
5633 } | 5633 } |
5634 | 5634 |
5635 #undef __ | 5635 #undef __ |
5636 | 5636 |
5637 } // namespace internal | 5637 } // namespace internal |
5638 } // namespace v8 | 5638 } // namespace v8 |
5639 | 5639 |
5640 #endif // V8_TARGET_ARCH_MIPS | 5640 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |