Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(144)

Side by Side Diff: src/x64/debug-x64.cc

Issue 527093002: Make concrete classes for individual call descriptors. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: REBASE. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698