/dalvik/dx/src/com/android/dx/ssa/ |
MoveParamCombiner.java | 34 private final SsaMethod ssaMeth; 45 private MoveParamCombiner(SsaMethod ssaMeth) { 46 this.ssaMeth = ssaMeth; 55 = new RegisterSpec[ssaMeth.getParamWidth()]; 60 ssaMeth.forEachInsn(new SsaInsn.Visitor() { 99 ssaMeth.getDefinitionForRegister(specA.getReg()) 109 return ssaMeth.getRegCount(); 123 = ssaMeth.getUseListForRegister(specB.getReg()); 137 ssaMeth.deleteInsns(deletedInsns) [all...] |
LiteralOpUpgrader.java | 43 private final SsaMethod ssaMeth; 59 this.ssaMeth = ssaMethod; 84 ssaMeth.forEachInsn(new SsaInsn.Visitor() { 150 if (result != null && !ssaMeth.isRegALocal(result) && 162 ssaMeth.getBlocks().get(pred).getInsns(); 202 ssaMeth.onInsnRemoved(insn); 204 ssaMeth.onInsnAdded(newInsn);
|
DeadCodeRemover.java | 33 private final SsaMethod ssaMeth; 35 /** ssaMeth.getRegCount() */ 63 this.ssaMeth = ssaMethod; 67 useList = ssaMeth.getUseListCopy(); 78 ssaMeth.forEachInsn(new NoSideEffectVisitor(worklist)); 88 SsaInsn insnS = ssaMeth.getDefinitionForRegister(regV); 104 ssaMeth.getDefinitionForRegister( 119 ssaMeth.deleteInsns(deletedInsns); 128 ssaMeth.computeReachability(); 130 for (SsaBasicBlock block : ssaMeth.getBlocks()) [all...] |
SsaRenamer.java | 66 private final SsaMethod ssaMeth; 97 * @param ssaMeth {@code non-null;} un-renamed SSA method that will 100 public SsaRenamer(SsaMethod ssaMeth) { 101 ropRegCount = ssaMeth.getRegCount(); 103 this.ssaMeth = ssaMeth; 111 startsForBlocks = new RegisterSpec[ssaMeth.getBlocks().size()][]; 142 startsForBlocks[ssaMeth.getEntryBlockIndex()] = initialRegMapping; 148 * @param ssaMeth {@code non-null;} un-renamed SSA method that will 152 public SsaRenamer(SsaMethod ssaMeth, int thresh) [all...] |
Optimizer.java | 93 SsaMethod ssaMeth = null; 98 ssaMeth = SsaConverter.convertToSsaMethod(rmeth, paramWidth, isStatic); 99 runSsaFormSteps(ssaMeth, steps); 101 RopMethod resultMeth = SsaToRop.convertToRopMethod(ssaMeth, false); 130 SsaMethod ssaMeth; 133 ssaMeth = SsaConverter.convertToSsaMethod( 144 runSsaFormSteps(ssaMeth, newSteps); 146 resultMeth = SsaToRop.convertToRopMethod(ssaMeth, true); 150 private static void runSsaFormSteps(SsaMethod ssaMeth, 155 MoveParamCombiner.process(ssaMeth); [all...] |
PhiTypeResolver.java | 45 SsaMethod ssaMeth; 51 * @param ssaMeth method to process 53 public static void process (SsaMethod ssaMeth) { 54 new PhiTypeResolver(ssaMeth).run(); 57 private PhiTypeResolver(SsaMethod ssaMeth) { 58 this.ssaMeth = ssaMeth; 59 worklist = new BitSet(ssaMeth.getRegCount()); 67 int regCount = ssaMeth.getRegCount(); 70 SsaInsn definsn = ssaMeth.getDefinitionForRegister(reg) [all...] |
EscapeAnalysis.java | 100 private SsaMethod ssaMeth; 101 /** ssaMeth.getRegCount() */ 109 * @param ssaMeth method to process 111 private EscapeAnalysis(SsaMethod ssaMeth) { 112 this.ssaMeth = ssaMeth; 113 this.regCount = ssaMeth.getRegCount(); 144 ArrayList<SsaInsn> predInsns = ssaMeth.getBlocks().get(pred).getInsns(); 157 ArrayList<SsaInsn> succInsns = ssaMeth.getBlocks().get(succ).getInsns(); 331 List<SsaInsn> useList = ssaMeth.getUseListForRegister(def.getReg()) [all...] |
ConstCollector.java | 66 private final SsaMethod ssaMeth; 84 this.ssaMeth = ssaMethod; 91 int regSz = ssaMeth.getRegCount(); 98 SsaBasicBlock start = ssaMeth.getEntryBlock(); 107 = RegisterSpec.make(ssaMeth.makeNewSsaReg(), cst); 118 SsaBasicBlock entryBlock = ssaMeth.getEntryBlock(); 158 int regSz = ssaMeth.getRegCount(); 172 SsaInsn insn = ssaMeth.getDefinitionForRegister(i); 187 predInsns = ssaMeth.getBlocks().get(pred).getInsns(); 212 if (ssaMeth.isRegALocal(result)) [all...] |
SCCP.java | 45 private SsaMethod ssaMeth; 46 /** ssaMeth.getRegCount() */ 69 private SCCP(SsaMethod ssaMeth) { 70 this.ssaMeth = ssaMeth; 71 this.regCount = ssaMeth.getRegCount(); 76 this.executableBlocks = new BitSet(ssaMeth.getBlocks().size()); 115 for (SsaInsn insn : ssaMeth.getUseListForRegister(reg)) { 119 for (SsaInsn insn : ssaMeth.getUseListForRegister(reg)) { 254 if (!ssaMeth.isRegALocal(specA) & [all...] |
/external/dexmaker/src/dx/java/com/android/dx/ssa/ |
MoveParamCombiner.java | 36 private final SsaMethod ssaMeth; 47 private MoveParamCombiner(SsaMethod ssaMeth) { 48 this.ssaMeth = ssaMeth; 57 = new RegisterSpec[ssaMeth.getParamWidth()]; 62 ssaMeth.forEachInsn(new SsaInsn.Visitor() { 101 ssaMeth.getDefinitionForRegister(specA.getReg()) 111 return ssaMeth.getRegCount(); 125 = ssaMeth.getUseListForRegister(specB.getReg()); 139 ssaMeth.deleteInsns(deletedInsns) [all...] |
LiteralOpUpgrader.java | 44 private final SsaMethod ssaMeth; 60 this.ssaMeth = ssaMethod; 85 ssaMeth.forEachInsn(new SsaInsn.Visitor() { 151 if (result != null && !ssaMeth.isRegALocal(result) && 163 ssaMeth.getBlocks().get(pred).getInsns(); 203 ssaMeth.onInsnRemoved(insn); 205 ssaMeth.onInsnAdded(newInsn);
|
DeadCodeRemover.java | 40 private final SsaMethod ssaMeth; 42 /** ssaMeth.getRegCount() */ 70 this.ssaMeth = ssaMethod; 74 useList = ssaMeth.getUseListCopy(); 85 ssaMeth.forEachInsn(new NoSideEffectVisitor(worklist)); 95 SsaInsn insnS = ssaMeth.getDefinitionForRegister(regV); 111 ssaMeth.getDefinitionForRegister( 126 ssaMeth.deleteInsns(deletedInsns); 135 ssaMeth.computeReachability(); 137 for (SsaBasicBlock block : ssaMeth.getBlocks()) [all...] |
SsaRenamer.java | 67 private final SsaMethod ssaMeth; 98 * @param ssaMeth {@code non-null;} un-renamed SSA method that will 101 public SsaRenamer(SsaMethod ssaMeth) { 102 ropRegCount = ssaMeth.getRegCount(); 104 this.ssaMeth = ssaMeth; 112 startsForBlocks = new RegisterSpec[ssaMeth.getBlocks().size()][]; 143 startsForBlocks[ssaMeth.getEntryBlockIndex()] = initialRegMapping; 149 * @param ssaMeth {@code non-null;} un-renamed SSA method that will 153 public SsaRenamer(SsaMethod ssaMeth, int thresh) [all...] |
Optimizer.java | 94 SsaMethod ssaMeth = null; 99 ssaMeth = SsaConverter.convertToSsaMethod(rmeth, paramWidth, isStatic); 100 runSsaFormSteps(ssaMeth, steps); 102 RopMethod resultMeth = SsaToRop.convertToRopMethod(ssaMeth, false); 131 SsaMethod ssaMeth; 134 ssaMeth = SsaConverter.convertToSsaMethod( 145 runSsaFormSteps(ssaMeth, newSteps); 147 resultMeth = SsaToRop.convertToRopMethod(ssaMeth, true); 151 private static void runSsaFormSteps(SsaMethod ssaMeth, 156 MoveParamCombiner.process(ssaMeth); [all...] |
PhiTypeResolver.java | 46 SsaMethod ssaMeth; 52 * @param ssaMeth method to process 54 public static void process (SsaMethod ssaMeth) { 55 new PhiTypeResolver(ssaMeth).run(); 58 private PhiTypeResolver(SsaMethod ssaMeth) { 59 this.ssaMeth = ssaMeth; 60 worklist = new BitSet(ssaMeth.getRegCount()); 68 int regCount = ssaMeth.getRegCount(); 71 SsaInsn definsn = ssaMeth.getDefinitionForRegister(reg) [all...] |
EscapeAnalysis.java | 101 private SsaMethod ssaMeth; 102 /** ssaMeth.getRegCount() */ 110 * @param ssaMeth method to process 112 private EscapeAnalysis(SsaMethod ssaMeth) { 113 this.ssaMeth = ssaMeth; 114 this.regCount = ssaMeth.getRegCount(); 145 ArrayList<SsaInsn> predInsns = ssaMeth.getBlocks().get(pred).getInsns(); 158 ArrayList<SsaInsn> succInsns = ssaMeth.getBlocks().get(succ).getInsns(); 332 List<SsaInsn> useList = ssaMeth.getUseListForRegister(def.getReg()) [all...] |
ConstCollector.java | 66 private final SsaMethod ssaMeth; 84 this.ssaMeth = ssaMethod; 91 int regSz = ssaMeth.getRegCount(); 98 SsaBasicBlock start = ssaMeth.getEntryBlock(); 107 = RegisterSpec.make(ssaMeth.makeNewSsaReg(), cst); 118 SsaBasicBlock entryBlock = ssaMeth.getEntryBlock(); 158 int regSz = ssaMeth.getRegCount(); 172 SsaInsn insn = ssaMeth.getDefinitionForRegister(i); 187 predInsns = ssaMeth.getBlocks().get(pred).getInsns(); 212 if (ssaMeth.isRegALocal(result)) [all...] |
SCCP.java | 46 private SsaMethod ssaMeth; 47 /** ssaMeth.getRegCount() */ 70 private SCCP(SsaMethod ssaMeth) { 71 this.ssaMeth = ssaMeth; 72 this.regCount = ssaMeth.getRegCount(); 77 this.executableBlocks = new BitSet(ssaMeth.getBlocks().size()); 116 for (SsaInsn insn : ssaMeth.getUseListForRegister(reg)) { 120 for (SsaInsn insn : ssaMeth.getUseListForRegister(reg)) { 255 if (!ssaMeth.isRegALocal(specA) & [all...] |
/dalvik/dx/src/com/android/dx/ssa/back/ |
RegisterAllocator.java | 39 protected final SsaMethod ssaMeth; 46 * @param ssaMeth method to process. 50 public RegisterAllocator(SsaMethod ssaMeth, 52 this.ssaMeth = ssaMeth; 80 SsaInsn definition = ssaMeth.getDefinitionForRegister(reg); 98 SsaInsn definition = ssaMeth.getDefinitionForRegister(reg); 111 SsaInsn defInsn = ssaMeth.getDefinitionForRegister(reg); 159 RegisterSpec newRegSpec = RegisterSpec.make(ssaMeth.makeNewSsaReg(), 191 ssaMeth.onInsnsChanged() [all...] |
SsaToRop.java | 48 private final SsaMethod ssaMeth; 62 * @param ssaMeth {@code non-null;} method to process 67 public static RopMethod convertToRopMethod(SsaMethod ssaMeth, 69 return new SsaToRop(ssaMeth, minimizeRegisters).convert(); 75 * @param ssaMeth {@code non-null;} method to process 81 this.ssaMeth = ssaMethod; 97 // allocator = new NullRegisterAllocator(ssaMeth, interference); 98 // allocator = new FirstFitAllocator(ssaMeth, interference); 101 new FirstFitLocalCombiningAllocator(ssaMeth, interference, 111 ssaMeth.setBackMode() [all...] |
LivenessAnalyzer.java | 56 private final SsaMethod ssaMeth; 83 * @param ssaMeth {@code non-null;} method to process 88 SsaMethod ssaMeth) { 89 int szRegs = ssaMeth.getRegCount(); 93 new LivenessAnalyzer(ssaMeth, i, interference).run(); 96 coInterferePhis(ssaMeth, interference); 104 * @param ssaMeth {@code non-null;} method to process 110 private LivenessAnalyzer(SsaMethod ssaMeth, int reg, 112 int blocksSz = ssaMeth.getBlocks().size(); 114 this.ssaMeth = ssaMeth [all...] |
/external/dexmaker/src/dx/java/com/android/dx/ssa/back/ |
RegisterAllocator.java | 41 protected final SsaMethod ssaMeth; 48 * @param ssaMeth method to process. 52 public RegisterAllocator(SsaMethod ssaMeth, 54 this.ssaMeth = ssaMeth; 82 SsaInsn definition = ssaMeth.getDefinitionForRegister(reg); 100 SsaInsn definition = ssaMeth.getDefinitionForRegister(reg); 113 SsaInsn defInsn = ssaMeth.getDefinitionForRegister(reg); 161 RegisterSpec newRegSpec = RegisterSpec.make(ssaMeth.makeNewSsaReg(), 193 ssaMeth.onInsnsChanged() [all...] |
SsaToRop.java | 49 private final SsaMethod ssaMeth; 63 * @param ssaMeth {@code non-null;} method to process 68 public static RopMethod convertToRopMethod(SsaMethod ssaMeth, 70 return new SsaToRop(ssaMeth, minimizeRegisters).convert(); 76 * @param ssaMeth {@code non-null;} method to process 82 this.ssaMeth = ssaMethod; 98 // allocator = new NullRegisterAllocator(ssaMeth, interference); 99 // allocator = new FirstFitAllocator(ssaMeth, interference); 102 new FirstFitLocalCombiningAllocator(ssaMeth, interference, 112 ssaMeth.setBackMode() [all...] |
LivenessAnalyzer.java | 57 private final SsaMethod ssaMeth; 84 * @param ssaMeth {@code non-null;} method to process 89 SsaMethod ssaMeth) { 90 int szRegs = ssaMeth.getRegCount(); 94 new LivenessAnalyzer(ssaMeth, i, interference).run(); 97 coInterferePhis(ssaMeth, interference); 105 * @param ssaMeth {@code non-null;} method to process 111 private LivenessAnalyzer(SsaMethod ssaMeth, int reg, 113 int blocksSz = ssaMeth.getBlocks().size(); 115 this.ssaMeth = ssaMeth [all...] |
/dalvik/dx/src/com/android/dx/command/dump/ |
SsaDumper.java | 94 SsaMethod ssaMeth = null; 99 ssaMeth = Optimizer.debugNoRegisterAllocation(rmeth, 103 ssaMeth = Optimizer.debugEdgeSplit(rmeth, paramWidth, 106 ssaMeth = Optimizer.debugPhiPlacement( 109 ssaMeth = Optimizer.debugRenaming( 112 ssaMeth = Optimizer.debugDeadCodeRemover( 120 ssaMeth.blockIndexToRopLabel(ssaMeth.getEntryBlockIndex()))); 123 ArrayList<SsaBasicBlock> blocks = ssaMeth.getBlocks(); 137 sb.append(Hex.u2(ssaMeth.blockIndexToRopLabel(i))) [all...] |