Class IPAPassRemoveUnusedFunctions


  • public class IPAPassRemoveUnusedFunctions
    extends IPAPass
    This rewrite identifies and removes unused functions in order to reduce compilation overhead and other overheads such as parfor worker creation, where we construct function copies.
    • Constructor Detail

      • IPAPassRemoveUnusedFunctions

        public IPAPassRemoveUnusedFunctions()
    • Method Detail

      • isApplicable

        public boolean isApplicable​(FunctionCallGraph fgraph)
        Description copied from class: IPAPass
        Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).
        Specified by:
        isApplicable in class IPAPass
        Parameters:
        fgraph - function call graph
        Returns:
        true if applicable.
      • rewriteProgram

        public boolean rewriteProgram​(DMLProgram prog,
                                      FunctionCallGraph fgraph,
                                      FunctionCallSizeInfo fcallSizes)
        Description copied from class: IPAPass
        Rewrites the given program or its functions in place, with access to the read-only function call graph.
        Specified by:
        rewriteProgram in class IPAPass
        Parameters:
        prog - dml program
        fgraph - function call graph
        fcallSizes - function call size infos
        Returns:
        true if function call graph should be rebuild