From 4d97a84bce204f4f640145c0b0fa8cf5ccf397b0 Mon Sep 17 00:00:00 2001 From: Sanjar Ahmadov Date: Sun, 2 May 2021 09:39:20 -0400 Subject: [PATCH] cleanup --- src/main/java/chocopy/pa3/CodeGenImpl.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/main/java/chocopy/pa3/CodeGenImpl.java b/src/main/java/chocopy/pa3/CodeGenImpl.java index a68cd68..a9e384f 100644 --- a/src/main/java/chocopy/pa3/CodeGenImpl.java +++ b/src/main/java/chocopy/pa3/CodeGenImpl.java @@ -363,6 +363,9 @@ public class CodeGenImpl extends CodeGenBase int slotNum = argNum + 1; // We have extra slot for static link Expr expr = args.get(i); expr.dispatch(this); + // FIXME: Box primitives here + + // All expressions should save their end result in A0 // So, once expr is evaluated add value inside A0 onto stack as an argument backend.emitSW(A0, SP, -wordSize*slotNum, "Push argument " + argNum + " from left"); @@ -689,13 +692,7 @@ public class CodeGenImpl extends CodeGenBase public Register analyze(IntegerLiteral node) { backend.emitLW(T6, FP, 0, "Inside IntegerLiteral: " + node.value); backend.emitLI(A0, node.value, "Load integer literal " + node.value); - backend.emitJAL(makeIntLabel, "Box integer"); -// System.out.println("+++ Inside IntegerLiteral"); -// backend.emitLA(A0, new Label("$int$prototype"), "Load prototype"); -// backend.emitJAL(new Label("ra, alloc"), ""); -// backend.emitLI(T0, node.value, "Load integer " + node.value); -// backend.emitSW(T0, A0, "@.__int__", null); - + backend.emitJAL(makeIntLabel, "Box integer"); return A0; }