public class BinaryOperatorNode extends LoadNode
vresult = <op>(v1,v1)
| Modifier and Type | Class and Description |
|---|---|
static class |
BinaryOperatorNode.Op
The different kinds of binary operators.
|
EXCEPTION_REG, FIRST_ORDINARY_REG, NO_VALUE, RETURN_REG| Constructor and Description |
|---|
BinaryOperatorNode(BinaryOperatorNode.Op op,
int arg1_reg,
int arg2_reg,
int result_reg,
SourceLocation location)
Constructs a new binary operator 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 |
getArg1Register()
Returns the first argument register.
|
int |
getArg2Register()
Returns the second argument register.
|
BinaryOperatorNode.Op |
getOperator()
Returns the operator.
|
String |
operatorToString()
Returns the operator in human readable form.
|
void |
setArg1Register(int arg1_reg)
Sets the first argument register.
|
void |
setArg2Register(int arg2_reg)
Sets the second argument register.
|
String |
toString()
Returns a string description of this node.
|
<ArgType> void |
visitBy(NodeVisitor<ArgType> v,
ArgType a)
Visits this node with the given visitor.
|
getResultRegistergetBlock, getDuplicateOf, getIndex, getSourceLocation, isArtificial, isDead, isRegistersDone, setArtificial, setBlock, setDead, setDuplicateOf, setIndex, setRegistersDonepublic BinaryOperatorNode(BinaryOperatorNode.Op op, int arg1_reg, int arg2_reg, int result_reg, SourceLocation location)
op - The operatorarg1_reg - The register for the first argument.arg2_reg - The register for the second argument.result_reg - The register for the result.location - The source location.public boolean canThrowExceptions()
AbstractNodecanThrowExceptions in class AbstractNodepublic void check(BasicBlock b)
AbstractNodecheck in class AbstractNodeb - basic block containing this nodepublic int getArg1Register()
public int getArg2Register()
public BinaryOperatorNode.Op getOperator()
public String operatorToString()
public void setArg1Register(int arg1_reg)
public void setArg2Register(int arg2_reg)
public String toString()
AbstractNodetoString in class AbstractNodepublic <ArgType> void visitBy(NodeVisitor<ArgType> v, ArgType a)
NodeCopyright © 2012 Aarhus University