public class LockAnalysis extends ForwardDataflowAnalysis<LockSet>
ValueNumberAnalysis| Constructor and Description |
|---|
LockAnalysis(org.apache.bcel.generic.MethodGen methodGen,
ValueNumberDataflow vnaDataflow,
DepthFirstSearch dfs) |
| Modifier and Type | Method and Description |
|---|---|
void |
copy(LockSet source,
LockSet dest)
Copy dataflow facts.
|
LockSet |
createFact()
Create empty (uninitialized) dataflow facts for one program point.
|
void |
initEntryFact(LockSet result)
Initialize the "entry" fact for the graph.
|
boolean |
isFactValid(LockSet fact)
Determine whether the given fact is valid (neither top nor
bottom).
|
boolean |
isTop(LockSet fact)
Is the given fact the top value.
|
void |
makeFactTop(LockSet fact)
Make given fact the top value.
|
void |
meetInto(LockSet fact,
Edge edge,
LockSet result)
Meet a dataflow fact associated with an incoming edge into another fact.
|
boolean |
same(LockSet fact1,
LockSet fact2)
Are given dataflow facts the same?
|
void |
transferInstruction(org.apache.bcel.generic.InstructionHandle handle,
BasicBlock basicBlock,
LockSet fact)
Transfer function for a single instruction.
|
getBlockOrder, getDepthFirstSearch, isForwardsgetFactAfterLocation, getFactAtLocation, transferedgeTransfer, factToString, finishIteration, getFactOnEdge, getLastUpdateTimestamp, getResultFact, getStartFact, resultFactIterator, setLastUpdateTimestamp, startIterationpublic LockAnalysis(org.apache.bcel.generic.MethodGen methodGen,
ValueNumberDataflow vnaDataflow,
DepthFirstSearch dfs)
public LockSet createFact()
DataflowAnalysispublic void copy(LockSet source, LockSet dest)
DataflowAnalysispublic void initEntryFact(LockSet result)
DataflowAnalysispublic void makeFactTop(LockSet fact)
DataflowAnalysispublic boolean isTop(LockSet fact)
DataflowAnalysispublic boolean same(LockSet fact1, LockSet fact2)
DataflowAnalysispublic void meetInto(LockSet fact, Edge edge, LockSet result) throws DataflowAnalysisException
DataflowAnalysisfact - the predecessor fact (incoming edge)edge - the edge from the predecessorresult - the result factDataflowAnalysisExceptionpublic void transferInstruction(org.apache.bcel.generic.InstructionHandle handle,
BasicBlock basicBlock,
LockSet fact)
throws DataflowAnalysisException
AbstractDataflowAnalysistransferInstruction in class AbstractDataflowAnalysis<LockSet>handle - the instructionbasicBlock - the BasicBlock containing the instruction; needed to
disambiguate instructions in inlined JSR subroutinesfact - which should be modified based on the instructionDataflowAnalysisExceptionpublic boolean isFactValid(LockSet fact)
AbstractDataflowAnalysisisFactValid in class AbstractDataflowAnalysis<LockSet>FindBugs™ is licenced under the LGPL. Copyright © 2006 University of Maryland.