| Index: src/compiler/linkage.cc
|
| diff --git a/src/compiler/linkage.cc b/src/compiler/linkage.cc
|
| index 9d64cebbf7da9c9025a03f815b8ad7eda25bb238..e211d4ecc9644a04f8808fb407584e3dd791bc1e 100644
|
| --- a/src/compiler/linkage.cc
|
| +++ b/src/compiler/linkage.cc
|
| @@ -323,8 +323,9 @@ CallDescriptor* Linkage::GetJSCallDescriptor(Zone* zone, bool is_osr,
|
| MachineType target_type = MachineType::AnyTagged();
|
| // When entering into an OSR function from unoptimized code the JSFunction
|
| // is not in a register, but it is on the stack in the marker spill slot.
|
| - LinkageLocation target_loc = is_osr ? LinkageLocation::ForSavedCallerMarker()
|
| - : regloc(kJSFunctionRegister);
|
| + LinkageLocation target_loc = is_osr
|
| + ? LinkageLocation::ForSavedCallerFunction()
|
| + : regloc(kJSFunctionRegister);
|
| return new (zone) CallDescriptor( // --
|
| CallDescriptor::kCallJSFunction, // kind
|
| target_type, // target MachineType
|
| @@ -436,7 +437,7 @@ LinkageLocation Linkage::GetOsrValueLocation(int index) const {
|
|
|
|
|
| bool Linkage::ParameterHasSecondaryLocation(int index) const {
|
| - if (incoming_->kind() != CallDescriptor::kCallJSFunction) return false;
|
| + if (!incoming_->IsJSFunctionCall()) return false;
|
| LinkageLocation loc = GetParameterLocation(index);
|
| return (loc == regloc(kJSFunctionRegister) ||
|
| loc == regloc(kContextRegister));
|
|
|