| 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_X87 | 5 #if V8_TARGET_ARCH_X87 |
| 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 390 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 401 CallInterfaceDescriptorData* data) { | 401 CallInterfaceDescriptorData* data) { |
| 402 Register registers[] = { | 402 Register registers[] = { |
| 403 eax, // argument count (not including receiver) | 403 eax, // argument count (not including receiver) |
| 404 ebx, // address of first argument | 404 ebx, // address of first argument |
| 405 edi // the target callable to be call | 405 edi // the target callable to be call |
| 406 }; | 406 }; |
| 407 data->InitializePlatformSpecific(arraysize(registers), registers); | 407 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 408 } | 408 } |
| 409 | 409 |
| 410 | 410 |
| 411 void InterpreterPushArgsAndConstructDescriptor::InitializePlatformSpecific( |
| 412 CallInterfaceDescriptorData* data) { |
| 413 Register registers[] = { |
| 414 eax, // argument count (not including receiver) |
| 415 edx, // original constructor |
| 416 edi, // constructor |
| 417 ebx, // address of first argument |
| 418 }; |
| 419 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 420 } |
| 421 |
| 422 |
| 411 void InterpreterCEntryDescriptor::InitializePlatformSpecific( | 423 void InterpreterCEntryDescriptor::InitializePlatformSpecific( |
| 412 CallInterfaceDescriptorData* data) { | 424 CallInterfaceDescriptorData* data) { |
| 413 Register registers[] = { | 425 Register registers[] = { |
| 414 eax, // argument count (argc) | 426 eax, // argument count (argc) |
| 415 ecx, // address of first argument (argv) | 427 ecx, // address of first argument (argv) |
| 416 ebx // the runtime function to call | 428 ebx // the runtime function to call |
| 417 }; | 429 }; |
| 418 data->InitializePlatformSpecific(arraysize(registers), registers); | 430 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 419 } | 431 } |
| 420 | 432 |
| 421 } // namespace internal | 433 } // namespace internal |
| 422 } // namespace v8 | 434 } // namespace v8 |
| 423 | 435 |
| 424 #endif // V8_TARGET_ARCH_X87 | 436 #endif // V8_TARGET_ARCH_X87 |
| OLD | NEW |