|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.joanju.cg.bytecode.Bytecode com.joanju.cg.bytecode.PushInstr
public class PushInstr
Used at call sites for passing values as arguments. Subclasses: PushonretInstr.
Field Summary | |
---|---|
protected int |
paramNum
|
protected java.util.HashSet<java.lang.Integer> |
values
Stored. |
Fields inherited from class com.joanju.cg.bytecode.Bytecode |
---|
address, cuid, instrSet, nodeNum, xrefs |
Constructor Summary | |
---|---|
PushInstr()
|
|
PushInstr(int cuid,
int address)
|
Method Summary | |
---|---|
void |
calcValueSets()
Calculate the value sets for the instruction. |
protected void |
checkWhereUsed()
Add recalc and checkval records for internal and external where-used. |
Opcode |
getOpcode()
|
int |
getParamNum()
|
int |
getRVal()
|
java.util.HashSet<java.lang.Integer> |
getValues()
Get the set of values for this instruction. |
void |
setParamNum(int paramNum)
|
void |
setRVal(int nameRVal)
|
protected void |
setValuesFromByteStream(java.io.DataInputStream in)
|
java.lang.String |
toStringFromData()
All Bytecode instruction subclasses should override this eventually. |
protected void |
writeValuesToByteStream(java.io.DataOutputStream out)
|
Methods inherited from class com.joanju.cg.bytecode.Bytecode |
---|
addSource, addWhereUsed, beforeWrite, calcValuesAgain, compareTo, equals, fetchBytesFromDB, fetchInCu, generateDataForDB, getAddress, getCuID, getNodeNum, getSources, getValuesCalcLocal, getWhereUsed, getXrefs, hashCode, initData, isDataModified, isFromDB, setAddress, setCuID, setDataBytesFromDB, setDataModified, setFromDB, setInstructionSet, setNodeNum, shouldLoadData, sourcesForXrefTarget, storeIfModified, toString, toStringFromComments, toStringFromName, toStringFromSet |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected int paramNum
protected java.util.HashSet<java.lang.Integer> values
Constructor Detail |
---|
public PushInstr()
public PushInstr(int cuid, int address)
Method Detail |
---|
public void calcValueSets() throws java.sql.SQLException, java.io.IOException
Bytecode
Called during build, build-recalc, checkvals, and checkvals-recalc. Implementations should only build from external values once. Calculates which xref records are needed as well.
IMPORTANT: Should only ever be called for instructions belonging to an InstructionSet.
calcValueSets
in class Bytecode
java.sql.SQLException
java.io.IOException
protected void checkWhereUsed() throws java.sql.SQLException, java.io.IOException
java.sql.SQLException
java.io.IOException
public java.util.HashSet<java.lang.Integer> getValues() throws java.sql.SQLException, java.io.IOException
Bytecode
getValues
in class Bytecode
java.sql.SQLException
java.io.IOException
public int getParamNum() throws java.sql.SQLException, java.io.IOException
java.sql.SQLException
java.io.IOException
public int getRVal() throws java.sql.SQLException, java.io.IOException
java.sql.SQLException
java.io.IOException
public Opcode getOpcode()
getOpcode
in class Bytecode
public void setParamNum(int paramNum)
public void setRVal(int nameRVal)
protected void setValuesFromByteStream(java.io.DataInputStream in) throws java.io.IOException
setValuesFromByteStream
in class Bytecode
java.io.IOException
public java.lang.String toStringFromData()
Bytecode
toStringFromData
in class Bytecode
protected void writeValuesToByteStream(java.io.DataOutputStream out) throws java.io.IOException
writeValuesToByteStream
in class Bytecode
java.io.IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |