Index: src/compiler/mips64/instruction-selector-mips64.cc |
diff --git a/src/compiler/mips64/instruction-selector-mips64.cc b/src/compiler/mips64/instruction-selector-mips64.cc |
index f6c30cd3d5fe71bfc00c420d5877077938d2ee77..6396df07e67fc655a8c2fcf3863cc526f8e6c213 100644 |
--- a/src/compiler/mips64/instruction-selector-mips64.cc |
+++ b/src/compiler/mips64/instruction-selector-mips64.cc |
@@ -352,6 +352,17 @@ static void VisitBinop(InstructionSelector* selector, Node* node, |
VisitBinop(selector, node, opcode, false, kArchNop); |
} |
+void InstructionSelector::VisitStackSlot(Node* node) { |
+ StackSlotRepresentation rep = StackSlotRepresentationOf(node->op()); |
+ int alignment = rep.alignment(); |
+ int slot = frame_->AllocateSpillSlot(rep.size(), alignment); |
+ OperandGenerator g(this); |
+ |
+ Emit(kArchStackSlot, g.DefineAsRegister(node), |
+ sequence()->AddImmediate(Constant(slot)), |
+ sequence()->AddImmediate(Constant(alignment)), 0, nullptr); |
+} |
+ |
void EmitLoad(InstructionSelector* selector, Node* node, InstructionCode opcode, |
Node* output = nullptr) { |
Mips64OperandGenerator g(selector); |