summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2014-10-30 19:43:08 +0800
committerIru Cai <mytbk920423@gmail.com>2014-10-30 19:43:08 +0800
commit68226f14425002190eaf91eb0d7b8e2fb4db378c (patch)
tree0111f284202de9b9405ff544d6740775357aa0d5
parent7fda86677b7f95618660c0bddc65e64bc3736a26 (diff)
downloadminijava-68226f14425002190eaf91eb0d7b8e2fb4db378c.tar.xz
fix arrlen expression
-rw-r--r--src/minijava/visitor/GenPigletVisitor.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/minijava/visitor/GenPigletVisitor.java b/src/minijava/visitor/GenPigletVisitor.java
index 5241436..ff21266 100644
--- a/src/minijava/visitor/GenPigletVisitor.java
+++ b/src/minijava/visitor/GenPigletVisitor.java
@@ -515,7 +515,8 @@ public class GenPigletVisitor extends GJDepthFirst<MType, MType> {
String tmp_arr = PigletTemp.newTmp();
System.out.print("HLOAD " + tmp_arr + " ");
n.f0.accept(this, argu);
- System.out.println("\nRETURN " + tmp_arr);
+ System.out.println(" 0");
+ System.out.println("RETURN " + tmp_arr);
System.out.println("END");
return null;
}
@@ -672,7 +673,7 @@ public class GenPigletVisitor extends GJDepthFirst<MType, MType> {
n.f3.accept(this, argu);
// the first element of the array stores the length
// the rest store the elements
- System.out.println("MOVE " + tmp_arr + " HALLOCATE TIMES 4 PLUS 1 " + tmp_len);
+ System.out.println("\nMOVE " + tmp_arr + " HALLOCATE TIMES 4 PLUS 1 " + tmp_len);
System.out.println("HSTORE " + tmp_arr + " 0 " + tmp_len);
System.out.println("RETURN " + tmp_arr);
System.out.println("END");