diff options
author | bd-912 <bdunahu@colostate.edu> | 2024-05-07 18:37:10 -0600 |
---|---|---|
committer | bd-912 <bdunahu@colostate.edu> | 2024-05-07 18:37:10 -0600 |
commit | 9a025aeaeb4104d6a66baaa575c669231d5d76bc (patch) | |
tree | cbab00685ecb99dad37f89d207c38c0991523324 | |
parent | 9f24d0511a89379bb3326ee1b62eeaabe589571b (diff) |
Fix indexing for MemRead/MemWrite in Condense, almost all tests pass
-rw-r--r-- | condense/CondenseVisitor.java | 22 | ||||
-rw-r--r-- | output/BinaryTree.s | 196 | ||||
-rw-r--r-- | output/BubbleSort.s | 50 | ||||
-rw-r--r-- | output/LinearSearch.s | 34 | ||||
-rw-r--r-- | output/LinkedList.s | 144 | ||||
-rw-r--r-- | output/MoreThan4.s | 2 | ||||
-rw-r--r-- | output/QuickSort.s | 70 | ||||
-rw-r--r-- | output/TreeVisitor.s | 238 | ||||
-rw-r--r-- | output/ex33.s | 4 | ||||
-rw-r--r-- | output/ex34.s | 4 | ||||
-rw-r--r-- | output/ex40.s | 4 | ||||
-rw-r--r-- | output/ex42.s | 10 | ||||
-rw-r--r-- | output/ex44.s | 8 | ||||
-rw-r--r-- | output/ex45.s | 4 | ||||
-rw-r--r-- | output/ex46.s | 22 | ||||
-rw-r--r-- | output/ex47.s | 10 | ||||
-rw-r--r-- | output/ex48.s | 8 | ||||
-rw-r--r-- | output/ex49.s | 6 | ||||
-rw-r--r-- | output/ex50.s | 12 | ||||
-rw-r--r-- | output/ex51.s | 20 | ||||
-rw-r--r-- | output/ex52.s | 28 | ||||
-rw-r--r-- | output/ex53.s | 8 |
22 files changed, 457 insertions, 447 deletions
diff --git a/condense/CondenseVisitor.java b/condense/CondenseVisitor.java index fd337d9..5713ded 100644 --- a/condense/CondenseVisitor.java +++ b/condense/CondenseVisitor.java @@ -180,9 +180,9 @@ public class CondenseVisitor extends VInstr.Visitor<RuntimeException>{ else if (op.equals("MulS")) ret += " mul"; else if (op.equals("Eq")) - ret += "NULL"; // fixme + ret += " and"; else if (op.equals("Lt")) - ; + ret += " slt"; else if (op.equals("LtS")) ret += " slt"; else if (op.equals("PrintIntS")) { @@ -223,12 +223,18 @@ public class CondenseVisitor extends VInstr.Visitor<RuntimeException>{ n.sourcePos.toString())); /////////////////////////////////////////////////////////////// String source = n.source.toString(); + if (this.isNumeric(source)) { + this.addMIPS(String.format(" li $t9 %s", + source)); + source = "$t9"; + } String dest; if (n.dest instanceof VMemRef.Stack) dest = this.curr.get(((VMemRef.Stack) n.dest)); else - dest = String.format("0(%s)", + dest = String.format("%d(%s)", + ((VMemRef.Global) n.dest).byteOffset, ((VMemRef.Global) n.dest).base.toString()); if (source.contains(":")) { this.addMIPS(String.format(" la $t9 %s", @@ -252,11 +258,15 @@ public class CondenseVisitor extends VInstr.Visitor<RuntimeException>{ String dest = n.dest.toString(); String source; - if (n.source instanceof VMemRef.Stack) + if (n.source instanceof VMemRef.Stack) { + MinimalLogger.info("Loading from stack..."); source = this.curr.get(((VMemRef.Stack) n.source)); - else - source = String.format("0(%s)", + } else { + MinimalLogger.info("Loading a const..."); + source = String.format("%d(%s)", + ((VMemRef.Global) n.source).byteOffset, ((VMemRef.Global) n.source).base.toString()); + } this.addMIPS(String.format(" lw %s %s", dest, source)); diff --git a/output/BinaryTree.s b/output/BinaryTree.s index aa95920..f65a6b1 100644 --- a/output/BinaryTree.s +++ b/output/BinaryTree.s @@ -128,7 +128,7 @@ BT_Start: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s5 0($s4) + lw $s5 72($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -154,7 +154,7 @@ BT_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 48($s5) li $s5 8 move $s3 $s5 sw $t3 -44($fp) @@ -178,7 +178,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 72($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -199,7 +199,7 @@ BT_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 48($s5) li $s5 24 move $s4 $s5 sw $t3 -44($fp) @@ -223,7 +223,7 @@ BT_Start: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s5 0($s4) + lw $s5 48($s4) li $s4 4 move $s3 $s4 sw $t3 -44($fp) @@ -247,7 +247,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s4 0($s3) + lw $s4 48($s3) li $s3 12 move $s5 $s3 sw $t3 -44($fp) @@ -271,7 +271,7 @@ BT_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 48($s5) li $s5 20 move $s4 $s5 sw $t3 -44($fp) @@ -295,7 +295,7 @@ BT_Start: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s5 0($s4) + lw $s5 48($s4) li $s4 28 move $s3 $s4 sw $t3 -44($fp) @@ -319,7 +319,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s4 0($s3) + lw $s4 48($s3) li $s3 14 move $s5 $s3 sw $t3 -44($fp) @@ -343,7 +343,7 @@ BT_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 72($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -364,7 +364,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 68($s3) li $s3 24 move $s4 $s3 sw $t3 -44($fp) @@ -390,7 +390,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s4 0($s3) + lw $s4 68($s3) li $s3 12 move $s5 $s3 sw $t3 -44($fp) @@ -416,7 +416,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 68($s3) li $s3 16 move $s4 $s3 sw $t3 -44($fp) @@ -442,7 +442,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s4 0($s3) + lw $s4 68($s3) li $s3 50 move $s5 $s3 sw $t3 -44($fp) @@ -468,7 +468,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 68($s3) li $s3 12 move $s4 $s3 sw $t3 -44($fp) @@ -494,7 +494,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s4 0($s3) + lw $s4 52($s3) li $s3 12 move $s5 $s3 sw $t3 -44($fp) @@ -518,7 +518,7 @@ BT_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 72($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -539,7 +539,7 @@ BT_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s6 0($s3) + lw $s6 68($s3) li $s3 12 move $s5 $s3 sw $t3 -44($fp) @@ -595,13 +595,13 @@ Tree_Init: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 88($s5) li $s6 0 move $s7 $s6 - sw $s7 0($s5) + sw $s7 92($s5) li $s7 0 move $s6 $s7 - sw $s6 0($s5) + sw $s6 96($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -635,7 +635,7 @@ Tree_SetRight: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 84($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -669,7 +669,7 @@ Tree_SetLeft: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 80($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -700,7 +700,7 @@ Tree_GetRight: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 84($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -730,7 +730,7 @@ Tree_GetLeft: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 80($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -760,7 +760,7 @@ Tree_GetKey: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 88($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -793,7 +793,7 @@ Tree_SetKey: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 88($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -824,7 +824,7 @@ Tree_GetHas_Right: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 96($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -854,7 +854,7 @@ Tree_GetHas_Left: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 92($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -887,7 +887,7 @@ Tree_SetHas_Left: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 92($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -921,7 +921,7 @@ Tree_SetHas_Right: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 96($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -988,7 +988,7 @@ if202_else: move $s6 $s2 move $a0 $s6 li $t9 0 -NULL $s2 $a0 $t9 + and $s2 $a0 $t9 move $s6 $s2 move $s2 $s6 move $s6 $s2 @@ -1098,7 +1098,7 @@ while240_body: sw $t0 -220($fp) lw $t0 -216($fp) lw $t1 -220($fp) - lw $t0 0($t1) + lw $t0 20($t1) sw $t1 -220($fp) sw $t0 -216($fp) sw $t3 -44($fp) @@ -1174,7 +1174,7 @@ if249_body: sw $t0 -132($fp) lw $t0 -148($fp) lw $t1 -132($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -132($fp) sw $t0 -148($fp) sw $t3 -44($fp) @@ -1219,7 +1219,7 @@ if254_body: sw $t0 -96($fp) lw $t0 -88($fp) lw $t1 -96($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -96($fp) sw $t0 -88($fp) sw $t3 -44($fp) @@ -1271,7 +1271,7 @@ if254_else: sw $t0 -80($fp) lw $t0 -248($fp) lw $t1 -80($fp) - lw $t0 0($t1) + lw $t0 36($t1) sw $t1 -80($fp) sw $t0 -248($fp) lw $t0 -256($fp) @@ -1325,7 +1325,7 @@ if254_else: sw $t0 -280($fp) lw $t0 -264($fp) lw $t1 -280($fp) - lw $t0 0($t1) + lw $t0 8($t1) sw $t1 -280($fp) sw $t0 -264($fp) lw $t0 -260($fp) @@ -1382,7 +1382,7 @@ if249_else: sw $t0 -200($fp) lw $t0 -232($fp) lw $t1 -200($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -200($fp) sw $t0 -232($fp) sw $t3 -44($fp) @@ -1423,7 +1423,7 @@ if281_body: move $t3 $s2 move $s2 $t3 lw $t3 0($s2) - lw $t4 0($t3) + lw $t4 12($t3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1465,7 +1465,7 @@ if281_else: sw $t0 -156($fp) lw $t0 -180($fp) lw $t1 -156($fp) - lw $t0 0($t1) + lw $t0 40($t1) sw $t1 -156($fp) sw $t0 -180($fp) lw $t0 -172($fp) @@ -1512,7 +1512,7 @@ if281_else: move $s2 $s0 lw $s1 0($s2) lw $t0 -292($fp) - lw $t0 0($s1) + lw $t0 4($s1) sw $t0 -292($fp) move $t6 $s4 lw $t0 -100($fp) @@ -1627,7 +1627,7 @@ while321_body: sw $t0 -296($fp) lw $t0 -276($fp) lw $t1 -296($fp) - lw $t0 0($t1) + lw $t0 20($t1) sw $t1 -296($fp) sw $t0 -276($fp) sw $t3 -44($fp) @@ -1703,7 +1703,7 @@ if330_body: sw $t0 -160($fp) lw $t0 -156($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -160($fp) sw $t0 -156($fp) sw $t3 -44($fp) @@ -1760,7 +1760,7 @@ if335_body: sw $t0 -388($fp) lw $t5 0($s5) lw $t0 -108($fp) - lw $t0 0($t5) + lw $t0 16($t5) sw $t0 -108($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -1841,7 +1841,7 @@ if350_body: move $s2 $s5 move $s5 $s2 lw $s2 0($s5) - lw $t3 0($s2) + lw $t3 28($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1867,7 +1867,7 @@ if355_body: move $t3 $s5 move $s5 $t3 lw $t3 0($s5) - lw $s2 0($t3) + lw $s2 12($t3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1921,7 +1921,7 @@ if370_body: sw $t0 -244($fp) lw $t0 -240($fp) lw $t1 -244($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -244($fp) sw $t0 -240($fp) sw $t3 -44($fp) @@ -1954,7 +1954,7 @@ if370_body: lw $t1 -260($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -260($fp) sw $t0 -248($fp) lw $t0 -256($fp) @@ -1983,7 +1983,7 @@ NULL $t0 $a0 $t9 sw $t0 -196($fp) lw $t0 -192($fp) lw $t1 -196($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -196($fp) sw $t0 -192($fp) sw $t3 -44($fp) @@ -2016,7 +2016,7 @@ NULL $t0 $a0 $t9 lw $t1 -204($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -204($fp) sw $t0 -252($fp) lw $t0 -200($fp) @@ -2038,14 +2038,14 @@ NULL $t0 $a0 $t9 lw $t1 -264($fp) li $a0 1 move $t9 $t1 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -264($fp) sw $t0 -228($fp) lw $t0 -224($fp) lw $t1 -216($fp) li $a0 1 move $t9 $t1 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -216($fp) sw $t0 -224($fp) lw $t0 -172($fp) @@ -2053,7 +2053,7 @@ NULL $t0 $a0 $t9 lw $t2 -224($fp) move $a0 $t1 move $t9 $t2 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t2 -224($fp) sw $t1 -228($fp) sw $t0 -172($fp) @@ -2108,7 +2108,7 @@ if373_else: sw $t0 -120($fp) lw $t0 -364($fp) lw $t1 -364($fp) - lw $t0 0($t1) + lw $t0 56($t1) sw $t1 -364($fp) sw $t0 -364($fp) sw $t3 -44($fp) @@ -2169,7 +2169,7 @@ if370_else: sw $t0 -380($fp) lw $t0 -72($fp) lw $t1 -72($fp) - lw $t0 0($t1) + lw $t0 56($t1) sw $t1 -72($fp) sw $t0 -72($fp) sw $t3 -44($fp) @@ -2282,7 +2282,7 @@ Tree_Remove: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 32($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2308,7 +2308,7 @@ if423_body: move $s2 $s3 move $s3 $s7 move $s1 $s3 - lw $s4 0($s4) + lw $s4 64($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2333,7 +2333,7 @@ if423_else: move $s1 $s7 move $s7 $s1 lw $s1 0($s7) - lw $s2 0($s1) + lw $s2 28($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2359,7 +2359,7 @@ if437_body: move $s4 $s2 move $s2 $s7 move $s0 $s2 - lw $s1 0($s1) + lw $s1 60($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2384,7 +2384,7 @@ if437_else: move $s0 $s7 move $s7 $s0 lw $s0 0($s7) - lw $s2 0($s0) + lw $s2 20($s0) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2405,7 +2405,7 @@ if437_else: move $s2 $s6 move $s6 $s2 lw $s2 0($s6) - lw $s7 0($s2) + lw $s7 16($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2425,7 +2425,7 @@ if437_else: move $s2 $s7 move $s7 $s2 lw $s2 0($s7) - lw $s4 0($s2) + lw $s4 20($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2449,7 +2449,7 @@ if437_else: move $s0 $s7 move $s7 $s2 move $s2 $s7 - lw $s4 0($s4) + lw $s4 44($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2474,8 +2474,8 @@ if467_body: move $s7 $s6 move $s6 $s7 lw $s7 0($s6) - lw $s2 0($s7) - lw $s7 0($s5) + lw $s2 8($s7) + lw $s7 100($s5) move $s0 $s7 sw $t3 -44($fp) sw $t4 -48($fp) @@ -2498,7 +2498,7 @@ if467_body: move $s0 $s6 move $s6 $s0 lw $s0 0($s6) - lw $s7 0($s0) + lw $s7 36($s0) li $s0 0 move $s2 $s0 sw $t3 -44($fp) @@ -2524,8 +2524,8 @@ if467_else: move $s2 $s6 move $s6 $s2 lw $s2 0($s6) - lw $s0 0($s2) - lw $s2 0($s5) + lw $s0 4($s2) + lw $s2 100($s5) move $s5 $s2 sw $t3 -44($fp) sw $t4 -48($fp) @@ -2548,7 +2548,7 @@ if467_else: move $s5 $s6 move $s6 $s5 lw $s5 0($s6) - lw $s2 0($s5) + lw $s2 40($s5) li $s5 0 move $s0 $s5 sw $t3 -44($fp) @@ -2612,7 +2612,7 @@ while507_test: sw $t0 -128($fp) lw $t0 -124($fp) lw $t1 -128($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -128($fp) sw $t0 -124($fp) sw $t3 -44($fp) @@ -2661,7 +2661,7 @@ while507_body: sw $t0 -108($fp) lw $t0 -104($fp) lw $t1 -108($fp) - lw $t0 0($t1) + lw $t0 24($t1) sw $t1 -108($fp) sw $t0 -104($fp) lw $t0 -92($fp) @@ -2674,7 +2674,7 @@ while507_body: lw $t0 0($s7) sw $t0 -88($fp) lw $t0 -88($fp) - lw $s6 0($t0) + lw $s6 12($t0) sw $t0 -88($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -2699,7 +2699,7 @@ while507_body: move $s5 $t3 move $t6 $s5 lw $t7 0($t6) - lw $t4 0($t7) + lw $t4 20($t7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2764,7 +2764,7 @@ while507_body: sw $t0 -112($fp) lw $t0 -76($fp) lw $t1 -112($fp) - lw $t0 0($t1) + lw $t0 12($t1) sw $t1 -112($fp) sw $t0 -76($fp) sw $t3 -44($fp) @@ -2803,9 +2803,9 @@ while507_end: lw $t0 -68($fp) lw $s5 0($t0) sw $t0 -68($fp) - lw $s6 0($s5) + lw $s6 4($s5) lw $t0 -72($fp) - lw $s5 0($t0) + lw $s5 100($t0) sw $t0 -72($fp) move $t3 $s5 sw $t3 -44($fp) @@ -2839,7 +2839,7 @@ while507_end: lw $t0 -68($fp) lw $t3 0($t0) sw $t0 -68($fp) - lw $s5 0($t3) + lw $s5 40($t3) li $t3 0 move $s6 $t3 sw $t3 -44($fp) @@ -2904,7 +2904,7 @@ while554_test: sw $t0 -128($fp) lw $t0 -124($fp) lw $t1 -128($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -128($fp) sw $t0 -124($fp) sw $t3 -44($fp) @@ -2953,7 +2953,7 @@ while554_body: sw $t0 -108($fp) lw $t0 -104($fp) lw $t1 -108($fp) - lw $t0 0($t1) + lw $t0 24($t1) sw $t1 -108($fp) sw $t0 -104($fp) lw $t0 -92($fp) @@ -2966,7 +2966,7 @@ while554_body: lw $t0 0($s7) sw $t0 -88($fp) lw $t0 -88($fp) - lw $s6 0($t0) + lw $s6 16($t0) sw $t0 -88($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -2991,7 +2991,7 @@ while554_body: move $s5 $t3 move $t6 $s5 lw $t7 0($t6) - lw $t4 0($t7) + lw $t4 20($t7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3056,7 +3056,7 @@ while554_body: sw $t0 -112($fp) lw $t0 -76($fp) lw $t1 -112($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -112($fp) sw $t0 -76($fp) sw $t3 -44($fp) @@ -3095,9 +3095,9 @@ while554_end: lw $t0 -68($fp) lw $s5 0($t0) sw $t0 -68($fp) - lw $s6 0($s5) + lw $s6 8($s5) lw $t0 -72($fp) - lw $s5 0($t0) + lw $s5 100($t0) sw $t0 -72($fp) move $t3 $s5 sw $t3 -44($fp) @@ -3131,7 +3131,7 @@ while554_end: lw $t0 -68($fp) lw $t3 0($t0) sw $t0 -68($fp) - lw $s5 0($t3) + lw $s5 36($t3) li $t3 0 move $s6 $t3 sw $t3 -44($fp) @@ -3223,7 +3223,7 @@ while607_body: sw $t0 -84($fp) lw $t0 -80($fp) lw $t1 -84($fp) - lw $t0 0($t1) + lw $t0 20($t1) sw $t1 -84($fp) sw $t0 -80($fp) sw $t3 -44($fp) @@ -3284,7 +3284,7 @@ if616_body: move $s5 $t5 lw $t6 0($s5) lw $t0 -172($fp) - lw $t0 0($t6) + lw $t0 32($t6) sw $t0 -172($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -3328,7 +3328,7 @@ if621_body: sw $t0 -164($fp) lw $t0 -152($fp) lw $t1 -164($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -164($fp) sw $t0 -152($fp) sw $t3 -44($fp) @@ -3402,7 +3402,7 @@ if634_body: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $t3 0($s4) + lw $t3 28($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3425,7 +3425,7 @@ if639_body: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $t3 0($s4) + lw $t3 12($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3518,7 +3518,7 @@ Tree_Print: lw $s5 0($s7) move $s4 $s6 move $s6 $s4 - lw $s5 0($s5) + lw $s5 76($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3571,7 +3571,7 @@ Tree_RecPrint: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 32($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3596,7 +3596,7 @@ if670_body: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 16($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3613,7 +3613,7 @@ if670_body: lw $t8 -64($fp) move $s4 $v0 move $s3 $s4 - lw $s5 0($s5) + lw $s5 76($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3641,7 +3641,7 @@ if670_end: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 20($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3664,7 +3664,7 @@ if670_end: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 28($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3689,7 +3689,7 @@ if693_body: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 12($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3706,7 +3706,7 @@ if693_body: lw $t8 -64($fp) move $s3 $v0 move $s2 $s3 - lw $s5 0($s5) + lw $s5 76($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) diff --git a/output/BubbleSort.s b/output/BubbleSort.s index 2a220bd..af87d40 100644 --- a/output/BubbleSort.s +++ b/output/BubbleSort.s @@ -83,7 +83,7 @@ BBS_Start: lw $s5 0($s6) move $s4 $s7 move $s7 $s4 - lw $s5 0($s5) + lw $s5 12($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -104,7 +104,7 @@ BBS_Start: move $s4 $s7 move $s7 $s6 lw $s7 0($s6) - lw $s7 0($s7) + lw $s7 8($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -129,7 +129,7 @@ BBS_Start: jal _print move $s7 $s6 lw $s7 0($s6) - lw $s7 0($s7) + lw $s7 4($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -149,7 +149,7 @@ BBS_Start: move $s4 $s7 move $s7 $s6 lw $s7 0($s6) - lw $s7 0($s7) + lw $s7 8($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -198,7 +198,7 @@ BBS_Sort: sw $s7 -40($fp) sw $a0 -160($fp) lw $t0 -160($fp) - lw $s6 0($t0) + lw $s6 20($t0) sw $t0 -160($fp) li $s5 1 move $a0 $s6 @@ -349,7 +349,7 @@ while49_body: sw $t0 -288($fp) lw $t0 -208($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -160($fp) sw $t0 -208($fp) lw $t0 -244($fp) @@ -402,7 +402,7 @@ while49_body: sw $t0 -228($fp) lw $t0 -164($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -160($fp) sw $t0 -164($fp) lw $t0 -164($fp) @@ -479,7 +479,7 @@ if75_body: sw $t0 -316($fp) lw $t0 -328($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -160($fp) sw $t0 -328($fp) lw $t0 -320($fp) @@ -532,7 +532,7 @@ if75_body: sw $t0 -340($fp) lw $t0 -272($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -160($fp) sw $t0 -272($fp) lw $t0 -292($fp) @@ -570,7 +570,7 @@ if75_body: sw $t0 -296($fp) lw $t0 -280($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -160($fp) sw $t0 -280($fp) lw $t0 -284($fp) @@ -623,7 +623,7 @@ if75_body: sw $t0 -296($fp) lw $t0 -196($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -160($fp) sw $t0 -196($fp) lw $t0 -232($fp) @@ -760,7 +760,7 @@ BBS_Print: while121_test: move $s5 $s7 lw $t0 -76($fp) - lw $t0 0($s6) + lw $t0 20($s6) sw $t0 -76($fp) lw $t0 -84($fp) lw $t1 -76($fp) @@ -793,7 +793,7 @@ while121_test: beqz $t0 while121_end sw $t0 -88($fp) while121_body: - lw $t6 0($s6) + lw $t6 16($s6) move $t5 $t6 move $s4 $s7 move $a0 $s4 @@ -856,7 +856,7 @@ BBS_Init: move $s6 $a1 move $s7 $s6 move $s4 $s7 - sw $s4 0($s5) + sw $s4 20($s5) move $s4 $s6 move $s6 $s4 sw $t3 -44($fp) @@ -876,8 +876,8 @@ BBS_Init: move $s4 $v0 move $s6 $s4 move $s4 $s6 - sw $s4 0($s5) - lw $s4 0($s5) + sw $s4 16($s5) + lw $s4 16($s5) li $s6 0 move $s7 $s6 move $a0 $s7 @@ -892,7 +892,7 @@ BBS_Init: li $s4 20 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 1 move $s4 $s6 move $a0 $s4 @@ -907,7 +907,7 @@ BBS_Init: li $s7 7 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 2 move $s7 $s6 move $a0 $s7 @@ -922,7 +922,7 @@ BBS_Init: li $s4 12 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 3 move $s4 $s6 move $a0 $s4 @@ -937,7 +937,7 @@ BBS_Init: li $s7 18 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 4 move $s7 $s6 move $a0 $s7 @@ -952,7 +952,7 @@ BBS_Init: li $s4 2 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 5 move $s4 $s6 move $a0 $s4 @@ -967,7 +967,7 @@ BBS_Init: li $s7 11 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 6 move $s7 $s6 move $a0 $s7 @@ -982,7 +982,7 @@ BBS_Init: li $s4 6 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 7 move $s4 $s6 move $a0 $s4 @@ -997,7 +997,7 @@ BBS_Init: li $s7 9 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 8 move $s7 $s6 move $a0 $s7 @@ -1012,7 +1012,7 @@ BBS_Init: li $s4 19 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s5 9 move $s6 $s5 move $a0 $s6 diff --git a/output/LinearSearch.s b/output/LinearSearch.s index b320fd7..af16f11 100644 --- a/output/LinearSearch.s +++ b/output/LinearSearch.s @@ -83,7 +83,7 @@ LS_Start: lw $s5 0($s6) move $s4 $s7 move $s7 $s4 - lw $s5 0($s5) + lw $s5 12($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -104,7 +104,7 @@ LS_Start: move $s4 $s7 move $s4 $s6 lw $s4 0($s6) - lw $s4 0($s4) + lw $s4 4($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -131,7 +131,7 @@ LS_Start: lw $s7 0($s6) li $s4 8 move $s5 $s4 - lw $s7 0($s7) + lw $s7 8($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -156,7 +156,7 @@ LS_Start: lw $s4 0($s6) li $s5 12 move $s7 $s5 - lw $s4 0($s4) + lw $s4 8($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -181,7 +181,7 @@ LS_Start: lw $s5 0($s6) li $s7 17 move $s4 $s7 - lw $s5 0($s5) + lw $s5 8($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -206,7 +206,7 @@ LS_Start: lw $s7 0($s6) li $s4 50 move $s5 $s4 - lw $s7 0($s7) + lw $s7 8($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -263,7 +263,7 @@ LS_Print: while55_test: move $s5 $s7 lw $t0 -76($fp) - lw $t0 0($s6) + lw $t0 20($s6) sw $t0 -76($fp) lw $t0 -84($fp) lw $t1 -76($fp) @@ -296,7 +296,7 @@ while55_test: beqz $t0 while55_end sw $t0 -88($fp) while55_body: - lw $t6 0($s6) + lw $t6 16($s6) move $t5 $t6 move $s4 $s7 move $a0 $s4 @@ -371,7 +371,7 @@ LS_Search: while83_test: move $s2 $s5 lw $t0 -216($fp) - lw $t0 0($s6) + lw $t0 20($s6) sw $t0 -216($fp) lw $t0 -188($fp) lw $t1 -216($fp) @@ -405,7 +405,7 @@ while83_test: sw $t0 -192($fp) while83_body: lw $t0 -140($fp) - lw $t0 0($s6) + lw $t0 16($s6) sw $t0 -140($fp) lw $t0 -160($fp) lw $t1 -140($fp) @@ -547,7 +547,7 @@ if101_else: lw $t0 -92($fp) move $a0 $t5 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t0 -92($fp) lw $t0 -224($fp) lw $t1 -92($fp) @@ -592,7 +592,7 @@ if108_else: sw $t1 -168($fp) sw $t0 -68($fp) lw $t0 -208($fp) - lw $t0 0($s6) + lw $t0 20($s6) sw $t0 -208($fp) lw $t0 -204($fp) lw $t1 -208($fp) @@ -664,7 +664,7 @@ LS_Init: move $s6 $a1 move $s7 $s6 move $s4 $s7 - sw $s4 0($s5) + sw $s4 20($s5) move $s4 $s6 move $s6 $s4 sw $t3 -44($fp) @@ -684,11 +684,11 @@ LS_Init: move $s4 $v0 move $s6 $s4 move $s4 $s6 - sw $s4 0($s5) + sw $s4 16($s5) li $s4 1 move $s6 $s4 move $s4 $s6 - lw $s6 0($s5) + lw $s6 20($s5) li $s7 1 move $a0 $s6 move $t9 $s7 @@ -698,7 +698,7 @@ LS_Init: while146_test: move $s7 $s4 lw $t0 -148($fp) - lw $t0 0($s5) + lw $t0 20($s5) sw $t0 -148($fp) lw $t0 -152($fp) lw $t1 -148($fp) @@ -782,7 +782,7 @@ while146_body: sw $t1 -92($fp) sw $t0 -112($fp) lw $t0 -104($fp) - lw $t0 0($s5) + lw $t0 16($s5) sw $t0 -104($fp) lw $t0 -80($fp) move $t0 $s4 diff --git a/output/LinkedList.s b/output/LinkedList.s index 930d5a5..d07f116 100644 --- a/output/LinkedList.s +++ b/output/LinkedList.s @@ -95,13 +95,13 @@ Element_Init: move $s3 $a3 move $s4 $s6 move $s6 $s4 - sw $s6 0($s5) + sw $s6 24($s5) move $s6 $s7 move $s7 $s6 - sw $s7 0($s5) + sw $s7 28($s5) move $s7 $s3 move $s3 $s7 - sw $s3 0($s5) + sw $s3 32($s5) li $s3 1 move $s5 $s3 move $s3 $s5 @@ -132,7 +132,7 @@ Element_GetAge: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 24($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -162,7 +162,7 @@ Element_GetSalary: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 28($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -192,7 +192,7 @@ Element_GetMarried: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 32($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -229,7 +229,7 @@ Element_Equal: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 4($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -251,9 +251,9 @@ Element_Equal: lw $s3 0($s6) move $s2 $s4 move $s4 $s2 - lw $s2 0($s6) + lw $s2 24($s6) move $s1 $s2 - lw $s3 0($s3) + lw $s3 20($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -274,7 +274,7 @@ Element_Equal: move $s1 $s2 move $a0 $s1 li $t9 0 -NULL $s2 $a0 $t9 + and $s2 $a0 $t9 move $s1 $s2 move $s2 $s1 move $s1 $s2 @@ -288,7 +288,7 @@ if32_else: move $s2 $s7 move $s7 $s2 lw $s2 0($s7) - lw $s1 0($s2) + lw $s1 8($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -310,9 +310,9 @@ if32_else: lw $s1 0($s6) move $s4 $s2 move $s2 $s4 - lw $s4 0($s6) + lw $s4 28($s6) move $s3 $s4 - lw $s1 0($s1) + lw $s1 20($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -333,7 +333,7 @@ if32_else: move $s3 $s4 move $a0 $s3 li $t9 0 -NULL $s4 $a0 $t9 + and $s4 $a0 $t9 move $s3 $s4 move $s4 $s3 move $s3 $s4 @@ -344,7 +344,7 @@ if51_body: move $s5 $s4 j if51_end if51_else: - lw $s4 0($s6) + lw $s4 32($s6) move $s6 $s4 move $s4 $s6 beqz $s4 if65_else @@ -352,7 +352,7 @@ if65_body: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s6 0($s4) + lw $s6 12($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -371,7 +371,7 @@ if65_body: move $s6 $s4 move $a0 $s6 li $t9 0 -NULL $s4 $a0 $t9 + and $s4 $a0 $t9 move $s6 $s4 move $s4 $s6 move $s6 $s4 @@ -391,7 +391,7 @@ if65_else: move $s6 $s7 move $s7 $s6 lw $s6 0($s7) - lw $s3 0($s6) + lw $s3 12($s6) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -489,7 +489,7 @@ if100_else: move $s6 $s2 move $a0 $s6 li $t9 0 -NULL $s2 $a0 $t9 + and $s2 $a0 $t9 move $s6 $s2 move $s2 $s6 move $s6 $s2 @@ -537,7 +537,7 @@ List_Init: move $s6 $a0 li $s7 1 move $s5 $s7 - sw $s5 0($s6) + sw $s5 48($s6) li $s5 1 move $s6 $s5 move $s5 $s6 @@ -573,13 +573,13 @@ List_InitNew: move $s3 $a3 move $s4 $s3 move $s3 $s4 - sw $s3 0($s5) + sw $s3 48($s5) move $s3 $s6 move $s6 $s3 - sw $s6 0($s5) + sw $s6 40($s5) move $s6 $s7 move $s7 $s6 - sw $s7 0($s5) + sw $s7 44($s5) li $s7 1 move $s5 $s7 move $s7 $s5 @@ -625,7 +625,7 @@ List_Insert: move $s6 $s4 move $s4 $s6 lw $s6 0($s4) - lw $s3 0($s6) + lw $s3 4($s6) move $s6 $s7 move $s7 $s6 move $s6 $s5 @@ -685,7 +685,7 @@ List_SetNext: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 44($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -738,10 +738,10 @@ List_Delete: move $s3 $s6 move $s0 $s3 move $s3 $s0 - lw $s0 0($s6) + lw $s0 48($s6) move $t7 $s0 move $s0 $t7 - lw $t7 0($s6) + lw $t7 40($s6) move $s6 $t7 move $t7 $s6 while178_test: @@ -753,7 +753,7 @@ while178_test: lw $t1 -168($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -168($fp) sw $t0 -332($fp) lw $t0 -132($fp) @@ -783,7 +783,7 @@ NULL $t0 $a0 $t9 lw $t1 -140($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -140($fp) sw $t0 -164($fp) lw $t0 -136($fp) @@ -805,14 +805,14 @@ NULL $t0 $a0 $t9 lw $t1 -152($fp) li $a0 1 move $t9 $t1 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -152($fp) sw $t0 -128($fp) lw $t0 -72($fp) lw $t1 -144($fp) li $a0 1 move $t9 $t1 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -144($fp) sw $t0 -72($fp) lw $t0 -336($fp) @@ -820,7 +820,7 @@ NULL $t0 $a0 $t9 lw $t2 -72($fp) move $a0 $t1 move $t9 $t2 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t2 -72($fp) sw $t1 -128($fp) sw $t0 -336($fp) @@ -845,7 +845,7 @@ while178_body: sw $t0 -116($fp) lw $t0 -96($fp) lw $t1 -116($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -116($fp) sw $t0 -96($fp) lw $t0 -92($fp) @@ -945,7 +945,7 @@ if206_body: sw $t0 -176($fp) lw $t0 -172($fp) lw $t1 -176($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -176($fp) sw $t0 -172($fp) sw $t3 -44($fp) @@ -1021,7 +1021,7 @@ if206_else: sw $t0 -296($fp) lw $t0 -292($fp) lw $t1 -296($fp) - lw $t0 0($t1) + lw $t0 12($t1) sw $t1 -296($fp) sw $t0 -292($fp) lw $t0 -300($fp) @@ -1035,7 +1035,7 @@ if206_else: sw $t0 -320($fp) lw $t0 -316($fp) lw $t1 -320($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -320($fp) sw $t0 -316($fp) sw $t3 -44($fp) @@ -1156,7 +1156,7 @@ if196_end: lw $t1 -284($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -284($fp) sw $t0 -276($fp) lw $t0 -364($fp) @@ -1200,7 +1200,7 @@ if238_body: sw $t0 -380($fp) lw $t0 -376($fp) lw $t1 -380($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -380($fp) sw $t0 -376($fp) sw $t3 -44($fp) @@ -1235,7 +1235,7 @@ if238_body: move $t6 $s2 move $s2 $t6 lw $t5 0($s2) - lw $t4 0($t5) + lw $t4 24($t5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1268,7 +1268,7 @@ if238_body: sw $t0 -84($fp) lw $t0 -88($fp) lw $t1 -84($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -84($fp) sw $t0 -88($fp) sw $t3 -44($fp) @@ -1370,10 +1370,10 @@ List_Search: move $s4 $s6 move $s3 $s4 move $s4 $s3 - lw $s3 0($s6) + lw $s3 48($s6) move $s2 $s3 move $s3 $s2 - lw $s2 0($s6) + lw $s2 40($s6) move $s6 $s2 move $s2 $s6 while276_test: @@ -1385,7 +1385,7 @@ while276_test: lw $t1 -116($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -116($fp) sw $t0 -144($fp) lw $t0 -108($fp) @@ -1417,7 +1417,7 @@ while276_body: lw $t0 0($s7) sw $t0 -96($fp) lw $t0 -96($fp) - lw $t4 0($t0) + lw $t4 16($t0) sw $t0 -96($fp) move $t6 $s2 lw $t0 -72($fp) @@ -1493,7 +1493,7 @@ if283_end: sw $t0 -128($fp) lw $t0 -140($fp) lw $t1 -128($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -128($fp) sw $t0 -140($fp) sw $t3 -44($fp) @@ -1529,7 +1529,7 @@ if283_end: move $s4 $s0 lw $s1 0($s4) lw $t0 -84($fp) - lw $t0 0($s1) + lw $t0 24($s1) sw $t0 -84($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -1567,7 +1567,7 @@ if283_end: move $s4 $t0 sw $t0 -92($fp) lw $t5 0($s4) - lw $t7 0($t5) + lw $t7 28($t5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1623,7 +1623,7 @@ List_GetEnd: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 48($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -1653,7 +1653,7 @@ List_GetElem: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 40($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -1683,7 +1683,7 @@ List_GetNext: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 44($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -1716,10 +1716,10 @@ List_Print: move $s6 $s7 move $s5 $s6 move $s6 $s5 - lw $s5 0($s7) + lw $s5 48($s7) move $s4 $s5 move $s5 $s4 - lw $s4 0($s7) + lw $s4 40($s7) move $s7 $s4 move $s4 $s7 while328_test: @@ -1731,7 +1731,7 @@ while328_test: lw $t1 -92($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -92($fp) sw $t0 -124($fp) lw $t0 -84($fp) @@ -1759,7 +1759,7 @@ while328_body: lw $t0 0($s4) sw $t0 -72($fp) lw $t0 -72($fp) - lw $t6 0($t0) + lw $t6 4($t0) sw $t0 -72($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -1787,7 +1787,7 @@ while328_body: move $s2 $s6 move $s6 $s2 lw $s3 0($s6) - lw $s0 0($s3) + lw $s0 32($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1816,7 +1816,7 @@ while328_body: sw $t0 -76($fp) lw $t0 -112($fp) lw $t1 -76($fp) - lw $t0 0($t1) + lw $t0 24($t1) sw $t1 -76($fp) sw $t0 -112($fp) sw $t3 -44($fp) @@ -1859,7 +1859,7 @@ while328_body: sw $t0 -88($fp) lw $t0 -80($fp) lw $t1 -88($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -88($fp) sw $t0 -80($fp) sw $t3 -44($fp) @@ -1979,7 +1979,7 @@ LL_Start: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $s7 0($s4) + lw $s7 36($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2038,7 +2038,7 @@ LL_Start: move $s0 $s5 move $s5 $s0 lw $s0 0($s5) - lw $s7 0($s0) + lw $s7 8($s0) move $s0 $s4 move $s1 $s0 sw $t3 -44($fp) @@ -2062,7 +2062,7 @@ LL_Start: move $s1 $s5 move $s5 $s1 lw $s1 0($s5) - lw $s0 0($s1) + lw $s0 36($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2129,7 +2129,7 @@ LL_Start: move $s0 $s5 move $s5 $s0 lw $s0 0($s5) - lw $s2 0($s0) + lw $s2 8($s0) move $s0 $s4 move $s7 $s0 sw $t3 -44($fp) @@ -2153,7 +2153,7 @@ LL_Start: move $s7 $s5 move $s5 $s7 lw $s7 0($s5) - lw $s0 0($s7) + lw $s0 36($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2217,7 +2217,7 @@ LL_Start: move $t7 $s5 move $s5 $t7 lw $t7 0($s5) - lw $s0 0($t7) + lw $s0 8($t7) move $t7 $s4 move $s1 $t7 sw $t3 -44($fp) @@ -2241,7 +2241,7 @@ LL_Start: move $s1 $s5 move $s5 $s1 lw $s1 0($s5) - lw $t7 0($s1) + lw $t7 36($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2300,7 +2300,7 @@ LL_Start: move $t6 $s5 move $s5 $t6 lw $t6 0($s5) - lw $t7 0($t6) + lw $t7 20($t6) move $t6 $s3 move $s7 $t6 sw $t3 -44($fp) @@ -2326,7 +2326,7 @@ LL_Start: move $t6 $s5 move $s5 $t6 lw $t6 0($s5) - lw $s7 0($t6) + lw $s7 20($t6) move $t6 $s1 move $s1 $t6 sw $t3 -44($fp) @@ -2395,7 +2395,7 @@ LL_Start: move $s2 $s5 move $s5 $s2 lw $s2 0($s5) - lw $t6 0($s2) + lw $t6 8($s2) move $s2 $s4 move $t7 $s2 sw $t3 -44($fp) @@ -2419,7 +2419,7 @@ LL_Start: move $t7 $s5 move $s5 $t7 lw $t7 0($s5) - lw $s2 0($t7) + lw $s2 36($t7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2445,7 +2445,7 @@ LL_Start: move $s2 $s5 move $s5 $s2 lw $s2 0($s5) - lw $t7 0($s2) + lw $t7 16($s2) move $s2 $s3 move $s3 $s2 sw $t3 -44($fp) @@ -2469,7 +2469,7 @@ LL_Start: move $s3 $s5 move $s5 $s3 lw $s3 0($s5) - lw $s2 0($s3) + lw $s2 36($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2495,7 +2495,7 @@ LL_Start: move $s2 $s5 move $s5 $s2 lw $s2 0($s5) - lw $s3 0($s2) + lw $s3 16($s2) move $s2 $s4 move $s4 $s2 sw $t3 -44($fp) @@ -2519,7 +2519,7 @@ LL_Start: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $s2 0($s4) + lw $s2 36($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) diff --git a/output/MoreThan4.s b/output/MoreThan4.s index 7fe496f..08d82ec 100644 --- a/output/MoreThan4.s +++ b/output/MoreThan4.s @@ -141,7 +141,7 @@ MT4_Start: move $s7 $t7 move $t7 $s6 move $s6 $t7 - lw $s0 0($s0) + lw $s0 4($s0) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) diff --git a/output/QuickSort.s b/output/QuickSort.s index 8e0e216..88e6ab2 100644 --- a/output/QuickSort.s +++ b/output/QuickSort.s @@ -83,7 +83,7 @@ QS_Start: lw $s5 0($s6) move $s4 $s7 move $s7 $s4 - lw $s5 0($s5) + lw $s5 12($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -104,7 +104,7 @@ QS_Start: move $s4 $s7 move $s7 $s6 lw $s7 0($s6) - lw $s7 0($s7) + lw $s7 8($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -127,7 +127,7 @@ QS_Start: move $s7 $s5 move $a0 $s7 jal _print - lw $s7 0($s6) + lw $s7 20($s6) li $s5 1 move $a0 $s7 move $t9 $s5 @@ -140,7 +140,7 @@ QS_Start: move $s7 $s3 move $s3 $s4 move $s2 $s3 - lw $s5 0($s5) + lw $s5 4($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -162,7 +162,7 @@ QS_Start: move $s4 $s2 move $s2 $s6 lw $s2 0($s6) - lw $s2 0($s2) + lw $s2 8($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -231,7 +231,7 @@ QS_Sort: beqz $s1 if43_else if43_body: lw $t0 -68($fp) - lw $s1 0($t0) + lw $s1 16($t0) sw $t0 -68($fp) move $s2 $s1 lw $t0 -72($fp) @@ -339,7 +339,7 @@ while68_body: move $t0 $s4 sw $t0 -76($fp) lw $t0 -68($fp) - lw $t6 0($t0) + lw $t6 16($t0) sw $t0 -68($fp) move $t3 $t6 lw $t0 -76($fp) @@ -392,7 +392,7 @@ while68_body: lw $t0 -328($fp) move $a0 $t0 li $t9 0 -NULL $s5 $a0 $t9 + and $s5 $a0 $t9 sw $t0 -328($fp) lw $t0 -340($fp) move $t0 $s5 @@ -500,7 +500,7 @@ while98_body: sw $t0 -88($fp) lw $t0 -344($fp) lw $t1 -68($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -68($fp) sw $t0 -344($fp) lw $t0 -344($fp) @@ -554,7 +554,7 @@ while98_body: lw $t0 -368($fp) move $a0 $s1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t0 -368($fp) lw $t0 -368($fp) move $t7 $t0 @@ -584,7 +584,7 @@ if112_end: while98_end: lw $t0 -176($fp) lw $t1 -68($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -68($fp) sw $t0 -176($fp) lw $t0 -208($fp) @@ -637,7 +637,7 @@ while98_end: sw $t0 -84($fp) lw $t0 -224($fp) lw $t1 -68($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -68($fp) sw $t0 -224($fp) lw $t0 -236($fp) @@ -675,7 +675,7 @@ while98_end: sw $t0 -220($fp) lw $t0 -272($fp) lw $t1 -68($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -68($fp) sw $t0 -272($fp) lw $t0 -276($fp) @@ -728,7 +728,7 @@ while98_end: sw $t0 -220($fp) lw $t0 -256($fp) lw $t1 -68($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -68($fp) sw $t0 -256($fp) lw $t0 -240($fp) @@ -866,7 +866,7 @@ if148_end: j while62_test while62_end: lw $t0 -68($fp) - lw $s4 0($t0) + lw $s4 16($t0) sw $t0 -68($fp) lw $t0 -88($fp) move $s6 $t0 @@ -882,7 +882,7 @@ while62_end: move $t9 $s6 add $s6 $a0 $t9 lw $t0 -68($fp) - lw $s4 0($t0) + lw $s4 16($t0) sw $t0 -68($fp) move $s0 $s4 lw $t0 -76($fp) @@ -901,7 +901,7 @@ while62_end: move $s7 $s0 sw $s7 0($s6) lw $t0 -68($fp) - lw $s7 0($t0) + lw $s7 16($t0) sw $t0 -68($fp) lw $t0 -76($fp) move $s6 $t0 @@ -917,7 +917,7 @@ while62_end: move $t9 $s6 add $s6 $a0 $t9 lw $t0 -68($fp) - lw $s7 0($t0) + lw $s7 16($t0) sw $t0 -68($fp) move $s0 $s7 lw $t0 -72($fp) @@ -936,7 +936,7 @@ while62_end: move $s4 $s0 sw $s4 0($s6) lw $t0 -68($fp) - lw $s4 0($t0) + lw $s4 16($t0) sw $t0 -68($fp) lw $t0 -72($fp) move $s6 $t0 @@ -974,7 +974,7 @@ while62_end: move $t9 $s7 sub $s5 $a0 $t9 move $s7 $s5 - lw $s0 0($s0) + lw $s0 4($s0) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1014,7 +1014,7 @@ while62_end: move $s6 $t0 sw $t0 -72($fp) move $s4 $s6 - lw $s7 0($s7) + lw $s7 4($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1078,7 +1078,7 @@ QS_Print: while214_test: move $s5 $s7 lw $t0 -76($fp) - lw $t0 0($s6) + lw $t0 20($s6) sw $t0 -76($fp) lw $t0 -84($fp) lw $t1 -76($fp) @@ -1111,7 +1111,7 @@ while214_test: beqz $t0 while214_end sw $t0 -88($fp) while214_body: - lw $t6 0($s6) + lw $t6 16($s6) move $t5 $t6 move $s4 $s7 move $a0 $s4 @@ -1174,7 +1174,7 @@ QS_Init: move $s6 $a1 move $s7 $s6 move $s4 $s7 - sw $s4 0($s5) + sw $s4 20($s5) move $s4 $s6 move $s6 $s4 sw $t3 -44($fp) @@ -1194,8 +1194,8 @@ QS_Init: move $s4 $v0 move $s6 $s4 move $s4 $s6 - sw $s4 0($s5) - lw $s4 0($s5) + sw $s4 16($s5) + lw $s4 16($s5) li $s6 0 move $s7 $s6 move $a0 $s7 @@ -1210,7 +1210,7 @@ QS_Init: li $s4 20 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 1 move $s4 $s6 move $a0 $s4 @@ -1225,7 +1225,7 @@ QS_Init: li $s7 7 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 2 move $s7 $s6 move $a0 $s7 @@ -1240,7 +1240,7 @@ QS_Init: li $s4 12 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 3 move $s4 $s6 move $a0 $s4 @@ -1255,7 +1255,7 @@ QS_Init: li $s7 18 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 4 move $s7 $s6 move $a0 $s7 @@ -1270,7 +1270,7 @@ QS_Init: li $s4 2 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 5 move $s4 $s6 move $a0 $s4 @@ -1285,7 +1285,7 @@ QS_Init: li $s7 11 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 6 move $s7 $s6 move $a0 $s7 @@ -1300,7 +1300,7 @@ QS_Init: li $s4 6 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s6 7 move $s4 $s6 move $a0 $s4 @@ -1315,7 +1315,7 @@ QS_Init: li $s7 9 move $s4 $s7 sw $s4 0($s6) - lw $s4 0($s5) + lw $s4 16($s5) li $s6 8 move $s7 $s6 move $a0 $s7 @@ -1330,7 +1330,7 @@ QS_Init: li $s4 19 move $s7 $s4 sw $s7 0($s6) - lw $s7 0($s5) + lw $s7 16($s5) li $s5 9 move $s6 $s5 move $a0 $s6 diff --git a/output/TreeVisitor.s b/output/TreeVisitor.s index eeaeaec..ded797a 100644 --- a/output/TreeVisitor.s +++ b/output/TreeVisitor.s @@ -134,7 +134,7 @@ TV_Start: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s5 0($s4) + lw $s5 72($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -160,7 +160,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 48($s5) li $s5 8 move $s3 $s5 sw $t3 -44($fp) @@ -184,7 +184,7 @@ TV_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 48($s3) li $s3 24 move $s4 $s3 sw $t3 -44($fp) @@ -208,7 +208,7 @@ TV_Start: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 48($s4) li $s4 4 move $s5 $s4 sw $t3 -44($fp) @@ -232,7 +232,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 48($s5) li $s5 12 move $s3 $s5 sw $t3 -44($fp) @@ -256,7 +256,7 @@ TV_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 48($s3) li $s3 20 move $s4 $s3 sw $t3 -44($fp) @@ -280,7 +280,7 @@ TV_Start: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 48($s4) li $s4 28 move $s5 $s4 sw $t3 -44($fp) @@ -304,7 +304,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 48($s5) li $s5 14 move $s3 $s5 sw $t3 -44($fp) @@ -328,7 +328,7 @@ TV_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 72($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -367,7 +367,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 80($s5) move $s5 $s3 move $s3 $s5 sw $t3 -44($fp) @@ -396,7 +396,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 68($s5) li $s5 24 move $s4 $s5 sw $t3 -44($fp) @@ -422,7 +422,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 68($s5) li $s5 12 move $s3 $s5 sw $t3 -44($fp) @@ -448,7 +448,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 68($s5) li $s5 16 move $s4 $s5 sw $t3 -44($fp) @@ -474,7 +474,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 68($s5) li $s5 50 move $s3 $s5 sw $t3 -44($fp) @@ -500,7 +500,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 68($s5) li $s5 12 move $s4 $s5 sw $t3 -44($fp) @@ -526,7 +526,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 52($s5) li $s5 12 move $s3 $s5 sw $t3 -44($fp) @@ -550,7 +550,7 @@ TV_Start: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s5 0($s3) + lw $s5 72($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -571,7 +571,7 @@ TV_Start: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s6 0($s5) + lw $s6 68($s5) li $s5 12 move $s3 $s5 sw $t3 -44($fp) @@ -627,13 +627,13 @@ Tree_Init: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 92($s5) li $s6 0 move $s7 $s6 - sw $s7 0($s5) + sw $s7 96($s5) li $s7 0 move $s6 $s7 - sw $s6 0($s5) + sw $s6 100($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -667,7 +667,7 @@ Tree_SetRight: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 88($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -701,7 +701,7 @@ Tree_SetLeft: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 84($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -732,7 +732,7 @@ Tree_GetRight: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 88($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -762,7 +762,7 @@ Tree_GetLeft: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 84($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -792,7 +792,7 @@ Tree_GetKey: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 92($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -825,7 +825,7 @@ Tree_SetKey: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 92($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -856,7 +856,7 @@ Tree_GetHas_Right: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 100($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -886,7 +886,7 @@ Tree_GetHas_Left: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 96($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -919,7 +919,7 @@ Tree_SetHas_Left: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 96($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -953,7 +953,7 @@ Tree_SetHas_Right: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) + sw $s6 100($s5) li $s6 1 move $s5 $s6 move $s6 $s5 @@ -1020,7 +1020,7 @@ if216_else: move $s6 $s2 move $a0 $s6 li $t9 0 -NULL $s2 $a0 $t9 + and $s2 $a0 $t9 move $s6 $s2 move $s2 $s6 move $s6 $s2 @@ -1130,7 +1130,7 @@ while254_body: sw $t0 -220($fp) lw $t0 -216($fp) lw $t1 -220($fp) - lw $t0 0($t1) + lw $t0 20($t1) sw $t1 -220($fp) sw $t0 -216($fp) sw $t3 -44($fp) @@ -1206,7 +1206,7 @@ if263_body: sw $t0 -132($fp) lw $t0 -148($fp) lw $t1 -132($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -132($fp) sw $t0 -148($fp) sw $t3 -44($fp) @@ -1251,7 +1251,7 @@ if268_body: sw $t0 -96($fp) lw $t0 -88($fp) lw $t1 -96($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -96($fp) sw $t0 -88($fp) sw $t3 -44($fp) @@ -1303,7 +1303,7 @@ if268_else: sw $t0 -80($fp) lw $t0 -248($fp) lw $t1 -80($fp) - lw $t0 0($t1) + lw $t0 36($t1) sw $t1 -80($fp) sw $t0 -248($fp) lw $t0 -256($fp) @@ -1357,7 +1357,7 @@ if268_else: sw $t0 -280($fp) lw $t0 -264($fp) lw $t1 -280($fp) - lw $t0 0($t1) + lw $t0 8($t1) sw $t1 -280($fp) sw $t0 -264($fp) lw $t0 -260($fp) @@ -1414,7 +1414,7 @@ if263_else: sw $t0 -200($fp) lw $t0 -232($fp) lw $t1 -200($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -200($fp) sw $t0 -232($fp) sw $t3 -44($fp) @@ -1455,7 +1455,7 @@ if295_body: move $t3 $s2 move $s2 $t3 lw $t3 0($s2) - lw $t4 0($t3) + lw $t4 12($t3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1497,7 +1497,7 @@ if295_else: sw $t0 -156($fp) lw $t0 -180($fp) lw $t1 -156($fp) - lw $t0 0($t1) + lw $t0 40($t1) sw $t1 -156($fp) sw $t0 -180($fp) lw $t0 -172($fp) @@ -1544,7 +1544,7 @@ if295_else: move $s2 $s0 lw $s1 0($s2) lw $t0 -292($fp) - lw $t0 0($s1) + lw $t0 4($s1) sw $t0 -292($fp) move $t6 $s4 lw $t0 -100($fp) @@ -1659,7 +1659,7 @@ while335_body: sw $t0 -296($fp) lw $t0 -276($fp) lw $t1 -296($fp) - lw $t0 0($t1) + lw $t0 20($t1) sw $t1 -296($fp) sw $t0 -276($fp) sw $t3 -44($fp) @@ -1735,7 +1735,7 @@ if344_body: sw $t0 -160($fp) lw $t0 -156($fp) lw $t1 -160($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -160($fp) sw $t0 -156($fp) sw $t3 -44($fp) @@ -1792,7 +1792,7 @@ if349_body: sw $t0 -372($fp) lw $t5 0($s5) lw $t0 -108($fp) - lw $t0 0($t5) + lw $t0 16($t5) sw $t0 -108($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -1873,7 +1873,7 @@ if364_body: move $s2 $s5 move $s5 $s2 lw $s2 0($s5) - lw $t3 0($s2) + lw $t3 28($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1899,7 +1899,7 @@ if369_body: move $t3 $s5 move $s5 $t3 lw $t3 0($s5) - lw $s2 0($t3) + lw $s2 12($t3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -1953,7 +1953,7 @@ if384_body: sw $t0 -244($fp) lw $t0 -240($fp) lw $t1 -244($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -244($fp) sw $t0 -240($fp) sw $t3 -44($fp) @@ -1986,7 +1986,7 @@ if384_body: lw $t1 -260($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -260($fp) sw $t0 -248($fp) lw $t0 -256($fp) @@ -2005,7 +2005,7 @@ NULL $t0 $a0 $t9 sw $t0 -212($fp) lw $t0 -208($fp) lw $t1 -212($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -212($fp) sw $t0 -208($fp) sw $t3 -44($fp) @@ -2038,7 +2038,7 @@ NULL $t0 $a0 $t9 lw $t1 -196($fp) move $a0 $t1 li $t9 0 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -196($fp) sw $t0 -268($fp) lw $t0 -192($fp) @@ -2050,14 +2050,14 @@ NULL $t0 $a0 $t9 lw $t1 -256($fp) li $a0 1 move $t9 $t1 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -256($fp) sw $t0 -204($fp) lw $t0 -200($fp) lw $t1 -192($fp) li $a0 1 move $t9 $t1 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t1 -192($fp) sw $t0 -200($fp) lw $t0 -172($fp) @@ -2065,7 +2065,7 @@ NULL $t0 $a0 $t9 lw $t2 -200($fp) move $a0 $t1 move $t9 $t2 -NULL $t0 $a0 $t9 + and $t0 $a0 $t9 sw $t2 -200($fp) sw $t1 -204($fp) sw $t0 -172($fp) @@ -2122,7 +2122,7 @@ if387_else: sw $t0 -348($fp) lw $t0 -320($fp) lw $t1 -320($fp) - lw $t0 0($t1) + lw $t0 56($t1) sw $t1 -320($fp) sw $t0 -320($fp) sw $t3 -44($fp) @@ -2179,7 +2179,7 @@ if384_else: move $t0 $t1 sw $t1 -368($fp) sw $t0 -72($fp) - lw $t7 0($t7) + lw $t7 56($t7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2288,7 +2288,7 @@ Tree_Remove: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 32($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2314,7 +2314,7 @@ if433_body: move $s2 $s3 move $s3 $s7 move $s1 $s3 - lw $s4 0($s4) + lw $s4 64($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2339,7 +2339,7 @@ if433_else: move $s1 $s7 move $s7 $s1 lw $s1 0($s7) - lw $s2 0($s1) + lw $s2 28($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2365,7 +2365,7 @@ if447_body: move $s4 $s2 move $s2 $s7 move $s0 $s2 - lw $s1 0($s1) + lw $s1 60($s1) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2390,7 +2390,7 @@ if447_else: move $s0 $s7 move $s7 $s0 lw $s0 0($s7) - lw $s2 0($s0) + lw $s2 20($s0) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2411,7 +2411,7 @@ if447_else: move $s2 $s6 move $s6 $s2 lw $s2 0($s6) - lw $s7 0($s2) + lw $s7 16($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2431,7 +2431,7 @@ if447_else: move $s2 $s7 move $s7 $s2 lw $s2 0($s7) - lw $s4 0($s2) + lw $s4 20($s2) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2455,7 +2455,7 @@ if447_else: move $s0 $s7 move $s7 $s2 move $s2 $s7 - lw $s4 0($s4) + lw $s4 44($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2480,8 +2480,8 @@ if477_body: move $s7 $s6 move $s6 $s7 lw $s7 0($s6) - lw $s2 0($s7) - lw $s7 0($s5) + lw $s2 8($s7) + lw $s7 104($s5) move $s0 $s7 sw $t3 -44($fp) sw $t4 -48($fp) @@ -2504,7 +2504,7 @@ if477_body: move $s0 $s6 move $s6 $s0 lw $s0 0($s6) - lw $s7 0($s0) + lw $s7 36($s0) li $s0 0 move $s2 $s0 sw $t3 -44($fp) @@ -2530,8 +2530,8 @@ if477_else: move $s2 $s6 move $s6 $s2 lw $s2 0($s6) - lw $s0 0($s2) - lw $s2 0($s5) + lw $s0 4($s2) + lw $s2 104($s5) move $s5 $s2 sw $t3 -44($fp) sw $t4 -48($fp) @@ -2554,7 +2554,7 @@ if477_else: move $s5 $s6 move $s6 $s5 lw $s5 0($s6) - lw $s2 0($s5) + lw $s2 40($s5) li $s5 0 move $s0 $s5 sw $t3 -44($fp) @@ -2618,7 +2618,7 @@ while517_test: sw $t0 -128($fp) lw $t0 -124($fp) lw $t1 -128($fp) - lw $t0 0($t1) + lw $t0 28($t1) sw $t1 -128($fp) sw $t0 -124($fp) sw $t3 -44($fp) @@ -2667,7 +2667,7 @@ while517_body: sw $t0 -108($fp) lw $t0 -104($fp) lw $t1 -108($fp) - lw $t0 0($t1) + lw $t0 24($t1) sw $t1 -108($fp) sw $t0 -104($fp) lw $t0 -92($fp) @@ -2680,7 +2680,7 @@ while517_body: lw $t0 0($s7) sw $t0 -88($fp) lw $t0 -88($fp) - lw $s6 0($t0) + lw $s6 12($t0) sw $t0 -88($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -2705,7 +2705,7 @@ while517_body: move $s5 $t3 move $t6 $s5 lw $t7 0($t6) - lw $t4 0($t7) + lw $t4 20($t7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -2770,7 +2770,7 @@ while517_body: sw $t0 -112($fp) lw $t0 -76($fp) lw $t1 -112($fp) - lw $t0 0($t1) + lw $t0 12($t1) sw $t1 -112($fp) sw $t0 -76($fp) sw $t3 -44($fp) @@ -2809,9 +2809,9 @@ while517_end: lw $t0 -68($fp) lw $s5 0($t0) sw $t0 -68($fp) - lw $s6 0($s5) + lw $s6 4($s5) lw $t0 -72($fp) - lw $s5 0($t0) + lw $s5 104($t0) sw $t0 -72($fp) move $t3 $s5 sw $t3 -44($fp) @@ -2845,7 +2845,7 @@ while517_end: lw $t0 -68($fp) lw $t3 0($t0) sw $t0 -68($fp) - lw $s5 0($t3) + lw $s5 40($t3) li $t3 0 move $s6 $t3 sw $t3 -44($fp) @@ -2910,7 +2910,7 @@ while564_test: sw $t0 -128($fp) lw $t0 -124($fp) lw $t1 -128($fp) - lw $t0 0($t1) + lw $t0 32($t1) sw $t1 -128($fp) sw $t0 -124($fp) sw $t3 -44($fp) @@ -2959,7 +2959,7 @@ while564_body: sw $t0 -108($fp) lw $t0 -104($fp) lw $t1 -108($fp) - lw $t0 0($t1) + lw $t0 24($t1) sw $t1 -108($fp) sw $t0 -104($fp) lw $t0 -92($fp) @@ -2972,7 +2972,7 @@ while564_body: lw $t0 0($s7) sw $t0 -88($fp) lw $t0 -88($fp) - lw $s6 0($t0) + lw $s6 16($t0) sw $t0 -88($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -2997,7 +2997,7 @@ while564_body: move $s5 $t3 move $t6 $s5 lw $t7 0($t6) - lw $t4 0($t7) + lw $t4 20($t7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3062,7 +3062,7 @@ while564_body: sw $t0 -112($fp) lw $t0 -76($fp) lw $t1 -112($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -112($fp) sw $t0 -76($fp) sw $t3 -44($fp) @@ -3101,9 +3101,9 @@ while564_end: lw $t0 -68($fp) lw $s5 0($t0) sw $t0 -68($fp) - lw $s6 0($s5) + lw $s6 8($s5) lw $t0 -72($fp) - lw $s5 0($t0) + lw $s5 104($t0) sw $t0 -72($fp) move $t3 $s5 sw $t3 -44($fp) @@ -3137,7 +3137,7 @@ while564_end: lw $t0 -68($fp) lw $t3 0($t0) sw $t0 -68($fp) - lw $s5 0($t3) + lw $s5 36($t3) li $t3 0 move $s6 $t3 sw $t3 -44($fp) @@ -3229,7 +3229,7 @@ while617_body: sw $t0 -84($fp) lw $t0 -80($fp) lw $t1 -84($fp) - lw $t0 0($t1) + lw $t0 20($t1) sw $t1 -84($fp) sw $t0 -80($fp) sw $t3 -44($fp) @@ -3290,7 +3290,7 @@ if626_body: move $s5 $t5 lw $t6 0($s5) lw $t0 -172($fp) - lw $t0 0($t6) + lw $t0 32($t6) sw $t0 -172($fp) sw $t3 -44($fp) sw $t4 -48($fp) @@ -3334,7 +3334,7 @@ if631_body: sw $t0 -164($fp) lw $t0 -152($fp) lw $t1 -164($fp) - lw $t0 0($t1) + lw $t0 16($t1) sw $t1 -164($fp) sw $t0 -152($fp) sw $t3 -44($fp) @@ -3408,7 +3408,7 @@ if644_body: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $t3 0($s4) + lw $t3 28($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3431,7 +3431,7 @@ if649_body: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $t3 0($s4) + lw $t3 12($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3524,7 +3524,7 @@ Tree_Print: lw $s5 0($s7) move $s4 $s6 move $s6 $s4 - lw $s5 0($s5) + lw $s5 76($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3577,7 +3577,7 @@ Tree_RecPrint: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 32($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3602,7 +3602,7 @@ if680_body: move $s4 $s7 move $s7 $s4 lw $s4 0($s7) - lw $s3 0($s4) + lw $s3 16($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3619,7 +3619,7 @@ if680_body: lw $t8 -64($fp) move $s4 $v0 move $s3 $s4 - lw $s5 0($s5) + lw $s5 76($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3647,7 +3647,7 @@ if680_end: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 20($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3670,7 +3670,7 @@ if680_end: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s3 0($s5) + lw $s3 28($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3695,7 +3695,7 @@ if703_body: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 12($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3712,7 +3712,7 @@ if703_body: lw $t8 -64($fp) move $s3 $v0 move $s2 $s3 - lw $s5 0($s5) + lw $s5 76($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3831,7 +3831,7 @@ Visitor_visit: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 28($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3854,7 +3854,7 @@ if736_body: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 12($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3871,11 +3871,11 @@ if736_body: lw $t8 -64($fp) move $s5 $v0 move $s4 $s5 - sw $s4 0($s6) - lw $s4 0($s6) + sw $s4 8($s6) + lw $s4 8($s6) move $s5 $s4 lw $s4 0($s5) - lw $s3 0($s4) + lw $s3 80($s4) move $s4 $s6 move $s2 $s4 sw $t3 -44($fp) @@ -3905,7 +3905,7 @@ if736_end: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 32($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3928,7 +3928,7 @@ if756_body: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 16($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -3945,11 +3945,11 @@ if756_body: lw $t8 -64($fp) move $s3 $v0 move $s2 $s3 - sw $s2 0($s6) - lw $s2 0($s6) + sw $s2 4($s6) + lw $s2 4($s6) move $s3 $s2 lw $s2 0($s3) - lw $s7 0($s2) + lw $s7 80($s2) move $s2 $s6 move $s6 $s2 sw $t3 -44($fp) @@ -4010,7 +4010,7 @@ MyVisitor_visit: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 28($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -4033,7 +4033,7 @@ if779_body: move $s5 $s7 move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 12($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -4050,11 +4050,11 @@ if779_body: lw $t8 -64($fp) move $s5 $v0 move $s4 $s5 - sw $s4 0($s6) - lw $s4 0($s6) + sw $s4 12($s6) + lw $s4 12($s6) move $s5 $s4 lw $s4 0($s5) - lw $s3 0($s4) + lw $s3 80($s4) move $s4 $s6 move $s2 $s4 sw $t3 -44($fp) @@ -4084,7 +4084,7 @@ if779_end: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 20($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -4107,7 +4107,7 @@ if779_end: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 32($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -4130,7 +4130,7 @@ if805_body: move $s3 $s7 move $s7 $s3 lw $s3 0($s7) - lw $s2 0($s3) + lw $s2 16($s3) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -4147,11 +4147,11 @@ if805_body: lw $t8 -64($fp) move $s3 $v0 move $s2 $s3 - sw $s2 0($s6) - lw $s2 0($s6) + sw $s2 8($s6) + lw $s2 8($s6) move $s3 $s2 lw $s2 0($s3) - lw $s7 0($s2) + lw $s7 80($s2) move $s2 $s6 move $s6 $s2 sw $t3 -44($fp) diff --git a/output/ex33.s b/output/ex33.s index e278af7..df2fb8d 100644 --- a/output/ex33.s +++ b/output/ex33.s @@ -30,7 +30,7 @@ Main: move $s7 $s6 move $s6 $s7 lw $s7 0($s6) - lw $s5 0($s7) + lw $s5 4($s7) li $s7 0 li $s4 1 move $a0 $s7 @@ -130,7 +130,7 @@ A_foo: move $s7 $a2 li $s4 3 move $s6 $s4 - sw $s6 0($s5) + sw $s6 8($s5) li $s6 22 move $s5 $s6 move $s6 $s5 diff --git a/output/ex34.s b/output/ex34.s index 71005cb..a153849 100644 --- a/output/ex34.s +++ b/output/ex34.s @@ -86,8 +86,8 @@ A_foo: move $s6 $a1 li $s7 42 move $s6 $s7 - sw $s6 0($s5) - lw $s6 0($s5) + sw $s6 4($s5) + lw $s6 4($s5) move $s5 $s6 move $s6 $s5 move $v0 $s6 diff --git a/output/ex40.s b/output/ex40.s index c8200a1..7b6b01c 100644 --- a/output/ex40.s +++ b/output/ex40.s @@ -81,9 +81,9 @@ A_add_two: move $s6 $a1 li $s7 2 move $s4 $s7 - sw $s4 0($s5) + sw $s4 4($s5) move $s4 $s6 - lw $s7 0($s5) + lw $s7 4($s5) move $a0 $s4 move $t9 $s7 add $s5 $a0 $t9 diff --git a/output/ex42.s b/output/ex42.s index b716f06..1997dff 100644 --- a/output/ex42.s +++ b/output/ex42.s @@ -86,11 +86,11 @@ A_Init: move $s3 $a3 lw $s4 0($fp) lw $s2 4($fp) - sw $s6 0($s5) - sw $s7 0($s5) - sw $s3 0($s5) - sw $s4 0($s5) - sw $s2 0($s5) + sw $s6 4($s5) + sw $s7 8($s5) + sw $s3 12($s5) + sw $s4 16($s5) + sw $s2 20($s5) li $s2 1 move $v0 $s2 lw $s0 -12($fp) diff --git a/output/ex44.s b/output/ex44.s index 7f3786b..9872b8b 100644 --- a/output/ex44.s +++ b/output/ex44.s @@ -76,15 +76,15 @@ Operator_compute: li $s5 0 li $a0 1 move $t9 $s7 -NULL $s4 $a0 $t9 + and $s4 $a0 $t9 li $a0 1 move $t9 $s5 -NULL $s7 $a0 $t9 + and $s7 $a0 $t9 move $a0 $s4 move $t9 $s7 -NULL $s5 $a0 $t9 + and $s5 $a0 $t9 move $s7 $s5 - sw $s7 0($s6) + sw $s7 4($s6) li $s7 0 move $s6 $s7 move $s7 $s6 diff --git a/output/ex45.s b/output/ex45.s index dda2898..e5d3aba 100644 --- a/output/ex45.s +++ b/output/ex45.s @@ -97,8 +97,8 @@ A_run: move $s7 $v0 move $s5 $s7 move $s7 $s5 - sw $s7 0($s6) - lw $s7 0($s6) + sw $s7 4($s6) + lw $s7 4($s6) move $s6 $s7 lw $s7 0($s6) move $s6 $s7 diff --git a/output/ex46.s b/output/ex46.s index 43c98f7..c8802dc 100644 --- a/output/ex46.s +++ b/output/ex46.s @@ -76,7 +76,7 @@ Main: move $s7 $s6 move $s6 $s7 lw $s7 0($s6) - lw $s5 0($s7) + lw $s5 4($s7) li $s7 10 move $s4 $s7 li $s7 20 @@ -133,22 +133,22 @@ A_foo: move $s6 $a0 li $s7 0 move $s5 $s7 - sw $s5 0($s6) + sw $s5 12($s6) li $s5 1 li $s7 2 move $a0 $s5 move $t9 $s7 add $s4 $a0 $t9 move $s7 $s4 - sw $s7 0($s6) - lw $s7 0($s6) - lw $s4 0($s6) + sw $s7 8($s6) + lw $s7 8($s6) + lw $s4 12($s6) move $a0 $s7 move $t9 $s4 add $s5 $a0 $t9 move $s4 $s5 - sw $s4 0($s6) - lw $s4 0($s6) + sw $s4 12($s6) + lw $s4 12($s6) move $s6 $s4 move $s4 $s6 move $v0 $s4 @@ -182,12 +182,12 @@ A_bar: move $s7 $a2 move $s4 $s6 move $s6 $s4 - sw $s6 0($s5) + sw $s6 8($s5) move $s6 $s7 move $s7 $s6 - sw $s7 0($s5) - lw $s7 0($s5) - lw $s6 0($s5) + sw $s7 12($s5) + lw $s7 8($s5) + lw $s6 12($s5) move $a0 $s7 move $t9 $s6 mul $s5 $a0 $t9 diff --git a/output/ex47.s b/output/ex47.s index 9009eb4..12d5e13 100644 --- a/output/ex47.s +++ b/output/ex47.s @@ -56,7 +56,7 @@ Main: move $s7 $s6 move $s6 $s7 lw $s7 0($s6) - lw $s4 0($s7) + lw $s4 4($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -122,8 +122,8 @@ A_set: move $s7 $v0 move $s4 $s7 move $s7 $s4 - sw $s7 0($s5) - lw $s7 0($s5) + sw $s7 8($s5) + lw $s7 8($s5) li $s4 5 move $s3 $s4 move $a0 $s3 @@ -138,7 +138,7 @@ A_set: move $s7 $s6 move $s6 $s7 sw $s6 0($s4) - lw $s6 0($s5) + lw $s6 8($s5) move $s5 $s6 lw $s6 0($s5) move $s5 $s6 @@ -170,7 +170,7 @@ A_get: sw $s6 -36($fp) sw $s7 -40($fp) move $s7 $a0 - lw $s6 0($s7) + lw $s6 8($s7) move $s7 $s6 li $s6 5 move $a0 $s6 diff --git a/output/ex48.s b/output/ex48.s index c2aa396..d6e0f6b 100644 --- a/output/ex48.s +++ b/output/ex48.s @@ -56,7 +56,7 @@ Main: move $s7 $s6 move $s6 $s7 lw $s7 0($s6) - lw $s4 0($s7) + lw $s4 4($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -105,8 +105,8 @@ A_set: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) - lw $s6 0($s5) + sw $s6 8($s5) + lw $s6 8($s5) move $s5 $s6 move $s6 $s5 move $v0 $s6 @@ -136,7 +136,7 @@ A_get: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 8($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 diff --git a/output/ex49.s b/output/ex49.s index 6eb3f62..ac6a299 100644 --- a/output/ex49.s +++ b/output/ex49.s @@ -80,7 +80,7 @@ A_set: move $s6 $a0 li $s7 3 move $s5 $s7 - sw $s5 0($s6) + sw $s5 4($s6) li $s5 1 move $s6 $s5 move $s5 $s6 @@ -113,8 +113,8 @@ B_get: move $s6 $a0 li $s7 12 move $s5 $s7 - sw $s5 0($s6) - lw $s5 0($s6) + sw $s5 8($s6) + lw $s5 8($s6) move $s6 $s5 move $s5 $s6 move $v0 $s5 diff --git a/output/ex50.s b/output/ex50.s index cf06f9a..14b03ea 100644 --- a/output/ex50.s +++ b/output/ex50.s @@ -85,11 +85,11 @@ A_set_get: sw $t9 0($s7) move $s5 $s7 move $s7 $s5 - sw $s7 0($s6) - lw $s7 0($s6) + sw $s7 4($s6) + lw $s7 4($s6) move $s5 $s7 lw $s7 0($s5) - lw $s4 0($s7) + lw $s4 4($s7) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -107,7 +107,7 @@ A_set_get: move $s7 $v0 move $s4 $s7 move $s7 $s4 - lw $s4 0($s6) + lw $s4 4($s6) move $s5 $s4 lw $s4 0($s5) lw $s6 0($s4) @@ -158,7 +158,7 @@ B_get: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 8($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 @@ -190,7 +190,7 @@ B_set: move $s6 $a0 li $s7 12 move $s5 $s7 - sw $s5 0($s6) + sw $s5 8($s6) li $s5 1 move $s6 $s5 move $s5 $s6 diff --git a/output/ex51.s b/output/ex51.s index 47070b7..61b05a0 100644 --- a/output/ex51.s +++ b/output/ex51.s @@ -29,7 +29,7 @@ Main: move $s6 $s7 move $s7 $s6 lw $s6 0($s7) - lw $s5 0($s6) + lw $s5 8($s6) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -77,7 +77,7 @@ Test_setval: move $s5 $a0 move $s6 $a1 move $s7 $a2 - lw $s4 0($s5) + lw $s4 20($s5) move $s5 $s6 move $s6 $s5 move $a0 $s6 @@ -123,7 +123,7 @@ Test_getval: sw $s7 -40($fp) move $s6 $a0 move $s7 $a1 - lw $s5 0($s6) + lw $s5 20($s6) move $s6 $s5 move $s5 $s7 move $a0 $s5 @@ -190,7 +190,7 @@ Test_start: move $s5 $v0 move $s4 $s5 move $s5 $s4 - sw $s5 0($s7) + sw $s5 20($s7) li $a0 24 jal _heapAlloc move $s5 $v0 @@ -201,7 +201,7 @@ Test_start: move $s4 $s5 move $s5 $s4 lw $s4 0($s5) - lw $s3 0($s4) + lw $s3 12($s4) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -218,7 +218,7 @@ Test_start: lw $t8 -64($fp) move $s4 $v0 move $s3 $s4 - sw $s3 0($s7) + sw $s3 16($s7) move $s3 $s6 move $s6 $s3 lw $s3 0($s6) @@ -248,11 +248,11 @@ Test_start: move $s3 $s2 move $s2 $s7 move $s5 $s2 - sw $s5 0($s7) - lw $s5 0($s7) + sw $s5 16($s7) + lw $s5 16($s7) move $s7 $s5 lw $s5 0($s7) - lw $s2 0($s5) + lw $s2 4($s5) li $s5 2 move $s4 $s5 sw $t3 -44($fp) @@ -303,7 +303,7 @@ Test_next: sw $s6 -36($fp) sw $s7 -40($fp) move $s6 $a0 - lw $s7 0($s6) + lw $s7 16($s6) move $s6 $s7 move $s7 $s6 move $v0 $s7 diff --git a/output/ex52.s b/output/ex52.s index f8ee1fc..56664dc 100644 --- a/output/ex52.s +++ b/output/ex52.s @@ -80,14 +80,14 @@ Test_start: sw $t9 0($s7) move $s5 $s7 move $s7 $s5 - sw $s7 0($s6) + sw $s7 8($s6) li $s7 1 move $s5 $s7 - sw $s5 0($s6) - lw $s5 0($s6) + sw $s5 12($s6) + lw $s5 8($s6) move $s7 $s5 lw $s5 0($s7) - lw $s4 0($s5) + lw $s4 4($s5) sw $t3 -44($fp) sw $t4 -48($fp) sw $t5 -52($fp) @@ -104,12 +104,12 @@ Test_start: lw $t8 -64($fp) move $s5 $v0 move $s4 $s5 - sw $s4 0($s6) - lw $s4 0($s6) + sw $s4 12($s6) + lw $s4 12($s6) move $s6 $s4 move $a0 $s6 li $t9 0 -NULL $s4 $a0 $t9 + and $s4 $a0 $t9 move $s6 $s4 move $s4 $s6 move $s6 $s4 @@ -164,25 +164,25 @@ Test_next: move $s3 $s4 li $a0 1 move $t9 $s6 -NULL $s4 $a0 $t9 + and $s4 $a0 $t9 li $a0 1 move $t9 $s3 -NULL $s6 $a0 $t9 + and $s6 $a0 $t9 move $a0 $s4 move $t9 $s6 -NULL $s3 $a0 $t9 + and $s3 $a0 $t9 move $s6 $s3 move $s3 $s6 - lw $s6 0($s7) + lw $s6 12($s7) li $a0 1 move $t9 $s3 -NULL $s7 $a0 $t9 + and $s7 $a0 $t9 li $a0 1 move $t9 $s6 -NULL $s3 $a0 $t9 + and $s3 $a0 $t9 move $a0 $s7 move $t9 $s3 -NULL $s6 $a0 $t9 + and $s6 $a0 $t9 move $s3 $s6 move $s6 $s3 move $s3 $s6 diff --git a/output/ex53.s b/output/ex53.s index 3230095..fd3e2e7 100644 --- a/output/ex53.s +++ b/output/ex53.s @@ -78,11 +78,11 @@ Test_start: move $s6 $a1 move $s7 $s6 move $s6 $s7 - sw $s6 0($s5) - lw $s6 0($s5) + sw $s6 4($s5) + lw $s6 4($s5) move $s7 $s6 - sw $s7 0($s5) - lw $s7 0($s5) + sw $s7 8($s5) + lw $s7 8($s5) move $s5 $s7 move $s7 $s5 move $v0 $s7 |