Index: src/compiler/instruction-selector.cc |
diff --git a/src/compiler/instruction-selector.cc b/src/compiler/instruction-selector.cc |
index 91900be25c30dabec502028de1401680631509ae..ec78a4daf6d2b5406c84b93985f337b9f1f12939 100644 |
--- a/src/compiler/instruction-selector.cc |
+++ b/src/compiler/instruction-selector.cc |
@@ -705,6 +705,7 @@ void InstructionSelector::VisitBlock(BasicBlock* block) { |
int effect_level = 0; |
for (Node* const node : *block) { |
if (node->opcode() == IrOpcode::kStore || |
+ node->opcode() == IrOpcode::kUnalignedStore || |
node->opcode() == IrOpcode::kCheckedStore || |
node->opcode() == IrOpcode::kCall) { |
++effect_level; |
@@ -1142,6 +1143,14 @@ void InstructionSelector::VisitNode(Node* node) { |
return VisitLoadFramePointer(node); |
case IrOpcode::kLoadParentFramePointer: |
return VisitLoadParentFramePointer(node); |
+ case IrOpcode::kUnalignedLoad: { |
+ UnalignedLoadRepresentation type = |
+ UnalignedLoadRepresentationOf(node->op()); |
+ MarkAsRepresentation(type.representation(), node); |
+ return VisitUnalignedLoad(node); |
+ } |
+ case IrOpcode::kUnalignedStore: |
+ return VisitUnalignedStore(node); |
case IrOpcode::kCheckedLoad: { |
MachineRepresentation rep = |
CheckedLoadRepresentationOf(node->op()).representation(); |