diff options
author | Iru Cai <mytbk920423@gmail.com> | 2014-10-30 19:43:08 +0800 |
---|---|---|
committer | Iru Cai <mytbk920423@gmail.com> | 2014-10-30 19:43:08 +0800 |
commit | 68226f14425002190eaf91eb0d7b8e2fb4db378c (patch) | |
tree | 0111f284202de9b9405ff544d6740775357aa0d5 | |
parent | 7fda86677b7f95618660c0bddc65e64bc3736a26 (diff) | |
download | minijava-68226f14425002190eaf91eb0d7b8e2fb4db378c.tar.xz |
fix arrlen expression
-rw-r--r-- | src/minijava/visitor/GenPigletVisitor.java | 5 |
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"); |