diff options
Diffstat (limited to 'src/spiglet/spiglet2kanga/SpgStmt.java')
-rw-r--r-- | src/spiglet/spiglet2kanga/SpgStmt.java | 25 |
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; + } + } } |