/dalvik/dexgen/src/com/android/dexgen/dex/code/ |
H A D | BlockAddresses.java | 27 * the blocks of a particular method. Each block has a corresponding 32 * block (indexed by basic block label) */ 36 * of each basic block (indexed by basic block label) */ 40 * final instruction) of each basic block (indexed by basic block 47 * @param method {@code non-null;} the method to have block addresses for 61 * Gets the instance for the start of the given block. 63 * @param block { 66 getStart(BasicBlock block) argument 86 getLast(BasicBlock block) argument 108 getEnd(BasicBlock block) argument [all...] |
H A D | StdCatchBuilder.java | 41 /** {@code non-null;} block output order */ 44 /** {@code non-null;} address objects for each block */ 52 * @param order {@code non-null;} block output order 53 * @param addresses {@code non-null;} address objects for each block 85 BasicBlock block = blocks.get(i); 86 TypeList catches = block.getLastInsn().getCatches(); 102 BasicBlock block = blocks.get(i); 103 TypeList catches = block.getLastInsn().getCatches(); 118 * @param order {@code non-null;} block output order 119 * @param addresses {@code non-null;} address objects for each block 216 handlersFor(BasicBlock block, BlockAddresses addresses) argument [all...] |
H A D | RopTranslator.java | 73 /** {@code null-ok;} block output order; becomes non-null in {@link #pickOrder} */ 130 * objects per basic block (to the first and last instruction, 131 * and just past the end of the block), and the possibility of 132 * an extra goto at the end of each basic block. 139 * extra instruction per block (for the locals state at the 140 * start of the block) as well as one for each interblock 179 * We almost could just check the first block here, but the 181 * subsequent block in the case of synchronized methods. 233 * and output of one block. 235 * @param block { 239 outputBlock(BasicBlock block, int nextLabel) argument 493 private BasicBlock block; field in class:RopTranslator.TranslationVisitor 517 setBlock(BasicBlock block, CodeAddress lastAddress) argument [all...] |
/dalvik/dx/src/com/android/dx/dex/code/ |
H A D | BlockAddresses.java | 27 * the blocks of a particular method. Each block has a corresponding 32 * block (indexed by basic block label) */ 36 * of each basic block (indexed by basic block label) */ 40 * final instruction) of each basic block (indexed by basic block 47 * @param method {@code non-null;} the method to have block addresses for 61 * Gets the instance for the start of the given block. 63 * @param block { 66 getStart(BasicBlock block) argument 86 getLast(BasicBlock block) argument 108 getEnd(BasicBlock block) argument [all...] |
H A D | StdCatchBuilder.java | 41 /** {@code non-null;} block output order */ 44 /** {@code non-null;} address objects for each block */ 52 * @param order {@code non-null;} block output order 53 * @param addresses {@code non-null;} address objects for each block 85 BasicBlock block = blocks.get(i); 86 TypeList catches = block.getLastInsn().getCatches(); 102 BasicBlock block = blocks.get(i); 103 TypeList catches = block.getLastInsn().getCatches(); 118 * @param order {@code non-null;} block output order 119 * @param addresses {@code non-null;} address objects for each block 216 handlersFor(BasicBlock block, BlockAddresses addresses) argument [all...] |
H A D | RopTranslator.java | 77 /** {@code null-ok;} block output order; becomes non-null in {@link #pickOrder} */ 136 * objects per basic block (to the first and last instruction, 137 * and just past the end of the block), and the possibility of 138 * an extra goto at the end of each basic block. 145 * extra instruction per block (for the locals state at the 146 * start of the block) as well as one for each interblock 185 * We almost could just check the first block here, but the 187 * subsequent block in the case of synchronized methods. 240 * and output of one block. 242 * @param block { 246 outputBlock(BasicBlock block, int nextLabel) argument 500 private BasicBlock block; field in class:RopTranslator.TranslationVisitor 524 setBlock(BasicBlock block, CodeAddress lastAddress) argument [all...] |
/dalvik/dexgen/src/com/android/dexgen/rop/code/ |
H A D | LocalVariableInfo.java | 34 * {@code non-null;} {@link RegisterSpecSet} to use when indicating a block 42 * sets of variables already assigned upon entry to each block, 43 * where array indices correspond to block labels 73 * Sets the register set associated with the start of the block with 76 * @param label {@code >= 0;} the block label 77 * @param specs {@code non-null;} the register set to associate with the block 95 * Merges the given register set into the set for the block with the 101 * @param label {@code >= 0;} the block label 103 * for the block 131 * Gets the register set associated with the start of the block 152 getStarts(BasicBlock block) argument [all...] |
H A D | BasicBlockList.java | 37 * and the first-block label is initially {@code -1}. 50 * @param old block to copy 71 * Sets the basic block at the given index. 103 * sum of the instruction counts of each block. 152 * Gets the first block in the list with the given label, if any. 155 * @return {@code non-null;} the so-labelled block 170 * Visits each instruction of each block in the list, in order. 221 * Gets the preferred successor for the given block. If the block 223 * Otherwise, if the block ha 230 preferredSuccessorOf(BasicBlock block) argument [all...] |
/dalvik/dx/src/com/android/dx/rop/code/ |
H A D | LocalVariableInfo.java | 34 * {@code non-null;} {@link RegisterSpecSet} to use when indicating a block 42 * sets of variables already assigned upon entry to each block, 43 * where array indices correspond to block labels 73 * Sets the register set associated with the start of the block with 76 * @param label {@code >= 0;} the block label 77 * @param specs {@code non-null;} the register set to associate with the block 95 * Merges the given register set into the set for the block with the 101 * @param label {@code >= 0;} the block label 103 * for the block 135 * Gets the register set associated with the start of the block 156 getStarts(BasicBlock block) argument [all...] |
H A D | BasicBlockList.java | 37 * and the first-block label is initially {@code -1}. 50 * @param old block to copy 71 * Sets the basic block at the given index. 103 * sum of the instruction counts of each block. 151 * Gets the first block in the list with the given label, if any. 154 * @return {@code non-null;} the so-labelled block 169 * Visits each instruction of each block in the list, in order. 220 * Gets the preferred successor for the given block. If the block 222 * Otherwise, if the block ha 229 preferredSuccessorOf(BasicBlock block) argument [all...] |
/dalvik/dx/src/com/android/dx/ssa/ |
H A D | LocalVariableInfo.java | 36 * {@code non-null;} {@link com.android.dx.rop.code.RegisterSpecSet} to use when indicating a block 44 * sets of variables already assigned upon entry to each block, 45 * where array indices correspond to block indices 74 * Sets the register set associated with the start of the block with 77 * @param index {@code >= 0;} the block index 78 * @param specs {@code non-null;} the register set to associate with the block 96 * Merges the given register set into the set for the block with the 102 * @param index {@code >= 0;} the block index 104 * for the block 132 * Gets the register set associated with the start of the block 153 getStarts(SsaBasicBlock block) argument [all...] |
H A D | SsaConverter.java | 56 * The exit block, added here, is not considered for edge splitting 127 * requiring each block with a final instruction that returns a 150 * New blocks are added to the end of the block list during 154 SsaBasicBlock block = blocks.get(i); 155 if (nodeNeedsUniquePredecessor(block)) { 156 block.insertNewPredecessor(); 162 * @param block {@code non-null;} block in question 166 private static boolean nodeNeedsUniquePredecessor(SsaBasicBlock block) { argument 168 * Any block wit 266 needsNewSuccessor(SsaBasicBlock block, SsaBasicBlock succ) argument [all...] |
H A D | Dominators.java | 53 /** indexed by basic block index */ 94 private BitSet getSuccs(SsaBasicBlock block) { argument 96 return block.getPredecessors(); 98 return block.getSuccessors(); 102 private BitSet getPreds(SsaBasicBlock block) { argument 104 return block.getSuccessors(); 106 return block.getPredecessors(); 113 * @param in Basic block whose DFS info we are path compressing. 252 * from the entry block or the exit block) [all...] |
H A D | NormalSsaInsn.java | 32 * @param block block that contains this insn 34 NormalSsaInsn(final Insn insn, final SsaBasicBlock block) { argument 35 super(insn.getResult(), block);
|
H A D | SsaInsn.java | 26 /** {@code non-null;} the block that contains this instance */ 27 private final SsaBasicBlock block; field in class:SsaInsn 36 * @param block {@code non-null;} block containing this insn. Can 39 protected SsaInsn(RegisterSpec result, SsaBasicBlock block) { argument 40 if (block == null) { 41 throw new NullPointerException("block == null"); 44 this.block = block; 52 * @param block { 55 makeFromRop(Insn insn, SsaBasicBlock block) argument [all...] |
H A D | PhiInsn.java | 53 * @param block block containing this insn. 55 public PhiInsn(RegisterSpec resultReg, SsaBasicBlock block) { argument 56 super(resultReg, block); 64 * @param block block containing this insn. 66 public PhiInsn(final int resultReg, final SsaBasicBlock block) { argument 71 super(RegisterSpec.make(resultReg, Type.VOID), block); 126 * @param predBlock predecessor block to be associated with this operand 157 * Gets the index of the pred block associate [all...] |
H A D | SCCP.java | 57 /** Bitset containing bits for each block that has been found executable */ 96 * Adds a SSA basic block to the CFG worklist if it's unexecuted, or 200 * Simulate a block and note the results in the lattice. 201 * @param block Block to visit 203 private void simulateBlock(SsaBasicBlock block) { argument 204 for (SsaInsn insn : block.getInsns()) { 214 * Simulate the phis in a block and note the results in the lattice. 215 * @param block Block to visit 217 private void simulatePhiBlock(SsaBasicBlock block) { argument 218 for (SsaInsn insn : block [all...] |
H A D | SsaRenamer.java | 58 * a mapping table for the current block being processed. Once the 59 * current block has been processed, this mapping table is then copied 79 * indexed by block index; register version state for each block start. 142 // Initial state for entry block 163 // Rename each block in dom-tree DFS order. 165 public void visitBlock (SsaBasicBlock block, 167 new BlockRenamer(block).process(); 274 * Processes all insns in a block and renames their registers 278 /** {@code non-null;} block w 279 private final SsaBasicBlock block; field in class:SsaRenamer.BlockRenamer 310 BlockRenamer(final SsaBasicBlock block) argument [all...] |
H A D | SsaMethod.java | 42 /** basic blocks, indexed by block index */ 45 /** Index of first executed block in method */ 49 * Index of exit block, which exists only in SSA form, 129 * Builds a BitSet of block indices from a basic block list and a list 133 * @param labelList list of rop block labels 134 * @return BitSet of block indices 148 * Builds an IntList of block indices from a basic block list and a list 152 * @param labelList list of rop block label 225 getGoto(SsaBasicBlock block) argument [all...] |
/dalvik/dx/src/com/android/dx/ssa/back/ |
H A D | IdenticalBlockCombiner.java | 34 * block and the now-unused blocks are deleted. These identical blocks 55 * a hash. In particular, hash the contents of each block and only 65 // For each non-deleted block... 70 // doomed block 124 * @param a {@code non-null;} a block to compare 125 * @param b {@code non-null;} another block to compare 133 * Combines blocks proven identical into one alpha block, re-writing 135 * to the alpha block instead. 137 * @param alphaLabel block that will replace all the beta block 164 replaceSucc(BasicBlock block, int oldLabel, int newLabel) argument [all...] |
H A D | SsaToRop.java | 135 * there. Furthermore, any no-op block between the exit block and 164 * predecessor block. 169 for (SsaBasicBlock block : blocks) { 171 block.forEachPhiInsn(new PhiVisitor(blocks)); 174 block.removeAllPhiInsns(); 181 for (SsaBasicBlock block : blocks) { 182 block.scheduleMovesFromPhis(); 240 * @return rop-form basic block list 245 // Exit block ma 298 convertBasicBlock(SsaBasicBlock block) argument [all...] |
/dalvik/libdex/ |
H A D | sha1.cpp | 117 #define blk0(i) (block->l[i]=(rol(block->l[i],24)&0xFF00FF00) \ 118 |(rol(block->l[i],8)&0x00FF00FF)) 120 #define blk0(i) block->l[i] 122 #define blk(i) (block->l[i&15] = rol(block->l[(i+13)&15]^block->l[(i+8)&15] \ 123 ^block->l[(i+2)&15]^block->l[i&15],1)) 133 /* Hash a single 512-bit block 143 CHAR64LONG16* block; local [all...] |
/dalvik/vm/analysis/ |
H A D | Liveness.cpp | 82 * Allocate space for intra-block work set. Does not include space 92 * We continue until all blocks have been visited, and no block 108 * If a block is marked "changed", we stop and handle it. If it 122 VfyBasicBlock* block = vdata->basicBlocks[idx]; local 123 if (block == NULL) 126 if (block->changed) { 127 workBlock = block; 129 } else if (!block->visited) { 130 workBlock = block; 145 * after the last instruction in the block ha [all...] |
H A D | VfyBasicBlock.cpp | 18 * Verifier basic block functions. 59 * switch statement block. 69 * Alloc a basic block in the specified slot. The storage will be 113 * Allocate the target basic block if necessary. This will happen 136 ALOGV("ODD: point set for targ=0x%04x (%p) already had block " 251 VfyBasicBlock* block = vdata->basicBlocks[idx]; local 252 if (block == NULL) 255 assert(block->firstAddr == idx); 257 block->firstAddr, block 542 VfyBasicBlock* block = vdata->basicBlocks[idx]; local [all...] |
/dalvik/vm/compiler/ |
H A D | Utility.cpp | 23 /* Allocate the initial memory block for arena-based allocation */ 92 ArenaMemBlock *block; local 94 for (block = arenaHead; block; block = block->next) { 95 block->bytesAllocated = 0; 193 ALOGD(" Taken branch: block %d (%04x)", 197 ALOGD(" Fallthrough : block %d (%04x)", 397 snprintf(name, BLOCK_NAME_LEN, "block [all...] |