/dalvik/dx/src/com/android/dx/ssa/ |
H A D | 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, argument 156 MoveParamCombiner.process(ssaMeth); [all...] |
H A D | MoveParamCombiner.java | 36 private final SsaMethod ssaMeth; field in class:MoveParamCombiner 47 private MoveParamCombiner(SsaMethod ssaMeth) { argument 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 [all...] |
H A D | PhiTypeResolver.java | 46 SsaMethod ssaMeth; field in class:PhiTypeResolver 52 * @param ssaMeth method to process 54 public static void process (SsaMethod ssaMeth) { argument 55 new PhiTypeResolver(ssaMeth).run(); 58 private PhiTypeResolver(SsaMethod ssaMeth) { argument 59 this.ssaMeth = ssaMeth; 60 worklist = new BitSet(ssaMeth.getRegCount()); 68 int regCount = ssaMeth.getRegCount(); 71 SsaInsn definsn = ssaMeth [all...] |
H A D | DeadCodeRemover.java | 40 private final SsaMethod ssaMeth; field in class:DeadCodeRemover 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 [all...] |
H A D | ConstCollector.java | 66 private final SsaMethod ssaMeth; field in class:ConstCollector 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 [all...] |
H A D | SsaConverter.java | 68 * @param ssaMeth input 71 public static void updateSsaMethod(SsaMethod ssaMeth, int threshold) { argument 72 LocalVariableInfo localInfo = LocalVariableExtractor.extract(ssaMeth); 73 placePhiFunctions(ssaMeth, localInfo, threshold); 74 new SsaRenamer(ssaMeth, threshold).run(); 185 * @param ssaMeth method to process 187 private static void edgeSplitMoveExceptionsAndResults(SsaMethod ssaMeth) { argument 188 ArrayList<SsaBasicBlock> blocks = ssaMeth.getBlocks(); 281 * @param ssaMeth {@code non-null;} method to process. 287 private static void placePhiFunctions (SsaMethod ssaMeth, argument [all...] |
H A D | SsaRenamer.java | 67 private final SsaMethod ssaMeth; field in class:SsaRenamer 98 * @param ssaMeth {@code non-null;} un-renamed SSA method that will 101 public SsaRenamer(SsaMethod ssaMeth) { argument 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, in argument [all...] |
H A D | LiteralOpUpgrader.java | 44 private final SsaMethod ssaMeth; field in class:LiteralOpUpgrader 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);
|
H A D | SCCP.java | 46 private SsaMethod ssaMeth; field in class:SCCP 47 /** ssaMeth.getRegCount() */ 70 private SCCP(SsaMethod ssaMeth) { argument 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 [all...] |
H A D | EscapeAnalysis.java | 101 private SsaMethod ssaMeth; field in class:EscapeAnalysis 102 /** ssaMeth.getRegCount() */ 110 * @param ssaMeth method to process 112 private EscapeAnalysis(SsaMethod ssaMeth) { argument 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 [all...] |
H A D | PhiInsn.java | 88 * @param ssaMeth method that contains this insn 90 public void updateSourcesToDefinitions(SsaMethod ssaMeth) { argument 93 = ssaMeth.getDefinitionForRegister( 293 * @param ssaMeth method we're operating on 296 public List<SsaBasicBlock> predBlocksForReg(int reg, SsaMethod ssaMeth) { argument 301 ret.add(ssaMeth.getBlocks().get(o.blockIndex));
|
/dalvik/dx/src/com/android/dx/ssa/back/ |
H A D | NullRegisterAllocator.java | 33 public NullRegisterAllocator(SsaMethod ssaMeth, argument 35 super(ssaMeth, interference); 48 int oldRegCount = ssaMeth.getRegCount();
|
H A D | LivenessAnalyzer.java | 57 private final SsaMethod ssaMeth; field in class:LivenessAnalyzer 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, argument 113 int blocksSz = ssaMeth.getBlocks().size(); 115 this.ssaMeth 88 constructInterferenceGraph( SsaMethod ssaMeth) argument 258 coInterferePhis(SsaMethod ssaMeth, InterferenceGraph interference) argument [all...] |
H A D | SsaToRop.java | 49 private final SsaMethod ssaMeth; field in class:SsaToRop 63 * @param ssaMeth {@code non-null;} method to process 68 public static RopMethod convertToRopMethod(SsaMethod ssaMeth, argument 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 [all...] |
H A D | RegisterAllocator.java | 41 protected final SsaMethod ssaMeth; field in class:RegisterAllocator 48 * @param ssaMeth method to process. 52 public RegisterAllocator(SsaMethod ssaMeth, argument 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 [all...] |
H A D | FirstFitAllocator.java | 48 final SsaMethod ssaMeth, final InterferenceGraph interference) { 49 super(ssaMeth, interference); 51 mapped = new BitSet(ssaMeth.getRegCount()); 63 int oldRegCount = ssaMeth.getRegCount(); 77 nextNewRegister = ssaMeth.getParamWidth(); 97 ssaMeth.getDefinitionForRegister(i); 47 FirstFitAllocator( final SsaMethod ssaMeth, final InterferenceGraph interference) argument
|
H A D | FirstFitLocalCombiningAllocator.java | 79 * @param ssaMeth {@code non-null;} method to process 85 SsaMethod ssaMeth, InterferenceGraph interference, 87 super(ssaMeth, interference); 89 ssaRegsMapped = new BitSet(ssaMeth.getRegCount()); 92 interference, ssaMeth.getRegCount()); 102 paramRangeEnd = ssaMeth.getParamWidth(); 217 SsaInsn defInsn = ssaMeth.getDefinitionForRegister(ssaReg); 361 return startReg == 0 && !ssaMeth.isStatic(); 425 int szSsaRegs = ssaMeth.getRegCount(); 468 ssaMeth 84 FirstFitLocalCombiningAllocator( SsaMethod ssaMeth, InterferenceGraph interference, boolean minimizeRegisters) argument [all...] |
/dalvik/dx/src/com/android/dx/command/dump/ |
H A D | SsaDumper.java | 102 SsaMethod ssaMeth = null; 107 ssaMeth = Optimizer.debugNoRegisterAllocation(rmeth, 111 ssaMeth = Optimizer.debugEdgeSplit(rmeth, paramWidth, 114 ssaMeth = Optimizer.debugPhiPlacement( 117 ssaMeth = Optimizer.debugRenaming( 120 ssaMeth = Optimizer.debugDeadCodeRemover( 128 ssaMeth.blockIndexToRopLabel(ssaMeth.getEntryBlockIndex()))); 131 ArrayList<SsaBasicBlock> blocks = ssaMeth.getBlocks(); 145 sb.append(Hex.u2(ssaMeth [all...] |