summaryrefslogtreecommitdiff
path: root/src/spiglet/spiglet2kanga/SpgStmt.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/spiglet/spiglet2kanga/SpgStmt.java')
-rw-r--r--src/spiglet/spiglet2kanga/SpgStmt.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/spiglet/spiglet2kanga/SpgStmt.java b/src/spiglet/spiglet2kanga/SpgStmt.java
index 832c489..d5921b9 100644
--- a/src/spiglet/spiglet2kanga/SpgStmt.java
+++ b/src/spiglet/spiglet2kanga/SpgStmt.java
@@ -14,4 +14,29 @@ public class SpgStmt extends SpgSym{
public SpgStmt(StmtType t) {
type = t;
}
+
+ public String toString() {
+ String str="";
+ if (lb!=null) str = lb + " ";
+ switch (type) {
+ case CJUMP:
+ return str + "CJUMP " + tmp1.toString() + " " + jmptarget;
+ case ERROR:
+ return str + "ERROR";
+ case JUMP:
+ return str + "JUMP " + jmptarget;
+ case LOAD:
+ return str + "LD " + tmp1.toString() + " " + tmp2.toString() + " " + imm;
+ case MOVE:
+ return str + "MOVE " + tmp1.toString() + " " + exp.toString();
+ case NOOP:
+ return str + "NOOP";
+ case PRINT:
+ return str + "PRINT " + exp.toString();
+ case STORE:
+ return str + "STORE " + tmp1.toString() + " " + imm + " " + tmp2.toString();
+ default:
+ return null;
+ }
+ }
}