Class DFAUtil

java.lang.Object
com.pnfsoftware.jeb.core.units.code.DFAUtil

public class DFAUtil extends Object
Utility routines for Data Flow Analysis objects (see IDFA and its implementation DFA4).
  • Method Details

    • formatChain

      public static <T extends Number> String formatChain(IDFA<?> dfa, Map<Integer,Collection<T>> chain)
      Format a data chain as: (regId)={pos0, pos1, ...} .... The ids are naturally ordered. Positions for each id are also naturally ordered. Consequently, performing chain comparison using string comparison on the rendered chain is a viable solution.
      Type Parameters:
      T - chain location number type
      Parameters:
      dfa - data-flow analysis object
      chain - chain
      Returns:
      formatted chain
    • formatVars

      public static <T extends Number> String formatVars(IDFA<?> dfa, Collection<Integer> vars)
      Format variables.
      Type Parameters:
      T - unused number type
      Parameters:
      dfa - data-flow analysis object
      vars - variables
      Returns:
      formatted variables
    • formatVars

      public static <T extends Number> String formatVars(IDFA<?> dfa, Collection<Integer> vars, boolean reorder)
      Format variables.
      Type Parameters:
      T - unused number type
      Parameters:
      dfa - data-flow analysis object
      vars - variables
      reorder - true to sort variables before formatting
      Returns:
      formatted variables