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 "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_X64 | 7 #if V8_TARGET_ARCH_X64 |
8 | 8 |
9 #include "src/assembler.h" | 9 #include "src/assembler.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 // ----------- S t a t e ------------- | 155 // ----------- S t a t e ------------- |
156 // -- rdx : type feedback slot (smi) | 156 // -- rdx : type feedback slot (smi) |
157 // -- rdi : function | 157 // -- rdi : function |
158 // ----------------------------------- | 158 // ----------------------------------- |
159 Generate_DebugBreakCallHelper(masm, rdx.bit() | rdi.bit(), 0, false); | 159 Generate_DebugBreakCallHelper(masm, rdx.bit() | rdi.bit(), 0, false); |
160 } | 160 } |
161 | 161 |
162 | 162 |
163 void DebugCodegen::GenerateLoadICDebugBreak(MacroAssembler* masm) { | 163 void DebugCodegen::GenerateLoadICDebugBreak(MacroAssembler* masm) { |
164 // Register state for IC load call (from ic-x64.cc). | 164 // Register state for IC load call (from ic-x64.cc). |
165 // ----------- S t a t e ------------- | 165 Register receiver = LoadIC::ReceiverRegister(); |
166 // -- rax : receiver | 166 Register name = LoadIC::NameRegister(); |
167 // -- rcx : name | 167 Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0, false); |
168 // ----------------------------------- | |
169 Generate_DebugBreakCallHelper(masm, rax.bit() | rcx.bit(), 0, false); | |
170 } | 168 } |
171 | 169 |
172 | 170 |
173 void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { | 171 void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { |
174 // Register state for IC store call (from ic-x64.cc). | 172 // Register state for IC store call (from ic-x64.cc). |
175 // ----------- S t a t e ------------- | 173 // ----------- S t a t e ------------- |
176 // -- rax : value | 174 // -- rax : value |
177 // -- rcx : name | 175 // -- rcx : name |
178 // -- rdx : receiver | 176 // -- rdx : receiver |
179 // ----------------------------------- | 177 // ----------------------------------- |
180 Generate_DebugBreakCallHelper( | 178 Generate_DebugBreakCallHelper( |
181 masm, rax.bit() | rcx.bit() | rdx.bit(), 0, false); | 179 masm, rax.bit() | rcx.bit() | rdx.bit(), 0, false); |
182 } | 180 } |
183 | 181 |
184 | 182 |
185 void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { | 183 void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { |
186 // Register state for keyed IC load call (from ic-x64.cc). | 184 // Register state for keyed IC load call (from ic-x64.cc). |
187 // ----------- S t a t e ------------- | 185 Register receiver = KeyedLoadIC::ReceiverRegister(); |
188 // -- rax : key | 186 Register name = KeyedLoadIC::NameRegister(); |
189 // -- rdx : receiver | 187 Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0, false); |
190 // ----------------------------------- | |
191 Generate_DebugBreakCallHelper(masm, rax.bit() | rdx.bit(), 0, false); | |
192 } | 188 } |
193 | 189 |
194 | 190 |
195 void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { | 191 void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { |
196 // Register state for keyed IC load call (from ic-x64.cc). | 192 // Register state for keyed IC load call (from ic-x64.cc). |
197 // ----------- S t a t e ------------- | 193 // ----------- S t a t e ------------- |
198 // -- rax : value | 194 // -- rax : value |
199 // -- rcx : key | 195 // -- rcx : key |
200 // -- rdx : receiver | 196 // -- rdx : receiver |
201 // ----------------------------------- | 197 // ----------------------------------- |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
307 __ jmp(rdx); | 303 __ jmp(rdx); |
308 } | 304 } |
309 | 305 |
310 const bool LiveEdit::kFrameDropperSupported = true; | 306 const bool LiveEdit::kFrameDropperSupported = true; |
311 | 307 |
312 #undef __ | 308 #undef __ |
313 | 309 |
314 } } // namespace v8::internal | 310 } } // namespace v8::internal |
315 | 311 |
316 #endif // V8_TARGET_ARCH_X64 | 312 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |