| Index: src/ppc/interface-descriptors-ppc.cc
|
| diff --git a/src/ppc/interface-descriptors-ppc.cc b/src/ppc/interface-descriptors-ppc.cc
|
| index 693f341e997125a0d34748fecf8be2d56c96cf7d..f82d85ded01dd39752ee8b0497798c3220bf5e75 100644
|
| --- a/src/ppc/interface-descriptors-ppc.cc
|
| +++ b/src/ppc/interface-descriptors-ppc.cc
|
| @@ -98,7 +98,19 @@ void FastCloneShallowObjectDescriptor::Initialize(
|
| void CreateAllocationSiteDescriptor::Initialize(
|
| CallInterfaceDescriptorData* data) {
|
| Register registers[] = {cp, r5, r6};
|
| - data->Initialize(arraysize(registers), registers, NULL);
|
| + Representation representations[] = {Representation::Tagged(),
|
| + Representation::Tagged(),
|
| + Representation::Smi()};
|
| + data->Initialize(arraysize(registers), registers, representations);
|
| +}
|
| +
|
| +
|
| +void CreateWeakCellDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| + Register registers[] = {cp, r5, r6, r4};
|
| + Representation representations[] = {
|
| + Representation::Tagged(), Representation::Tagged(), Representation::Smi(),
|
| + Representation::Tagged()};
|
| + data->Initialize(arraysize(registers), registers, representations);
|
| }
|
|
|
|
|
| @@ -125,6 +137,16 @@ void CallFunctionWithFeedbackDescriptor::Initialize(
|
| }
|
|
|
|
|
| +void CallFunctionWithFeedbackAndVectorDescriptor::Initialize(
|
| + CallInterfaceDescriptorData* data) {
|
| + Register registers[] = {cp, r4, r6, r5};
|
| + Representation representations[] = {
|
| + Representation::Tagged(), Representation::Tagged(), Representation::Smi(),
|
| + Representation::Tagged()};
|
| + data->Initialize(arraysize(registers), registers, representations);
|
| +}
|
| +
|
| +
|
| void CallConstructDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| // r3 : number of arguments
|
| // r4 : the function to call
|
| @@ -152,6 +174,15 @@ void TransitionElementsKindDescriptor::Initialize(
|
| }
|
|
|
|
|
| +void AllocateHeapNumberDescriptor::Initialize(
|
| + CallInterfaceDescriptorData* data) {
|
| + // register state
|
| + // cp -- context
|
| + Register registers[] = {cp};
|
| + data->Initialize(arraysize(registers), registers, nullptr);
|
| +}
|
| +
|
| +
|
| void ArrayConstructorConstantArgCountDescriptor::Initialize(
|
| CallInterfaceDescriptorData* data) {
|
| // register state
|
| @@ -290,6 +321,27 @@ void ApiFunctionDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| r7, // call_data
|
| r5, // holder
|
| r4, // api_function_address
|
| + r6, // actual number of arguments
|
| + };
|
| + Representation representations[] = {
|
| + Representation::Tagged(), // context
|
| + Representation::Tagged(), // callee
|
| + Representation::Tagged(), // call_data
|
| + Representation::Tagged(), // holder
|
| + Representation::External(), // api_function_address
|
| + Representation::Integer32(), // actual number of arguments
|
| + };
|
| + data->Initialize(arraysize(registers), registers, representations);
|
| +}
|
| +
|
| +
|
| +void ApiAccessorDescriptor::Initialize(CallInterfaceDescriptorData* data) {
|
| + Register registers[] = {
|
| + cp, // context
|
| + r3, // callee
|
| + r7, // call_data
|
| + r5, // holder
|
| + r4, // api_function_address
|
| };
|
| Representation representations[] = {
|
| Representation::Tagged(), // context
|
|
|