| Index: src/compiler/linkage.cc
|
| diff --git a/src/compiler/linkage.cc b/src/compiler/linkage.cc
|
| index 2c6d2a8ae41430da5d01ed82aea4cb35ffcadcfe..e6ef59898f9360eec3e3a491fc2bed695580c292 100644
|
| --- a/src/compiler/linkage.cc
|
| +++ b/src/compiler/linkage.cc
|
| @@ -392,19 +392,27 @@ CallDescriptor* Linkage::GetJSCallDescriptor(Zone* zone, bool is_osr,
|
|
|
|
|
| CallDescriptor* Linkage::GetInterpreterDispatchDescriptor(Zone* zone) {
|
| - MachineSignature::Builder types(zone, 0, 3);
|
| - LocationSignature::Builder locations(zone, 0, 3);
|
| + MachineSignature::Builder types(zone, 0, 5);
|
| + LocationSignature::Builder locations(zone, 0, 5);
|
|
|
| // Add registers for fixed parameters passed via interpreter dispatch.
|
| - STATIC_ASSERT(0 == Linkage::kInterpreterBytecodeOffsetParameter);
|
| + STATIC_ASSERT(0 == Linkage::kInterpreterAccumulatorParameter);
|
| + types.AddParam(kMachAnyTagged);
|
| + locations.AddParam(regloc(kInterpreterAccumulatorRegister));
|
| +
|
| + STATIC_ASSERT(1 == Linkage::kInterpreterRegisterFileParameter);
|
| + types.AddParam(kMachPtr);
|
| + locations.AddParam(regloc(kInterpreterRegisterFileRegister));
|
| +
|
| + STATIC_ASSERT(2 == Linkage::kInterpreterBytecodeOffsetParameter);
|
| types.AddParam(kMachIntPtr);
|
| locations.AddParam(regloc(kInterpreterBytecodeOffsetRegister));
|
|
|
| - STATIC_ASSERT(1 == Linkage::kInterpreterBytecodeArrayParameter);
|
| + STATIC_ASSERT(3 == Linkage::kInterpreterBytecodeArrayParameter);
|
| types.AddParam(kMachAnyTagged);
|
| locations.AddParam(regloc(kInterpreterBytecodeArrayRegister));
|
|
|
| - STATIC_ASSERT(2 == Linkage::kInterpreterDispatchTableParameter);
|
| + STATIC_ASSERT(4 == Linkage::kInterpreterDispatchTableParameter);
|
| types.AddParam(kMachPtr);
|
| locations.AddParam(regloc(kInterpreterDispatchTableRegister));
|
|
|
|
|