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 #if V8_TARGET_ARCH_X64 | 5 #if V8_TARGET_ARCH_X64 |
6 | 6 |
7 #include "src/interface-descriptors.h" | 7 #include "src/interface-descriptors.h" |
8 | 8 |
9 namespace v8 { | 9 namespace v8 { |
10 namespace internal { | 10 namespace internal { |
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
366 rbx, // call_data | 366 rbx, // call_data |
367 rcx, // holder | 367 rcx, // holder |
368 rdx, // api_function_address | 368 rdx, // api_function_address |
369 }; | 369 }; |
370 data->InitializePlatformSpecific(arraysize(registers), registers); | 370 data->InitializePlatformSpecific(arraysize(registers), registers); |
371 } | 371 } |
372 | 372 |
373 void InterpreterDispatchDescriptor::InitializePlatformSpecific( | 373 void InterpreterDispatchDescriptor::InitializePlatformSpecific( |
374 CallInterfaceDescriptorData* data) { | 374 CallInterfaceDescriptorData* data) { |
375 Register registers[] = { | 375 Register registers[] = { |
376 kInterpreterAccumulatorRegister, kInterpreterRegisterFileRegister, | 376 kInterpreterAccumulatorRegister, kInterpreterBytecodeOffsetRegister, |
377 kInterpreterBytecodeOffsetRegister, kInterpreterBytecodeArrayRegister, | 377 kInterpreterBytecodeArrayRegister, kInterpreterDispatchTableRegister}; |
378 kInterpreterDispatchTableRegister}; | |
379 data->InitializePlatformSpecific(arraysize(registers), registers); | 378 data->InitializePlatformSpecific(arraysize(registers), registers); |
380 } | 379 } |
381 | 380 |
382 void InterpreterPushArgsAndCallDescriptor::InitializePlatformSpecific( | 381 void InterpreterPushArgsAndCallDescriptor::InitializePlatformSpecific( |
383 CallInterfaceDescriptorData* data) { | 382 CallInterfaceDescriptorData* data) { |
384 Register registers[] = { | 383 Register registers[] = { |
385 rax, // argument count (not including receiver) | 384 rax, // argument count (not including receiver) |
386 rbx, // address of first argument | 385 rbx, // address of first argument |
387 rdi // the target callable to be call | 386 rdi // the target callable to be call |
388 }; | 387 }; |
(...skipping 28 matching lines...) Expand all Loading... |
417 rbx, // the JSGeneratorObject to resume | 416 rbx, // the JSGeneratorObject to resume |
418 rdx // the resume mode (tagged) | 417 rdx // the resume mode (tagged) |
419 }; | 418 }; |
420 data->InitializePlatformSpecific(arraysize(registers), registers); | 419 data->InitializePlatformSpecific(arraysize(registers), registers); |
421 } | 420 } |
422 | 421 |
423 } // namespace internal | 422 } // namespace internal |
424 } // namespace v8 | 423 } // namespace v8 |
425 | 424 |
426 #endif // V8_TARGET_ARCH_X64 | 425 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |