new OPT_DominatorsPhase(),
new OPT_DominatorsPhase(true),
  private static void SSAinHIR(Vector p) {    composeComponents      (p, "SSA", new Object[] {        new OPT_OptimizationPlanCompositeElement       ("HIR SSA transformations",         new Object[] {        // Local copy propagation        new OPT_LocalCopyProp(),        // Local constant propagation        new OPT_LocalConstantProp(),        // Insert PI Nodes        new OPT_PiNodes(true),         // Compute dominators        new OPT_DominatorsPhase(),         // compute dominance frontier        new OPT_DominanceFrontier(),         // load elimination        new OPT_LoadElimination(),         // store elimination        new OPT_DeadStoreElimination(),         // path sensitive constant propagation        new OPT_SSATuneUp(),         // ABCD        new OPT_GlobalBoundsCheck(),         // clean up Pi Nodes        new OPT_PiNodes(false),         // Simple SSA optimizations,        new OPT_SSATuneUp(),         // Global Code Placement,        new OPT_GCP(),         // Leave SSA         new OPT_LeaveSSA() })     {          boolean shouldPerform(OPT_Options options) {            return options.getOptLevel() >= 2;          }        },        // SSA reveals new opportunites for the following        new OPT_OptimizationPlanCompositeElement          ("Post SSA cleanup", new Object[] {           new OPT_LocalCopyProp(),           new OPT_LocalConstantProp(),           new OPT_Simple(true, true),           new OPT_EscapeTransformations(),           new OPT_BranchOptimizations(2)            }) {            boolean shouldPerform(OPT_Options options) {              return options.getOptLevel() >= 2;            }          }      }    );  }