| Index: src/compiler/verifier.cc
|
| diff --git a/src/compiler/verifier.cc b/src/compiler/verifier.cc
|
| index a0f68b09cf2f98bb7366126e0ee98ac65caa1442..31472ead737f4c62145a58717be4f7702280bb60 100644
|
| --- a/src/compiler/verifier.cc
|
| +++ b/src/compiler/verifier.cc
|
| @@ -309,7 +309,7 @@ void Verifier::Visitor::Check(Node* node) {
|
| CHECK_EQ(IrOpcode::kStart,
|
| NodeProperties::GetValueInput(node, 0)->opcode());
|
| // Parameter has an input that produces enough values.
|
| - int index = OpParameter<int>(node);
|
| + int index = ParameterIndexOf(node->op());
|
| Node* input = NodeProperties::GetValueInput(node, 0);
|
| // Currently, parameter indices start at -1 instead of 0.
|
| CHECK_GT(input->op()->ValueOutputCount(), index + 1);
|
| @@ -718,6 +718,15 @@ void Verifier::Visitor::Check(Node* node) {
|
| // CheckUpperIs(node, to));
|
| break;
|
| }
|
| + case IrOpcode::kCheckMaps: {
|
| + // CheckMaps only produces control.
|
| + CheckNotTyped(node);
|
| + int32_t map_count = OpParameter<int32_t>(node);
|
| + // expect [obj, map*, framestate, effect, control]
|
| + CHECK_EQ(map_count + 4, node->InputCount());
|
| + CHECK_EQ(IrOpcode::kFrameState, node->InputAt(1 + map_count)->opcode());
|
| + break;
|
| + }
|
|
|
| case IrOpcode::kLoadField:
|
| // Object -> fieldtype
|
|
|