Index: src/compiler/machine-graph-verifier.cc |
diff --git a/src/compiler/machine-graph-verifier.cc b/src/compiler/machine-graph-verifier.cc |
index a377c572084dfbb5c0e36cccc67998e8a6207e64..d3df4e509a045d6519b18b6943f63ad881b92366 100644 |
--- a/src/compiler/machine-graph-verifier.cc |
+++ b/src/compiler/machine-graph-verifier.cc |
@@ -148,6 +148,10 @@ class MachineRepresentationInferrer { |
representation_vector_[node->id()] = |
PromoteRepresentation(AtomicStoreRepresentationOf(node->op())); |
break; |
+ case IrOpcode::kAtomicExchange: |
+ representation_vector_[node->id()] = PromoteRepresentation( |
+ AtomicExchangeRepresentationOf(node->op()).representation()); |
+ break; |
case IrOpcode::kStore: |
case IrOpcode::kProtectedStore: |
representation_vector_[node->id()] = PromoteRepresentation( |
@@ -438,21 +442,8 @@ class MachineRepresentationChecker { |
node, 1, MachineType::PointerRepresentation()); |
break; |
case IrOpcode::kStore: |
- CheckValueInputIsTaggedOrPointer(node, 0); |
- CheckValueInputRepresentationIs( |
- node, 1, MachineType::PointerRepresentation()); |
- switch (inferrer_->GetRepresentation(node)) { |
- case MachineRepresentation::kTagged: |
- case MachineRepresentation::kTaggedPointer: |
- case MachineRepresentation::kTaggedSigned: |
- CheckValueInputIsTagged(node, 2); |
- break; |
- default: |
- CheckValueInputRepresentationIs( |
- node, 2, inferrer_->GetRepresentation(node)); |
- } |
- break; |
case IrOpcode::kAtomicStore: |
+ case IrOpcode::kAtomicExchange: |
CheckValueInputIsTaggedOrPointer(node, 0); |
CheckValueInputRepresentationIs( |
node, 1, MachineType::PointerRepresentation()); |