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_MIPS | 7 #if V8_TARGET_ARCH_MIPS |
8 | 8 |
9 // Note on Mips implementation: | 9 // Note on Mips implementation: |
10 // | 10 // |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
169 | 169 |
170 __ bind(&ok); | 170 __ bind(&ok); |
171 } | 171 } |
172 | 172 |
173 // Open a frame scope to indicate that there is a frame on the stack. The | 173 // Open a frame scope to indicate that there is a frame on the stack. The |
174 // MANUAL indicates that the scope shouldn't actually generate code to set up | 174 // MANUAL indicates that the scope shouldn't actually generate code to set up |
175 // the frame (that is done below). | 175 // the frame (that is done below). |
176 FrameScope frame_scope(masm_, StackFrame::MANUAL); | 176 FrameScope frame_scope(masm_, StackFrame::MANUAL); |
177 | 177 |
178 info->set_prologue_offset(masm_->pc_offset()); | 178 info->set_prologue_offset(masm_->pc_offset()); |
179 ASSERT(!info->IsStub()); | 179 __ Prologue(info->IsCodePreAgingActive()); |
180 __ Prologue(info); | |
181 info->AddNoFrameRange(0, masm_->pc_offset()); | 180 info->AddNoFrameRange(0, masm_->pc_offset()); |
182 | 181 |
183 { Comment cmnt(masm_, "[ Allocate locals"); | 182 { Comment cmnt(masm_, "[ Allocate locals"); |
184 int locals_count = info->scope()->num_stack_slots(); | 183 int locals_count = info->scope()->num_stack_slots(); |
185 // Generators allocate locals, if any, in context slots. | 184 // Generators allocate locals, if any, in context slots. |
186 ASSERT(!info->function()->is_generator() || locals_count == 0); | 185 ASSERT(!info->function()->is_generator() || locals_count == 0); |
187 if (locals_count > 0) { | 186 if (locals_count > 0) { |
188 if (locals_count >= 128) { | 187 if (locals_count >= 128) { |
189 EmitStackCheck(masm_, a2, locals_count, t5); | 188 EmitStackCheck(masm_, a2, locals_count, t5); |
190 } | 189 } |
(...skipping 4662 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4853 Assembler::target_address_at(pc_immediate_load_address)) == | 4852 Assembler::target_address_at(pc_immediate_load_address)) == |
4854 reinterpret_cast<uint32_t>( | 4853 reinterpret_cast<uint32_t>( |
4855 isolate->builtins()->OsrAfterStackCheck()->entry())); | 4854 isolate->builtins()->OsrAfterStackCheck()->entry())); |
4856 return OSR_AFTER_STACK_CHECK; | 4855 return OSR_AFTER_STACK_CHECK; |
4857 } | 4856 } |
4858 | 4857 |
4859 | 4858 |
4860 } } // namespace v8::internal | 4859 } } // namespace v8::internal |
4861 | 4860 |
4862 #endif // V8_TARGET_ARCH_MIPS | 4861 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |