fe107fb6e3f308ac5174ebdc5a794ee880c741d9 |
|
17-Sep-2011 |
Jesse Wilson <jessewilson@google.com> |
Mechanical refactoring of dx into two parts. This splits off a new package, com.android.dex that contains code for parsing and modelling dex files. This code is usable both at build time (for compilation and analysis) and at runtime (for introspection). The original package, com.android.dx is the tool that compiles .class files into .dex files. That package also includes utilities for merging and querying dex files, all visible to the dx command line application. In a follow up change I'll move the new com.android.dex package into the libcore/ project, and configure build rules so that it's included in both dx.jar and core.jar. The core.jar will then be able to use it for annotation processing. Change-Id: I3c58cf87e728e4dda1925a0992c1ee7b8130e81a (cherry picked from commit bab4abb07335d162ecdb8091fc395cf84803a580) Conflicts: dx/junit-tests/com/android/dx/util/BitIntSetTest.java dx/junit-tests/com/android/dx/util/BitsTest.java dx/junit-tests/com/android/dx/util/IntListTest.java dx/junit-tests/com/android/dx/util/ListIntSetTest.java dx/src/com/android/dex/Dex.java dx/src/com/android/dex/TableOfContents.java dx/src/com/android/dx/annotations/AnnotationAccess.java dx/src/com/android/dx/command/Main.java dx/src/com/android/dx/dex/code/OutputFinisher.java dx/src/com/android/dx/dex/code/form/Form32s.java dx/src/com/android/dx/dex/code/form/Form33x.java dx/src/com/android/dx/dex/code/form/Form41c.java dx/src/com/android/dx/dex/code/form/Form52c.java dx/src/com/android/dx/gen/DexGenerator.java dx/src/com/android/dx/merge/DexMerger.java
|
7debb9113af41a38a6f5ecbda1a2c28c5e5a17af |
|
27-Aug-2011 |
jeffhao <jeffhao@google.com> |
Dx reg allocator fix for accidental long/double clobbering. Addresses this bug: http://b/issue?id=5215643. Change-Id: I82613c38b0a6247d071aa6c5cc90bf8b60d5d84b
|
0e002d447f73dfbad6cecd2657152cfce08d4335 |
|
02-Aug-2011 |
jeffhao <jeffhao@google.com> |
Rollback of dx change to prevent methods from being overwritten. Rolls back: I999013858501e7de3df27f82199d377fb1d034ea Change-Id: Id67611b0153d49a81a2fbe0aaa8a7c9a9784987c
|
adb1446cc9ee4b27b053854b54f34ec1b595c727 |
|
02-Aug-2011 |
jeffhao <jeffhao@google.com> |
Dx fit to prevent method arguments from being overwritten by temps. This change keeps code debuggable by preventing method arguments from being reused to hold temporary values. This was a problem especially for static methods. Change-Id: I999013858501e7de3df27f82199d377fb1d034ea
|
38b61748553bd387bc36b6bd82a8667b6c5f5934 |
|
24-Mar-2011 |
jeffhao <jeffhao@google.com> |
Various dx fixes to make it preserve locals and debug info. The SCCP pass checks if a register has associated local info before attepting to prune branches or replace values with constants. Also, the register allocator reserves a register for each local in a method. This could be later improved by only reserving registers for the lengths of their lifetimes as specified by the local info table. Change-Id: I654ac014a9aac530f1db0db7d5cdef7535ff49bf
|
2e31a719118f7b6c8d6c987d27532c29530cc9c8 |
|
17-Mar-2011 |
jeffhao <jeffhao@google.com> |
Register allocator uses single reg for each local when possible. Changes the register allocator to try much harder to map all SSA regs associated with a local variable to the same register. Also, the register allocator won't try to reuse parameter space for locals like it used to, which would often lead to many unnecessary moves. Change-Id: Ie012072015993204ef4b3f4e74a0eb94fdb10bc1
|
b6f966024be7d6dd260735c9e541e23572f26f37 |
|
28-Feb-2011 |
jeffhao <jeffhao@google.com> |
Improved register allocation for check-cast instructions. Check-cast instructions that don't use the same register for source and destination no longer use an intermediate register due to expansion. This saves a move instruction and, in some cases, a register. Change-Id: Ib704fe51ec172e05efbff708e8b63004457cc8cb
|
1acb3f560b45df68d5acdcb2759de1f78ef5da7c |
|
24-Feb-2011 |
jeffhao <jeffhao@google.com> |
Changed dx register allocator to place more phis and reuse locals. This change makes the register allocator try to place all phis earlier, by using whichever register is most common among its sources and result. In addition, the code tries much harder to reuse registers originally reserved for locals if they are no longer live. This leads to fewer registers in many methods. Change-Id: I5f69320686184f784384f5cf3a1d9c97e44ec19d
|
6ca2505711b24a91385c6bf46dbef5c404dcf65f |
|
29-Jan-2011 |
jeffhao <jeffhao@google.com> |
Changed reg allocator to try mapping phi sources/result to the same reg. The current registor allocator is pretty greedy in how it chooses to allocate registers. This change makes it attempt to try to map the sources and result of a phi to the same register if one of them already has a mapping and that mapping is compatible with the others. This saves on some register shuffling when the original greedy method got unlucky. Change-Id: I8afa430ce2ba8d034a9c0452a247d5943bc9cf37
|
72e93344b4d1ffc71e9c832ec23de0657e5b04a5 |
|
13-Nov-2009 |
Jean-Baptiste Queru <jbq@google.com> |
eclair snapshot
|
64986d4f1b50a5f3a12e05eb179ae9ad555814e7 |
|
05-May-2009 |
Dan Bornstein <danfuzz@android.com> |
A foolish consistency is the hobgoblin of little minds. -- Ralph Waldo Emerson
|
41aecd0a6bfea1e9a6713014b2b3d56fec8c552c |
|
04-May-2009 |
Dan Bornstein <danfuzz@android.com> |
Tweaks, Mostly grep-based, to better conform to the coding guidelines.
|
99409883d9c4c0ffb49b070ce307bb33a9dfe9f1 |
|
19-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import //branches/master/...@140412
|
f6c387128427e121477c1b32ad35cdcaa5101ba3 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
f72d5de56a522ac3be03873bdde26f23a5eeeb3c |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
|
2ad60cfc28e14ee8f0bb038720836a4696c478ad |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
|