Class RemoveLocalFromSSA

java.lang.Object
proguard.dexfile.ir.ts.StatedTransformer
proguard.dexfile.ir.ts.RemoveLocalFromSSA
All Implemented Interfaces:
Transformer

public class RemoveLocalFromSSA extends StatedTransformer
This class attempts to remove SSA form and reduce the number of variables used by the program. This is an optimiser which does not need to be used as it does not change the semantics of a program but simply the number of variables it uses and therefore its performance. However not using this will lead to much larger memory requirements of the other optimisers as it requires them to process more variables and variable assignments.
  • Constructor Details

    • RemoveLocalFromSSA

      public RemoveLocalFromSSA()
  • Method Details

    • getOrCreate

      public static proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject getOrCreate(Map<Local,proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject> map, Local local)
    • linkPhiObject

      public static void linkPhiObject(proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject parent, proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject child)
    • transformReportChanged

      public boolean transformReportChanged(IrMethod method)
      Specified by:
      transformReportChanged in class StatedTransformer