Index: src/compiler/instruction-selector.cc |
diff --git a/src/compiler/instruction-selector.cc b/src/compiler/instruction-selector.cc |
index ae9d4c6529e105215eb3c7b64b09c744c69a9673..1c1f3fafd7f11bbe659c093226e3231ed100e19c 100644 |
--- a/src/compiler/instruction-selector.cc |
+++ b/src/compiler/instruction-selector.cc |
@@ -761,6 +761,8 @@ void InstructionSelector::VisitNode(Node* node) { |
return MarkAsFloat64(node), VisitFloat64InsertHighWord32(node); |
case IrOpcode::kLoadStackPointer: |
return VisitLoadStackPointer(node); |
+ case IrOpcode::kLoadFramePointer: |
+ return VisitLoadFramePointer(node); |
case IrOpcode::kCheckedLoad: { |
MachineType rep = OpParameter<MachineType>(node); |
MarkAsRepresentation(rep, node); |
@@ -791,6 +793,12 @@ void InstructionSelector::VisitLoadStackPointer(Node* node) { |
} |
+void InstructionSelector::VisitLoadFramePointer(Node* node) { |
+ OperandGenerator g(this); |
+ Emit(kArchFramePointer, g.DefineAsRegister(node)); |
+} |
+ |
+ |
void InstructionSelector::EmitTableSwitch(const SwitchInfo& sw, |
InstructionOperand& index_operand) { |
OperandGenerator g(this); |