java.lang.Object | |
↳ | com.pnfsoftware.jeb.core.units.code.DefUseInfo |
Known Direct Subclasses |
Def-use information object provided by instruction for data-flow analysis purposes. Can be subclassed.
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
int | CONSERVATIVE | ||||||||||
int | FLAG_INCLUDE_POTENTIALS | ||||||||||
int | FLAG_INCLUDE_SPOILED |
Fields | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
public IdRanges | def | verified defines / never null | |||||||||
public IdRanges | defpot | potential defines may be null (non-null IFF the FLAG_INCLUDE_POTENTIALS flag was set)must not intersect def
|
|||||||||
public Long | insnAddress | ||||||||||
public IdRanges | spoiled | spoiled variables, i.e. | |||||||||
public IdRanges | use | verified uses / never null | |||||||||
public IdRanges | usepot | potential uses may be null (non-null IFF the FLAG_INCLUDE_POTENTIALS flag was set)must not intersect use
|
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
DefUseInfo() | |||||||||||
DefUseInfo(int flags) |
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
void | clear() | ||||||||||
IdRanges | getDef() | ||||||||||
List<Integer> | getDefinedVarIds() | ||||||||||
Long | getInstructionAddress() | ||||||||||
List<Integer> | getPotentiallyDefinedVarIds() | ||||||||||
List<Integer> | getPotentiallyUsedVarIds() | ||||||||||
List<Integer> | getSpoiledVarIds() | ||||||||||
IdRanges | getUse() | ||||||||||
List<Integer> | getUsedVarIds() | ||||||||||
void | setInstructionAddress(long addr) | ||||||||||
boolean | shouldCollectPotentials() | ||||||||||
boolean | shouldCollectSpoiled() | ||||||||||
String | toString() |
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
|
potential defines
may be null (non-null IFF the FLAG_INCLUDE_POTENTIALS
flag was set)
must not intersect def
spoiled variables, i.e. vars defined to unusable values a.k.a. collateral writes
may be null (non-null IFF the FLAG_INCLUDE_SPOILED
flag was set)
potential uses
may be null (non-null IFF the FLAG_INCLUDE_POTENTIALS
flag was set)
must not intersect use