/dalvik/dexgen/src/com/android/dexgen/dex/code/ |
H A D | InsnFormat.java | 17 package com.android.dexgen.dex.code; 19 import com.android.dexgen.rop.code.RegisterSpecList; 31 * streams of code words, as well as human-oriented listing strings 40 * @param insn {@code non-null;} the instruction 43 * @return {@code non-null;} the string form 69 * has no arguments, then the result should be {@code ""}, not 70 * {@code null}. 74 * @param insn {@code non-null;} the instruction 75 * @return {@code non-null;} the string form 82 * has no comment, then the result should be {@code ""}, no [all...] |
H A D | RopTranslator.java | 17 package com.android.dexgen.dex.code; 19 import com.android.dexgen.rop.code.BasicBlock; 20 import com.android.dexgen.rop.code.BasicBlockList; 21 import com.android.dexgen.rop.code.FillArrayDataInsn; 22 import com.android.dexgen.rop.code.Insn; 23 import com.android.dexgen.rop.code.LocalVariableInfo; 24 import com.android.dexgen.rop.code.PlainCstInsn; 25 import com.android.dexgen.rop.code.PlainInsn; 26 import com.android.dexgen.rop.code.RegOps; 27 import com.android.dexgen.rop.code [all...] |
H A D | LocalList.java | 17 package com.android.dexgen.dex.code; 19 import com.android.dexgen.rop.code.RegisterSpec; 20 import com.android.dexgen.rop.code.RegisterSpecSet; 32 * range of code which it is valid for, a register number, a name, 36 /** {@code non-null;} empty instance */ 39 /** whether to run the self-check code */ 43 * Constructs an instance. All indices initially contain {@code null}. 45 * @param size {@code >= 0;} the size of the list 54 * do that, this will throw {@code NullPointerException}. 56 * @param n {@code > [all...] |
/dalvik/dexgen/src/com/android/dexgen/dex/file/ |
H A D | DebugInfoDecoder.java | 19 import com.android.dexgen.dex.code.DalvCode; 20 import com.android.dexgen.dex.code.DalvInsnList; 21 import com.android.dexgen.dex.code.LocalList; 22 import com.android.dexgen.dex.code.PositionList; 40 * This code exists mostly as a reference implementation and test for 41 * for the {@code DebugInfoEncoder} 53 /** size of code block in code units */ 87 * @param codesize size of code block in code unit 424 validateEncode(byte[] info, DexFile file, CstMethodRef ref, DalvCode code, boolean isStatic) argument [all...] |
/dalvik/dexgen/src/com/android/dexgen/rop/code/ |
H A D | AccessFlags.java | 17 package com.android.dexgen.rop.code; 26 * identical to Java access flags, but {@code ACC_SUPER} isn't 27 * used at all in translated code, and {@code ACC_SYNCHRONIZED} 47 * synchronized method; only valid in dex files for {@code native} 53 * class with new-style {@code invokespecial} for superclass 80 * method with strict floating point ({@code strictfp}) 101 * method was declared {@code synchronized}; has no effect on 150 * @return {@code non-null;} human-oriented string 161 * @return {@code no [all...] |
H A D | Insn.java | 17 package com.android.dexgen.rop.code; 33 /** {@code non-null;} opcode */ 36 /** {@code non-null;} source position */ 39 /** {@code null-ok;} spec for the result of this instruction, if any */ 42 /** {@code non-null;} specs for all the sources of this instruction */ 48 * @param opcode {@code non-null;} the opcode 49 * @param position {@code non-null;} source position 50 * @param result {@code null-ok;} spec for the result, if any 51 * @param sources {@code non-null;} specs for all the sources 77 * {@code [all...] |
H A D | RegisterSpec.java | 17 package com.android.dexgen.rop.code; 33 /** {@code non-null;} string to prefix register numbers with */ 36 /** {@code non-null;} intern table for instances */ 40 /** {@code non-null;} common comparison instance used while interning */ 43 /** {@code >= 0;} register number */ 46 /** {@code non-null;} type loaded or stored */ 49 /** {@code null-ok;} local variable info associated with this register, if any */ 55 * @param reg {@code >= 0;} the register number 56 * @param type {@code non-null;} the type (or possibly actual value) which 58 * @param local {@code nul [all...] |
H A D | RegOps.java | 17 package com.android.dexgen.rop.code; 24 * <p><b>Note:</b> Opcode descriptions use a rough pseudocode. {@code r} 25 * is the result register, {@code x} is the first argument, 26 * {@code y} is the second argument, and {@code z} is the 32 /** {@code nop()} */ 35 /** {@code T: any type; r,x: T :: r = x;} */ 38 /** {@code T: any type; r,param(x): T :: r = param(x)} */ 42 * {@code T: Throwable; r: T :: r = caught_exception}. 49 /** {@code [all...] |
/dalvik/dx/src/com/android/dx/cf/code/ |
H A D | BaseMachine.java | 17 package com.android.dx.cf.code; 19 import com.android.dx.rop.code.RegisterSpec; 20 import com.android.dx.rop.code.LocalItem; 36 /* {@code non-null;} the prototype for the associated method */ 39 /** {@code non-null;} primary arguments */ 42 /** {@code >= 0;} number of primary arguments */ 45 /** {@code null-ok;} type of the operation, if salient */ 48 /** auxiliary {@code int} argument */ 51 /** {@code null-ok;} auxiliary constant argument */ 57 /** {@code nul [all...] |
H A D | BasicBlocker.java | 17 package com.android.dx.cf.code; 32 /** {@code non-null;} method being converted */ 36 * {@code non-null;} work set; bits indicate offsets in need of 42 * {@code non-null;} live set; bits indicate potentially-live 49 * {@code non-null;} block start set; bits indicate the starts of 51 * definitely-dead code 56 * {@code non-null, sparse;} for each instruction offset to a branch of 62 * {@code non-null, sparse;} for each instruction offset to a throwing 73 * definitely-dead code that is identified in the process. 75 * @param method {@code no [all...] |
H A D | BytecodeArray.java | 17 package com.android.dx.cf.code; 35 * Bytecode array, which is part of a standard {@code Code} attribute. 41 /** {@code non-null;} underlying bytes */ 45 * {@code non-null;} constant pool to use when resolving constant 53 * @param bytes {@code non-null;} underlying bytes 54 * @param pool {@code non-null;} constant pool to use when 73 * @return {@code non-null;} the byte array 82 * @return {@code >= 0;} the length of the bytecode array 90 * a {@code Code} attribute. The returned value includes the 91 * array size plus four bytes for {@code code_lengt [all...] |
H A D | RopperMachine.java | 17 package com.android.dx.cf.code; 19 import com.android.dx.rop.code.FillArrayDataInsn; 20 import com.android.dx.rop.code.Insn; 21 import com.android.dx.rop.code.PlainCstInsn; 22 import com.android.dx.rop.code.PlainInsn; 23 import com.android.dx.rop.code.RegOps; 24 import com.android.dx.rop.code.RegisterSpec; 25 import com.android.dx.rop.code.RegisterSpecList; 26 import com.android.dx.rop.code.Rop; 27 import com.android.dx.rop.code [all...] |
H A D | Ropper.java | 17 package com.android.dx.cf.code; 19 import com.android.dx.rop.code.*; 69 /** {@code non-null;} method being converted */ 72 /** {@code non-null;} original block list */ 81 /** {@code non-null;} simulation machine to use */ 84 /** {@code non-null;} simulator to use */ 88 * {@code non-null;} sparse array mapping block labels to initial frame 93 /** {@code non-null;} output block list in-progress */ 97 * {@code non-null;} list of subroutine-nest labels 104 * {@code no [all...] |
/dalvik/dx/src/com/android/dx/dex/code/ |
H A D | DalvInsn.java | 17 package com.android.dx.dex.code; 19 import com.android.dx.rop.code.RegisterSpec; 20 import com.android.dx.rop.code.RegisterSpecList; 21 import com.android.dx.rop.code.SourcePosition; 34 * {@code -1} if not 41 /** {@code non-null;} source position */ 44 /** {@code non-null;} list of register arguments */ 50 * @param position {@code non-null;} source position information 51 * @param dest {@code non-null;} destination register 52 * @param src {@code no [all...] |
H A D | InsnFormat.java | 17 package com.android.dx.dex.code; 19 import com.android.dx.rop.code.RegisterSpec; 20 import com.android.dx.rop.code.RegisterSpecList; 35 * streams of code units, as well as human-oriented listing strings 51 * @param insn {@code non-null;} the instruction 54 * @return {@code non-null;} the string form 80 * has no arguments, then the result should be {@code ""}, not 81 * {@code null}. 85 * @param insn {@code non-null;} the instruction 86 * @return {@code no [all...] |
H A D | OutputFinisher.java | 17 package com.android.dx.dex.code; 21 import com.android.dx.rop.code.LocalItem; 22 import com.android.dx.rop.code.RegisterSpec; 23 import com.android.dx.rop.code.RegisterSpecList; 24 import com.android.dx.rop.code.RegisterSpecSet; 25 import com.android.dx.rop.code.SourcePosition; 43 /** {@code non-null;} options for dex output */ 47 * {@code >= 0;} register count for the method, not including any extra 52 /** {@code non-null;} the list of instructions, per se */ 62 * {@code > [all...] |
H A D | RopTranslator.java | 17 package com.android.dx.dex.code; 21 import com.android.dx.rop.code.BasicBlock; 22 import com.android.dx.rop.code.BasicBlockList; 23 import com.android.dx.rop.code.FillArrayDataInsn; 24 import com.android.dx.rop.code.Insn; 25 import com.android.dx.rop.code.LocalVariableInfo; 26 import com.android.dx.rop.code.PlainCstInsn; 27 import com.android.dx.rop.code.PlainInsn; 28 import com.android.dx.rop.code.RegOps; 29 import com.android.dx.rop.code [all...] |
H A D | LocalList.java | 17 package com.android.dx.dex.code; 19 import com.android.dx.rop.code.RegisterSpec; 20 import com.android.dx.rop.code.RegisterSpecSet; 32 * range of code which it is valid for, a register number, a name, 36 /** {@code non-null;} empty instance */ 39 /** whether to run the self-check code */ 43 * Constructs an instance. All indices initially contain {@code null}. 45 * @param size {@code >= 0;} the size of the list 54 * do that, this will throw {@code NullPointerException}. 56 * @param n {@code > [all...] |
/dalvik/dx/src/com/android/dx/dex/file/ |
H A D | DebugInfoDecoder.java | 19 import com.android.dx.dex.code.DalvCode; 20 import com.android.dx.dex.code.DalvInsnList; 21 import com.android.dx.dex.code.LocalList; 22 import com.android.dx.dex.code.PositionList; 41 * This code exists mostly as a reference implementation and test for 42 * for the {@code DebugInfoEncoder} 54 /** size of code block in code units */ 88 * @param codesize size of code block in code unit 418 validateEncode(byte[] info, DexFile file, CstMethodRef ref, DalvCode code, boolean isStatic) argument [all...] |
/dalvik/dx/src/com/android/dx/rop/code/ |
H A D | AccessFlags.java | 17 package com.android.dx.rop.code; 26 * identical to Java access flags, but {@code ACC_SUPER} isn't 27 * used at all in translated code, and {@code ACC_SYNCHRONIZED} 47 * synchronized method; only valid in dex files for {@code native} 53 * class with new-style {@code invokespecial} for superclass 80 * method with strict floating point ({@code strictfp}) 101 * method was declared {@code synchronized}; has no effect on 150 * @return {@code non-null;} human-oriented string 161 * @return {@code no [all...] |
H A D | Insn.java | 17 package com.android.dx.rop.code; 31 /** {@code non-null;} opcode */ 34 /** {@code non-null;} source position */ 37 /** {@code null-ok;} spec for the result of this instruction, if any */ 40 /** {@code non-null;} specs for all the sources of this instruction */ 46 * @param opcode {@code non-null;} the opcode 47 * @param position {@code non-null;} source position 48 * @param result {@code null-ok;} spec for the result, if any 49 * @param sources {@code non-null;} specs for all the sources 75 * {@code [all...] |
H A D | RegisterSpec.java | 17 package com.android.dx.rop.code; 33 /** {@code non-null;} string to prefix register numbers with */ 36 /** {@code non-null;} intern table for instances */ 40 /** {@code non-null;} common comparison instance used while interning */ 43 /** {@code >= 0;} register number */ 46 /** {@code non-null;} type loaded or stored */ 50 * {@code null-ok;} local variable info associated with this register, 58 * @param reg {@code >= 0;} the register number 59 * @param type {@code non-null;} the type (or possibly actual value) which 61 * @param local {@code nul [all...] |
H A D | RegOps.java | 17 package com.android.dx.rop.code; 24 * <p><b>Note:</b> Opcode descriptions use a rough pseudocode. {@code r} 25 * is the result register, {@code x} is the first argument, 26 * {@code y} is the second argument, and {@code z} is the 32 /** {@code nop()} */ 35 /** {@code T: any type; r,x: T :: r = x;} */ 38 /** {@code T: any type; r,param(x): T :: r = param(x)} */ 42 * {@code T: Throwable; r: T :: r = caught_exception}. 49 /** {@code [all...] |
/dalvik/vm/compiler/codegen/arm/Thumb2/ |
H A D | Gen.cpp | 33 * ...and then code to increment the execution 44 * and return the size (in bytes) of the generated code. 167 static ArmLIR *genIT(CompilationUnit *cUnit, ArmConditionCode code, argument 171 int condBit = code & 1; 194 return newLIR2(cUnit, kThumb2It, code, mask); 226 * Of particular interest to this code is the test for the
|
/dalvik/dx/src/com/android/dx/merge/ |
H A D | DexMerger.java | 133 codeOut = dexOut.appendSection(writerSizes.code, "code"); 632 * Reads a class_def_item beginning at {@code in} and writes the index and 784 private void transformCode(DexBuffer in, Code code, IndexMap indexMap) { argument 788 codeOut.writeUnsignedShort(code.getRegistersSize()); 789 codeOut.writeUnsignedShort(code.getInsSize()); 790 codeOut.writeUnsignedShort(code.getOutsSize()); 792 Code.Try[] tries = code.getTries(); 793 Code.CatchHandler[] catchHandlers = code.getCatchHandlers(); 796 int debugInfoOffset = code 978 private int code; field in class:DexMerger.WriterSizes [all...] |