Fixed IfStmt
This commit is contained in:
@@ -589,11 +589,11 @@ public class CodeGenImpl extends CodeGenBase
|
||||
Register result = node.condition.dispatch(this);
|
||||
|
||||
Label ln = generateLocalLabel();
|
||||
backend.emitBEQZ(result, ln,"Jump to end of loop");
|
||||
elseBlock.push(generateLocalLabel());
|
||||
backend.emitBEQZ(result, elseBlock.peek(),"Jump to end of loop");
|
||||
for(Stmt s:node.thenBody)
|
||||
s.dispatch(this);
|
||||
backend.emitJ(ln, "Jump to end of if statement");
|
||||
elseBlock.push(generateLocalLabel());
|
||||
backend.emitLocalLabel(elseBlock.peek(), "Else part of if statement");
|
||||
for(Stmt s:node.elseBody)
|
||||
s.dispatch(this);
|
||||
|
||||
Reference in New Issue
Block a user