Index: src/ppc/code-stubs-ppc.cc |
diff --git a/src/ppc/code-stubs-ppc.cc b/src/ppc/code-stubs-ppc.cc |
index 00d8c70fbaeaf9a0cd763e6a01f3f4c7bec3feea..bcdc0236c3e975700c32ef77d402b72d0b3d46a5 100644 |
--- a/src/ppc/code-stubs-ppc.cc |
+++ b/src/ppc/code-stubs-ppc.cc |
@@ -5635,7 +5635,11 @@ void CallApiCallbackStub::Generate(MacroAssembler* masm) { |
STATIC_ASSERT(FCA::kReturnValueDefaultValueIndex == 2); |
STATIC_ASSERT(FCA::kIsolateIndex == 1); |
STATIC_ASSERT(FCA::kHolderIndex == 0); |
- STATIC_ASSERT(FCA::kArgsLength == 7); |
+ STATIC_ASSERT(FCA::kNewTargetIndex == 7); |
+ STATIC_ASSERT(FCA::kArgsLength == 8); |
+ |
+ // new target |
+ __ PushRoot(Heap::kUndefinedValueRootIndex); |
// context save |
__ push(context); |
@@ -5693,9 +5697,6 @@ void CallApiCallbackStub::Generate(MacroAssembler* masm) { |
// FunctionCallbackInfo::length_ = argc |
__ li(ip, Operand(argc())); |
__ stw(ip, MemOperand(r3, 2 * kPointerSize)); |
- // FunctionCallbackInfo::is_construct_call_ = 0 |
- __ li(ip, Operand::Zero()); |
- __ stw(ip, MemOperand(r3, 2 * kPointerSize + kIntSize)); |
ExternalReference thunk_ref = |
ExternalReference::invoke_function_callback(masm->isolate()); |
@@ -5712,9 +5713,9 @@ void CallApiCallbackStub::Generate(MacroAssembler* masm) { |
} |
MemOperand return_value_operand(fp, return_value_offset * kPointerSize); |
int stack_space = 0; |
- MemOperand is_construct_call_operand = |
+ MemOperand length_operand = |
MemOperand(sp, kFunctionCallbackInfoOffset + 2 * kPointerSize + kIntSize); |
MTBrandyberry
2016/04/27 21:39:58
Remove the "+ kIntSize" so this reflects the locat
|
- MemOperand* stack_space_operand = &is_construct_call_operand; |
+ MemOperand* stack_space_operand = &length_operand; |
stack_space = argc() + FCA::kArgsLength + 1; |
stack_space_operand = NULL; |
CallApiFunctionAndReturn(masm, api_function_address, thunk_ref, stack_space, |