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

Side by Side Diff: src/x87/interface-descriptors-x87.cc

Issue 1748123003: Rework CallApi*Stubs. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Minor fixes and make Win compiler happy. Created 4 years, 9 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
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 #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 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 CallInterfaceDescriptorData* data) { 380 CallInterfaceDescriptorData* data) {
381 Register registers[] = { 381 Register registers[] = {
382 edi, // JSFunction 382 edi, // JSFunction
383 edx, // the new target 383 edx, // the new target
384 eax, // actual number of arguments 384 eax, // actual number of arguments
385 ebx, // expected number of arguments 385 ebx, // expected number of arguments
386 }; 386 };
387 data->InitializePlatformSpecific(arraysize(registers), registers); 387 data->InitializePlatformSpecific(arraysize(registers), registers);
388 } 388 }
389 389
390 390 void ApiCallbackDescriptorBase::InitializePlatformSpecific(
391 void ApiFunctionDescriptor::InitializePlatformSpecific(
392 CallInterfaceDescriptorData* data) { 391 CallInterfaceDescriptorData* data) {
393 Register registers[] = { 392 Register registers[] = {
394 edi, // callee 393 edi, // callee
395 ebx, // call_data
396 ecx, // holder
397 edx, // api_function_address
398 eax, // actual number of arguments
399 };
400 data->InitializePlatformSpecific(arraysize(registers), registers);
401 }
402
403
404 void ApiAccessorDescriptor::InitializePlatformSpecific(
405 CallInterfaceDescriptorData* data) {
406 Register registers[] = {
407 edi, // callee
408 ebx, // call_data 394 ebx, // call_data
409 ecx, // holder 395 ecx, // holder
410 edx, // api_function_address 396 edx, // api_function_address
411 }; 397 };
412 data->InitializePlatformSpecific(arraysize(registers), registers); 398 data->InitializePlatformSpecific(arraysize(registers), registers);
413 } 399 }
414 400
415 void InterpreterDispatchDescriptor::InitializePlatformSpecific( 401 void InterpreterDispatchDescriptor::InitializePlatformSpecific(
416 CallInterfaceDescriptorData* data) { 402 CallInterfaceDescriptorData* data) {
417 Register registers[] = { 403 Register registers[] = {
(...skipping 30 matching lines...) Expand all
448 ecx, // address of first argument (argv) 434 ecx, // address of first argument (argv)
449 ebx // the runtime function to call 435 ebx // the runtime function to call
450 }; 436 };
451 data->InitializePlatformSpecific(arraysize(registers), registers); 437 data->InitializePlatformSpecific(arraysize(registers), registers);
452 } 438 }
453 439
454 } // namespace internal 440 } // namespace internal
455 } // namespace v8 441 } // namespace v8
456 442
457 #endif // V8_TARGET_ARCH_X87 443 #endif // V8_TARGET_ARCH_X87
OLDNEW
« src/compiler/fast-accessor-assembler.cc ('K') | « src/x87/code-stubs-x87.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698