com.joanju.cg.bytecode
Class PopInstr
java.lang.Object
com.joanju.cg.bytecode.Bytecode
com.joanju.cg.bytecode.Assignment
com.joanju.cg.bytecode.PopInstr
public class PopInstr
- extends Assignment
Methods inherited from class com.joanju.cg.bytecode.Bytecode |
addSource, addWhereUsed, beforeWrite, calcValuesAgain, compareTo, equals, fetchBytesFromDB, fetchInCu, generateDataForDB, getAddress, getCuID, getNodeNum, getSources, getValuesCalcLocal, 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 |
PopInstr
public PopInstr()
PopInstr
public PopInstr(int cuid,
int address)
calcValueSets
public void calcValueSets()
throws java.sql.SQLException,
java.io.IOException
- Description copied from class:
Bytecode
- Calculate the value sets for the instruction.
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.
- Specified by:
calcValueSets
in class Bytecode
- Throws:
java.sql.SQLException
java.io.IOException
getOpcode
public Opcode getOpcode()
- Specified by:
getOpcode
in class Bytecode
getParamNum
public int getParamNum()
throws java.sql.SQLException,
java.io.IOException
- Throws:
java.sql.SQLException
java.io.IOException
getValues
public java.util.HashSet<java.lang.Integer> getValues()
throws java.sql.SQLException,
java.io.IOException
- Description copied from class:
Bytecode
- Get the set of values for this instruction.
Should be overridden by most subclasses.
This default implementation returns a set containing one Layout.UNRESOLVED_VALUE.
- Overrides:
getValues
in class Bytecode
- Throws:
java.sql.SQLException
java.io.IOException
getWhereUsed
public java.util.HashSet<java.lang.Integer> getWhereUsed()
throws java.sql.SQLException,
java.io.IOException
- Description copied from class:
Bytecode
- Returns null. May be overridden by subclasses.
- Overrides:
getWhereUsed
in class Bytecode
- Throws:
java.sql.SQLException
java.io.IOException
setFunctionRet
public void setFunctionRet()
- This is only called by the compiler for the pop instr that is the return from a function/method.
setParamNum
public void setParamNum(int paramNum)
setValues
public void setValues(java.util.HashSet<java.lang.Integer> newvals)
setValuesFromByteStream
protected void setValuesFromByteStream(java.io.DataInputStream in)
throws java.io.IOException
- Specified by:
setValuesFromByteStream
in class Bytecode
- Throws:
java.io.IOException
toStringFromData
public java.lang.String toStringFromData()
- Description copied from class:
Bytecode
- All Bytecode instruction subclasses should override this eventually.
- Overrides:
toStringFromData
in class Bytecode
- Returns:
- "" if not overridden.
writeValuesToByteStream
protected void writeValuesToByteStream(java.io.DataOutputStream out)
throws java.io.IOException
- Specified by:
writeValuesToByteStream
in class Bytecode
- Throws:
java.io.IOException
Copyright © 2008 Joanju Software. All Rights Reserved.