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 | 5 |
6 | 6 |
7 #include "src/v8.h" | 7 #include "src/v8.h" |
8 | 8 |
9 #if V8_TARGET_ARCH_MIPS | 9 #if V8_TARGET_ARCH_MIPS |
10 | 10 |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 // Register state for CallICStub | 178 // Register state for CallICStub |
179 // ----------- S t a t e ------------- | 179 // ----------- S t a t e ------------- |
180 // -- a1 : function | 180 // -- a1 : function |
181 // -- a3 : slot in feedback array (smi) | 181 // -- a3 : slot in feedback array (smi) |
182 // ----------------------------------- | 182 // ----------------------------------- |
183 Generate_DebugBreakCallHelper(masm, a1.bit() | a3.bit(), 0); | 183 Generate_DebugBreakCallHelper(masm, a1.bit() | a3.bit(), 0); |
184 } | 184 } |
185 | 185 |
186 | 186 |
187 void DebugCodegen::GenerateLoadICDebugBreak(MacroAssembler* masm) { | 187 void DebugCodegen::GenerateLoadICDebugBreak(MacroAssembler* masm) { |
188 // Calling convention for IC load (from ic-mips.cc). | 188 Register receiver = LoadIC::ReceiverRegister(); |
189 // ----------- S t a t e ------------- | 189 Register name = LoadIC::NameRegister(); |
190 // -- a2 : name | 190 Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0); |
191 // -- ra : return address | |
192 // -- a0 : receiver | |
193 // -- [sp] : receiver | |
194 // ----------------------------------- | |
195 // Registers a0 and a2 contain objects that need to be pushed on the | |
196 // expression stack of the fake JS frame. | |
197 Generate_DebugBreakCallHelper(masm, a0.bit() | a2.bit(), 0); | |
198 } | 191 } |
199 | 192 |
200 | 193 |
201 void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { | 194 void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { |
202 // Calling convention for IC store (from ic-mips.cc). | 195 // Calling convention for IC store (from ic-mips.cc). |
203 // ----------- S t a t e ------------- | 196 // ----------- S t a t e ------------- |
204 // -- a0 : value | 197 // -- a0 : value |
205 // -- a1 : receiver | 198 // -- a1 : receiver |
206 // -- a2 : name | 199 // -- a2 : name |
207 // -- ra : return address | 200 // -- ra : return address |
208 // ----------------------------------- | 201 // ----------------------------------- |
209 // Registers a0, a1, and a2 contain objects that need to be pushed on the | 202 // Registers a0, a1, and a2 contain objects that need to be pushed on the |
210 // expression stack of the fake JS frame. | 203 // expression stack of the fake JS frame. |
211 Generate_DebugBreakCallHelper(masm, a0.bit() | a1.bit() | a2.bit(), 0); | 204 Generate_DebugBreakCallHelper(masm, a0.bit() | a1.bit() | a2.bit(), 0); |
212 } | 205 } |
213 | 206 |
214 | 207 |
215 void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { | 208 void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { |
216 // ---------- S t a t e -------------- | 209 // Calling convention for keyed IC load (from ic-arm.cc). |
217 // -- ra : return address | 210 Register receiver = KeyedLoadIC::ReceiverRegister(); |
218 // -- a0 : key | 211 Register name = KeyedLoadIC::NameRegister(); |
219 // -- a1 : receiver | 212 Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0); |
220 Generate_DebugBreakCallHelper(masm, a0.bit() | a1.bit(), 0); | |
221 } | 213 } |
222 | 214 |
223 | 215 |
224 void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { | 216 void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { |
225 // ---------- S t a t e -------------- | 217 // ---------- S t a t e -------------- |
226 // -- a0 : value | 218 // -- a0 : value |
227 // -- a1 : key | 219 // -- a1 : key |
228 // -- a2 : receiver | 220 // -- a2 : receiver |
229 // -- ra : return address | 221 // -- ra : return address |
230 Generate_DebugBreakCallHelper(masm, a0.bit() | a1.bit() | a2.bit(), 0); | 222 Generate_DebugBreakCallHelper(masm, a0.bit() | a1.bit() | a2.bit(), 0); |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 } | 324 } |
333 | 325 |
334 | 326 |
335 const bool LiveEdit::kFrameDropperSupported = true; | 327 const bool LiveEdit::kFrameDropperSupported = true; |
336 | 328 |
337 #undef __ | 329 #undef __ |
338 | 330 |
339 } } // namespace v8::internal | 331 } } // namespace v8::internal |
340 | 332 |
341 #endif // V8_TARGET_ARCH_MIPS | 333 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |