Class 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.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject getOrCreate​(java.util.Map<Local,​proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject> map, Local local)  
      static void linkPhiObject​(proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject parent, proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject child)  
      boolean transformReportChanged​(IrMethod method)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • RemoveLocalFromSSA

        public RemoveLocalFromSSA()
    • Method Detail

      • getOrCreate

        public static proguard.dexfile.ir.ts.RemoveLocalFromSSA.PhiObject getOrCreate​(java.util.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)