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 TypeInterfaceDescriptioninterfaceIControlFlowGraph<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 booleanCFGUtil.canReach(IBasicBlock<? extends IInstruction> from, IBasicBlock<? extends IInstruction> to) Determine whether a regular path exists between a source block and a destination block.static booleanCFGUtil.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 booleanCFGUtil.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.booleanDFA4.checkOutput(IBasicBlock<InsnType> blk, int varid) DFA4.checkOutputsWithDefs(IBasicBlock<InsnType> blk, int varid) static intCFGUtil.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 StringCFGUtil.DotFileGenerator.generateEdgeLabel(IBasicBlock<? extends IInstruction> src, int outEdgeIndex) protected StringCFGUtil.DotFileGenerator.generateIrregularEdgeLabel(IBasicBlock<? extends IInstruction> src, int outEdgeIndex) protected StringCFGUtil.DotFileGenerator.generateNodeBackgroundColor(IBasicBlock<? extends IInstruction> blk) protected StringCFGUtil.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.booleanDFA4.isAlive(IBasicBlock<InsnType> b, int idx, int varid) booleanIDFA.isAlive(IBasicBlock<InsnType> b, int idx, int varid) booleanDFA4.isNotRedefined(int varid, IBasicBlock<InsnType> b0, int i0, IBasicBlock<InsnType> b1, int i1) booleanDFA4.isReaching(IBasicBlock<InsnType> b, int idx, int varid) booleanIDFA.isReaching(IBasicBlock<InsnType> b, int idx, int varid) booleanDFA4.isTerminator(IBasicBlock<InsnType> blk) booleanIDFA.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 booleanCFGUtil.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 TypeClassDescriptionclassBasicBlock<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 TypeClassDescriptionclassBasicBlock<InsnType extends IInstruction>This class represents a basic block of generic instructions.