public class SpfUtil
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
private static int |
operandNum |
| Constructor and Description |
|---|
SpfUtil() |
| Modifier and Type | Method and Description |
|---|---|
static gov.nasa.jpf.symbc.numeric.Expression |
createSPFVariableForType(gov.nasa.jpf.vm.StackFrame sf,
int variable,
java.lang.String varType)
This creates SPF constants depending on the type of the variable.
|
static void |
emptyFolder(java.io.File folder) |
static gov.nasa.jpf.symbc.numeric.Comparator |
getComparator(gov.nasa.jpf.vm.Instruction instruction) |
private static za.ac.sun.cs.green.expr.Expression |
getFirstCond(Stmt stmt) |
static gov.nasa.jpf.symbc.numeric.Comparator |
getNegComparator(gov.nasa.jpf.vm.Instruction instruction) |
static int |
getOperandNumber(java.lang.String instruction)
Returns number of operands depending on the if-bytecode instruction.
|
private static boolean |
isBothSidesFeasible(gov.nasa.jpf.vm.ThreadInfo ti,
gov.nasa.jpf.symbc.numeric.Comparator cmp,
gov.nasa.jpf.symbc.numeric.Comparator negCmp,
gov.nasa.jpf.symbc.numeric.Expression op1,
gov.nasa.jpf.symbc.numeric.Expression op2) |
static boolean |
isIncrementalSolver() |
static boolean |
isStackConsumingRegionEnd(gov.nasa.jpf.vm.ThreadInfo ti,
StaticRegion region,
gov.nasa.jpf.vm.Instruction ins) |
static boolean |
isSymCond(gov.nasa.jpf.vm.ThreadInfo ti,
gov.nasa.jpf.vm.Instruction ins)
Checks if the "if" condition is symbolic based on the the operands of the "if" bytecode instruction.
|
static boolean |
isSymCond(gov.nasa.jpf.vm.ThreadInfo ti,
Stmt stmt,
SlotParamTable slotParamTable,
gov.nasa.jpf.vm.Instruction ins)
Checks if the "if" condition is symbolic by visiting the condition expression of the statement of the staticRegion
|
static void |
maybeParseConstraint(gov.nasa.jpf.symbc.numeric.PathCondition pc) |
public static int getOperandNumber(java.lang.String instruction)
instruction"if" - bytecode instructionStaticRegionExceptionpublic static boolean isSymCond(gov.nasa.jpf.vm.ThreadInfo ti,
gov.nasa.jpf.vm.Instruction ins)
ti - Current ThreadInfo objectins - Current "if" bytecode instruction.StaticRegionExceptionprivate static boolean isBothSidesFeasible(gov.nasa.jpf.vm.ThreadInfo ti,
gov.nasa.jpf.symbc.numeric.Comparator cmp,
gov.nasa.jpf.symbc.numeric.Comparator negCmp,
gov.nasa.jpf.symbc.numeric.Expression op1,
gov.nasa.jpf.symbc.numeric.Expression op2)
public static boolean isSymCond(gov.nasa.jpf.vm.ThreadInfo ti,
Stmt stmt,
SlotParamTable slotParamTable,
gov.nasa.jpf.vm.Instruction ins)
throws StaticRegionException
ti - Current ThreadInfo objectstmt - Statement of the static region.StaticRegionExceptionprivate static za.ac.sun.cs.green.expr.Expression getFirstCond(Stmt stmt)
public static gov.nasa.jpf.symbc.numeric.Expression createSPFVariableForType(gov.nasa.jpf.vm.StackFrame sf,
int variable,
java.lang.String varType)
throws StaticRegionException
sf - Current Stack Framevariable - Variable number for which we want to create the constant.varType - The type of which the constant should be created in SPF.StaticRegionExceptionpublic static void emptyFolder(java.io.File folder)
public static gov.nasa.jpf.symbc.numeric.Comparator getComparator(gov.nasa.jpf.vm.Instruction instruction)
public static gov.nasa.jpf.symbc.numeric.Comparator getNegComparator(gov.nasa.jpf.vm.Instruction instruction)
public static boolean isStackConsumingRegionEnd(gov.nasa.jpf.vm.ThreadInfo ti,
StaticRegion region,
gov.nasa.jpf.vm.Instruction ins)
throws StaticRegionException
StaticRegionExceptionpublic static boolean isIncrementalSolver()
public static void maybeParseConstraint(gov.nasa.jpf.symbc.numeric.PathCondition pc)
throws StaticRegionException
StaticRegionException