public class IfNode extends Node
if (vcondition) {...} else {...}
Must be the last node in its block.
EXCEPTION_REG, FIRST_ORDINARY_REG, NO_VALUE, RETURN_REG
Constructor and Description |
---|
IfNode(int condition_reg,
SourceLocation location)
Constructs a new if node.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canThrowExceptions()
Returns true if this node may throw exceptions.
|
void |
check(BasicBlock b)
Perform a consistency check of this node.
|
int |
getConditionRegister()
Returns the condition register.
|
BasicBlock |
getSuccFalse()
Returns the 'false' successor.
|
BasicBlock |
getSuccTrue()
Returns the 'true' successor.
|
void |
setSuccessors(BasicBlock succ_true,
BasicBlock succ_false)
Sets the true/false successors.
|
java.lang.String |
toString()
Returns a string description of this node.
|
void |
visitBy(NodeVisitor v)
Visits this node with the given visitor.
|
clone, getBlock, getDuplicateOf, getImplicitAfterCall, getIndex, getSourceLocation, getThisOrDuplicateOf, isArtificial, isRegistersDone, setArtificial, setBlock, setDuplicateOf, setImplicitAfterCall, setIndex, setRegistersDone, setSourceLocation
public IfNode(int condition_reg, SourceLocation location)
condition_reg
- The condition register.location
- The source location.public boolean canThrowExceptions()
AbstractNode
canThrowExceptions
in class AbstractNode
public void check(BasicBlock b)
AbstractNode
check
in class AbstractNode
b
- basic block containing this nodepublic int getConditionRegister()
public BasicBlock getSuccFalse()
public BasicBlock getSuccTrue()
public void setSuccessors(BasicBlock succ_true, BasicBlock succ_false)
succ_true
- The basic block if the condition is true.succ_false
- The basic block if the condition is false.public java.lang.String toString()
AbstractNode
toString
in class AbstractNode
public void visitBy(NodeVisitor v)
Node
Copyright © 2009-2019 Aarhus University