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 Register receiver = LoadConvention::ReceiverRegister(); | 165 Register receiver = LoadDescriptor::ReceiverRegister(); |
166 Register name = LoadConvention::NameRegister(); | 166 Register name = LoadDescriptor::NameRegister(); |
167 Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0, false); | 167 Generate_DebugBreakCallHelper(masm, receiver.bit() | name.bit(), 0, false); |
168 } | 168 } |
169 | 169 |
170 | 170 |
171 void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { | 171 void DebugCodegen::GenerateStoreICDebugBreak(MacroAssembler* masm) { |
172 // Register state for IC store call (from ic-x64.cc). | 172 // Register state for IC store call (from ic-x64.cc). |
173 Register receiver = StoreConvention::ReceiverRegister(); | 173 Register receiver = StoreDescriptor::ReceiverRegister(); |
174 Register name = StoreConvention::NameRegister(); | 174 Register name = StoreDescriptor::NameRegister(); |
175 Register value = StoreConvention::ValueRegister(); | 175 Register value = StoreDescriptor::ValueRegister(); |
176 Generate_DebugBreakCallHelper( | 176 Generate_DebugBreakCallHelper( |
177 masm, receiver.bit() | name.bit() | value.bit(), 0, false); | 177 masm, receiver.bit() | name.bit() | value.bit(), 0, false); |
178 } | 178 } |
179 | 179 |
180 | 180 |
181 void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { | 181 void DebugCodegen::GenerateKeyedLoadICDebugBreak(MacroAssembler* masm) { |
182 // Register state for keyed IC load call (from ic-x64.cc). | 182 // Register state for keyed IC load call (from ic-x64.cc). |
183 GenerateLoadICDebugBreak(masm); | 183 GenerateLoadICDebugBreak(masm); |
184 } | 184 } |
185 | 185 |
186 | 186 |
187 void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { | 187 void DebugCodegen::GenerateKeyedStoreICDebugBreak(MacroAssembler* masm) { |
188 // Register state for keyed IC store call (from ic-x64.cc). | 188 // Register state for keyed IC store call (from ic-x64.cc). |
189 Register receiver = StoreConvention::ReceiverRegister(); | 189 Register receiver = StoreDescriptor::ReceiverRegister(); |
190 Register name = StoreConvention::NameRegister(); | 190 Register name = StoreDescriptor::NameRegister(); |
191 Register value = StoreConvention::ValueRegister(); | 191 Register value = StoreDescriptor::ValueRegister(); |
192 Generate_DebugBreakCallHelper( | 192 Generate_DebugBreakCallHelper( |
193 masm, receiver.bit() | name.bit() | value.bit(), 0, false); | 193 masm, receiver.bit() | name.bit() | value.bit(), 0, false); |
194 } | 194 } |
195 | 195 |
196 | 196 |
197 void DebugCodegen::GenerateCompareNilICDebugBreak(MacroAssembler* masm) { | 197 void DebugCodegen::GenerateCompareNilICDebugBreak(MacroAssembler* masm) { |
198 // Register state for CompareNil IC | 198 // Register state for CompareNil IC |
199 // ----------- S t a t e ------------- | 199 // ----------- S t a t e ------------- |
200 // -- rax : value | 200 // -- rax : value |
201 // ----------------------------------- | 201 // ----------------------------------- |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
297 __ jmp(rdx); | 297 __ jmp(rdx); |
298 } | 298 } |
299 | 299 |
300 const bool LiveEdit::kFrameDropperSupported = true; | 300 const bool LiveEdit::kFrameDropperSupported = true; |
301 | 301 |
302 #undef __ | 302 #undef __ |
303 | 303 |
304 } } // namespace v8::internal | 304 } } // namespace v8::internal |
305 | 305 |
306 #endif // V8_TARGET_ARCH_X64 | 306 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |