9dbd802c8c96c3a66873bc600bc7d1374a1d08e5 |
|
31-Aug-2017 |
Orion Hodson <oth@google.com> |
dx: Minor code clean-up A few automated code clean-ups: - Insert missing @Override annotations. - Make fields final where possible. - Use StringBuilder rather StringBuffer for local use. - Clean-up imports. Bug: 65231722 Test: dx/tests/run-all-tests Change-Id: I49810f1d43cb53ad32636a66eda2fadc538ba249
|
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
|
7e85b634fbafa4a3b927c80665dea6fac337d886 |
|
15-Sep-2011 |
Jesse Wilson <jessewilson@google.com> |
Teach dex how to parse encoded values from .dex files. Previously primitive values were treated as opaque byte arrays. Now the encoded values can be interpreted as their proper types: integers, indices, floats, chars, etc. This gets complicated pretty fast due to the dense packing dx performs when encoding the values. The encoding code is moved from ValueEncoder. The decoding code is ported from C++ to Java from Annotation.cpp. There's a bunch of new tests to make sure the decoding is correct; porting from C++ to Java was tricky because of the '>>' shifts on unsigned values. The test input data is generated by dex! Change-Id: I83b2fc3e16115d667fa94b3dab782d1a9687f3ad (cherry picked from commit 27847605b9255358f0577ffec28886c450263898)
|
6bf7f30e6968d9917eb4d0ca2280df96a8096134 |
|
24-Mar-2011 |
Jesse Wilson <jessewilson@google.com> |
Use PrintWriter rather than PrintStream in dex analysis tools. Writers make it easier to create strings, useful when these tools are used as building blocks for other tools. Change-Id: I8eac49719b130551df216f42eaafb942203da0d0
|
ae38a1e705253b53abf1beff7dc3467d52c58f32 |
|
08-Mar-2011 |
Jesse Wilson <jessewilson@google.com> |
Add a tool to grep the strings in a dex file. Change-Id: I21b8537518718350def2f847e9c76ae4154bd4d6 http://b/4026001
|