Uses of Interface
com.pnfsoftware.jeb.core.units.code.IBasicBlock
Packages that use IBasicBlock
Package
Description
Types related to JEB code plugins, including disassemblers, decompilers, and debuggers.
Control flow graph classes used by the Android components, including
dexdec
.Control-flow graph types specific to native code.
-
Uses of IBasicBlock in com.pnfsoftware.jeb.core.units.code
Classes in com.pnfsoftware.jeb.core.units.code with type parameters of type IBasicBlockModifier and TypeInterfaceDescriptioninterface
IControlFlowGraph<InsnType extends IInstruction,
Block extends IBasicBlock<InsnType>> Generic interface for control flow graph (CFG) objects.Methods in com.pnfsoftware.jeb.core.units.code that return IBasicBlockModifier and TypeMethodDescriptionIBasicBlock.getInputBlock
(int index) Get a regular input block.IBasicBlock.getIrregularInputBlock
(int index) Get an irregular input block.IBasicBlock.getIrregularOutputBlock
(int index) Get an irregular output block.IBasicBlock.getOutputBlock
(int index) Get a regular output block.Methods in com.pnfsoftware.jeb.core.units.code that return types with arguments of type IBasicBlockModifier and TypeMethodDescriptionList<? extends IBasicBlock<InsnType>>
IBasicBlock.getAllInputBlocks()
Iterable<? extends IBasicBlock<InsnType>>
IBasicBlock.getAllInputs()
Retrieve a read-only iterable of regular and irregular input blocks.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getAllOutputBlocks()
Get regular and irregular output blocks.Iterable<? extends IBasicBlock<InsnType>>
IBasicBlock.getAllOutputs()
Retrieve a read-only iterable of regular and irregular output blocks.DFA4.getCfg()
IDFA.getCfg()
Retrieve a reference to the CFG object that will be accessed and modified when performing an analysis.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getInputBlocks()
Get the regular input blocks.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getInputs()
Retrieve a read-only list of input blocks (regular).List<? extends IBasicBlock<InsnType>>
IBasicBlock.getIrregularInputBlocks()
List<? extends IBasicBlock<InsnType>>
IBasicBlock.getIrregularInputs()
Retrieve a read-only list of irregular input blocks.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getIrregularOutputBlocks()
Get irregular output blocks.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getIrregularOutputs()
Retrieve a read-only list of irregular output blocks.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getOutputBlocks()
Get the regular output blocks.List<? extends IBasicBlock<InsnType>>
IBasicBlock.getOutputs()
Retrieve a read-only list of output blocks (regular).Methods in com.pnfsoftware.jeb.core.units.code with parameters of type IBasicBlockModifier and TypeMethodDescriptionstatic boolean
CFGUtil.canReach
(IBasicBlock<? extends IInstruction> from, IBasicBlock<? extends IInstruction> to) Determine whether a regular path exists between a source block and a destination block.static boolean
CFGUtil.canReach
(IBasicBlock<? extends IInstruction> from, IBasicBlock<? extends IInstruction> to, boolean alsoFollowIrregularFlow) Determine whether a path exists between a source block and a destination block.static boolean
CFGUtil.canReach
(IBasicBlock<? extends IInstruction> from, IBasicBlock<? extends IInstruction> to, boolean alsoFollowIrregularFlow, Collection<IBasicBlock<? extends IInstruction>> stopperBlocks) Determine whether a path exists between a source block and a destination block.boolean
DFA4.checkOutput
(IBasicBlock<InsnType> blk, int varid) DFA4.checkOutputsWithDefs
(IBasicBlock<InsnType> blk, int varid) static int
CFGUtil.countDeepInputs
(IBasicBlock<? extends IInstruction> b, int maxdepth) Count regular the number of top-level input blocks leading to the provided block.DFA4.filterOutputs
(IBasicBlock<InsnType> blk, Collection<Integer> varids) DFA4.filterOutputsWithDefs
(IBasicBlock<InsnType> blk, Collection<Integer> varids) protected String
CFGUtil.DotFileGenerator.generateEdgeLabel
(IBasicBlock<? extends IInstruction> src, int outEdgeIndex) protected String
CFGUtil.DotFileGenerator.generateIrregularEdgeLabel
(IBasicBlock<? extends IInstruction> src, int outEdgeIndex) protected String
CFGUtil.DotFileGenerator.generateNodeBackgroundColor
(IBasicBlock<? extends IInstruction> blk) protected String
CFGUtil.DotFileGenerator.generateNodeTextColor
(IBasicBlock<? extends IInstruction> blk) DFA4.getDefUses
(long addr, int varid, int stopcount, boolean verifyStartOnDefPoint, boolean recordReachOut, IBasicBlock<InsnType> blkForLiveChains, int idxForLiveChains, int maxBlocks, boolean limitToStartBlock) Find the list of usage points for a defined variable.DFA4.getLiveChains
(IBasicBlock<InsnType> b, int idx) DFA4.getLiveChains
(IBasicBlock<InsnType> b, int idx, int varid) DFA4.getLiveChains
(IBasicBlock<InsnType> b, int idx, int varid, int stopcount) DFA4.getLiveChains
(IBasicBlock<InsnType> b, int idx, Collection<Integer> varids, int stopcount) IDFA.getLiveChains
(IBasicBlock<InsnType> b, int idx) IDFA.getLiveChains
(IBasicBlock<InsnType> b, int idx, int varid) IDFA.getLiveChains
(IBasicBlock<InsnType> b, int idx, int varid, int stopcount) DFA4.getOutputMap
(IBasicBlock<InsnType> blk) DFA4.getOutputMap
(IBasicBlock<InsnType> blk, int varid) IDFA.getOutputMap
(IBasicBlock<InsnType> blk) IDFA.getOutputMap
(IBasicBlock<InsnType> blk, int varid) DFA4.getOutputs
(IBasicBlock<InsnType> blk) IDFA.getOutputs
(IBasicBlock<InsnType> blk) DFA4.getOutputsWithDefs
(IBasicBlock<InsnType> blk) DFA4.getReachChains
(IBasicBlock<InsnType> b, int idx) DFA4.getReachChains
(IBasicBlock<InsnType> b, int idx, int varid) DFA4.getReachChains
(IBasicBlock<InsnType> b, int idx, int varid, int stopcount) DFA4.getReachChains
(IBasicBlock<InsnType> b, int idx, Collection<Integer> varids, int stopcount) IDFA.getReachChains
(IBasicBlock<InsnType> b, int idx) IDFA.getReachChains
(IBasicBlock<InsnType> b, int idx, int varid) IDFA.getReachChains
(IBasicBlock<InsnType> b, int idx, int varid, int stopcount) DFA4.getUseDefs
(long addr, int varid, int stopcount, boolean verifyStartOnUsePoint, boolean recordLiveIn, IBasicBlock<InsnType> blkForReachChains, int idxForReachChains, boolean[] aDetectedUseDiscrepancy, boolean treatSpoiledAsDefs, int maxBlocks, boolean limitToStartBlock) Find the list of definition points for a used variable.boolean
DFA4.isAlive
(IBasicBlock<InsnType> b, int idx, int varid) boolean
IDFA.isAlive
(IBasicBlock<InsnType> b, int idx, int varid) boolean
DFA4.isNotRedefined
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1) boolean
DFA4.isReaching
(IBasicBlock<InsnType> b, int idx, int varid) boolean
IDFA.isReaching
(IBasicBlock<InsnType> b, int idx, int varid) boolean
DFA4.isTerminator
(IBasicBlock<InsnType> blk) boolean
IDFA.isTerminator
(IBasicBlock<InsnType> blk) Determine whether the provided block is a terminator.DFA4.isVarReachingFromTo
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1) DFA4.isVarReachingFromTo
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1, boolean allowRedef, boolean performExtendedChecks, int maxBlocks) DFA4.isVarReachingFromTo
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1, boolean performExtendedChecks, int maxBlocks) IDFA.isVarReachingFromTo
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1) Determine if a variable used by the start instruction reaches the final instruction with the same value.IDFA.isVarReachingFromTo
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1, boolean performExtendedChecks, int maxBlocks) Determine if a variable used by the start instruction reaches the final instruction with the same value.DFA4.verifyNoRedefAfterSink
(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1, int maxBlocks) Method parameters in com.pnfsoftware.jeb.core.units.code with type arguments of type IBasicBlockModifier and TypeMethodDescriptionstatic boolean
CFGUtil.canReach
(IBasicBlock<? extends IInstruction> from, IBasicBlock<? extends IInstruction> to, boolean alsoFollowIrregularFlow, Collection<IBasicBlock<? extends IInstruction>> stopperBlocks) Determine whether a path exists between a source block and a destination block.Constructor parameters in com.pnfsoftware.jeb.core.units.code with type arguments of type IBasicBlockModifierConstructorDescriptionDFA4
(IControlFlowGraph<InsnType, ? extends IBasicBlock<InsnType>> cfg) Create a DFA object with CFG-provided default collection flags and basic caching for instruction-level def-use information.DFA4
(IControlFlowGraph<InsnType, ? extends IBasicBlock<InsnType>> cfg, int collectionFlags, int cacheConfig) Create a DFA object. -
Uses of IBasicBlock in com.pnfsoftware.jeb.core.units.code.android.controlflow
Classes in com.pnfsoftware.jeb.core.units.code.android.controlflow that implement IBasicBlockModifier and TypeClassDescriptionclass
BasicBlock<InsnType extends ILocatedInstruction>
This class represents a basic block of generic instructions. -
Uses of IBasicBlock in com.pnfsoftware.jeb.core.units.code.asm.cfg
Classes in com.pnfsoftware.jeb.core.units.code.asm.cfg that implement IBasicBlockModifier and TypeClassDescriptionclass
BasicBlock<InsnType extends IInstruction>
This class represents a basic block of generic instructions.