| Index: src/compiler/arm/instruction-selector-arm.cc
|
| diff --git a/src/compiler/arm/instruction-selector-arm.cc b/src/compiler/arm/instruction-selector-arm.cc
|
| index fb25c3b4eb41a55da76860feeb700570dd1d116b..64393dd91f4c13f6acdec66e1d5221aa12f3bfa0 100644
|
| --- a/src/compiler/arm/instruction-selector-arm.cc
|
| +++ b/src/compiler/arm/instruction-selector-arm.cc
|
| @@ -5,6 +5,7 @@
|
| #include "src/base/bits.h"
|
| #include "src/compiler/instruction-selector-impl.h"
|
| #include "src/compiler/node-matchers.h"
|
| +#include "src/compiler/node-properties.h"
|
|
|
| namespace v8 {
|
| namespace internal {
|
| @@ -1035,9 +1036,9 @@ void InstructionSelector::VisitCall(Node* node) {
|
|
|
| // TODO(dcarney): might be possible to use claim/poke instead
|
| // Push any stack arguments.
|
| - for (NodeVectorRIter input = buffer.pushed_nodes.rbegin();
|
| - input != buffer.pushed_nodes.rend(); input++) {
|
| - Emit(kArmPush, NULL, g.UseRegister(*input));
|
| + for (auto i = buffer.pushed_nodes.rbegin(); i != buffer.pushed_nodes.rend();
|
| + ++i) {
|
| + Emit(kArmPush, nullptr, g.UseRegister(*i));
|
| }
|
|
|
| // Select the appropriate opcode based on the call type.
|
| @@ -1180,14 +1181,14 @@ void VisitWordCompareZero(InstructionSelector* selector, Node* user,
|
| case IrOpcode::kProjection:
|
| // Check if this is the overflow output projection of an
|
| // <Operation>WithOverflow node.
|
| - if (OpParameter<size_t>(value) == 1u) {
|
| + if (ProjectionIndexOf(value->op()) == 1u) {
|
| // We cannot combine the <Operation>WithOverflow with this branch
|
| // unless the 0th projection (the use of the actual value of the
|
| // <Operation> is either NULL, which means there's no use of the
|
| // actual value, or was already defined, which means it is scheduled
|
| // *AFTER* this branch).
|
| Node* const node = value->InputAt(0);
|
| - Node* const result = node->FindProjection(0);
|
| + Node* const result = NodeProperties::FindProjection(node, 0);
|
| if (!result || selector->IsDefined(result)) {
|
| switch (node->opcode()) {
|
| case IrOpcode::kInt32AddWithOverflow:
|
| @@ -1286,7 +1287,7 @@ void InstructionSelector::VisitUint32LessThanOrEqual(Node* node) {
|
|
|
|
|
| void InstructionSelector::VisitInt32AddWithOverflow(Node* node) {
|
| - if (Node* ovf = node->FindProjection(1)) {
|
| + if (Node* ovf = NodeProperties::FindProjection(node, 1)) {
|
| FlagsContinuation cont(kOverflow, ovf);
|
| return VisitBinop(this, node, kArmAdd, kArmAdd, &cont);
|
| }
|
| @@ -1296,7 +1297,7 @@ void InstructionSelector::VisitInt32AddWithOverflow(Node* node) {
|
|
|
|
|
| void InstructionSelector::VisitInt32SubWithOverflow(Node* node) {
|
| - if (Node* ovf = node->FindProjection(1)) {
|
| + if (Node* ovf = NodeProperties::FindProjection(node, 1)) {
|
| FlagsContinuation cont(kOverflow, ovf);
|
| return VisitBinop(this, node, kArmSub, kArmRsb, &cont);
|
| }
|
|
|