| Index: src/compiler/linkage.cc
|
| diff --git a/src/compiler/linkage.cc b/src/compiler/linkage.cc
|
| index bae73df9f499134f8f2514c339521e85920e3137..127ccfbbbdc4082ec12f5bd6b64f39babb51e317 100644
|
| --- a/src/compiler/linkage.cc
|
| +++ b/src/compiler/linkage.cc
|
| @@ -37,7 +37,7 @@ std::ostream& operator<<(std::ostream& os, const CallDescriptor::Kind& k) {
|
| std::ostream& operator<<(std::ostream& os, const CallDescriptor& d) {
|
| // TODO(svenpanne) Output properties etc. and be less cryptic.
|
| return os << d.kind() << ":" << d.debug_name() << ":r" << d.ReturnCount()
|
| - << "j" << d.JSParameterCount() << "i" << d.InputCount() << "f"
|
| + << "s" << d.StackParameterCount() << "i" << d.InputCount() << "f"
|
| << d.FrameStateCount() << "t" << d.SupportsTailCalls();
|
| }
|
|
|
| @@ -156,8 +156,7 @@ CallDescriptor* Linkage::ComputeIncoming(Zone* zone, CompilationInfo* info) {
|
| }
|
|
|
|
|
| -FrameOffset Linkage::GetFrameOffset(int spill_slot, Frame* frame,
|
| - int extra) const {
|
| +FrameOffset Linkage::GetFrameOffset(int spill_slot, Frame* frame) const {
|
| if (frame->GetSpillSlotCount() > 0 || incoming_->IsJSFunctionCall() ||
|
| incoming_->kind() == CallDescriptor::kCallAddress) {
|
| int offset;
|
| @@ -165,12 +164,11 @@ FrameOffset Linkage::GetFrameOffset(int spill_slot, Frame* frame,
|
| if (spill_slot >= 0) {
|
| // Local or spill slot. Skip the frame pointer, function, and
|
| // context in the fixed part of the frame.
|
| - offset =
|
| - -(spill_slot + 1) * kPointerSize - register_save_area_size + extra;
|
| + offset = -(spill_slot + 1) * kPointerSize - register_save_area_size;
|
| } else {
|
| // Incoming parameter. Skip the return address.
|
| offset = -(spill_slot + 1) * kPointerSize + kFPOnStackSize +
|
| - kPCOnStackSize + extra;
|
| + frame->PCOnStackSize();
|
| }
|
| return FrameOffset::FromFramePointer(offset);
|
| } else {
|
| @@ -178,7 +176,7 @@ FrameOffset Linkage::GetFrameOffset(int spill_slot, Frame* frame,
|
| DCHECK(spill_slot < 0); // Must be a parameter.
|
| int register_save_area_size = frame->GetRegisterSaveAreaSize();
|
| int offset = register_save_area_size - (spill_slot + 1) * kPointerSize +
|
| - kPCOnStackSize + extra;
|
| + frame->PCOnStackSize();
|
| return FrameOffset::FromStackPointer(offset);
|
| }
|
| }
|
|
|