• Home
  • History
  • Annotate
  • only in /external/smali/baksmali/src/main/java/org/jf/
History log of /external/smali/baksmali/src/main/java/org/jf/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
eae0b0edbf3f0feedc289655144c54d27cb2ddcc 12-Dec-2013 Ben Gruver <bgruv@google.com> Make sure we always shut down the executor

Previously, an ExecutionException from the task could cause the process
to hang, because the ExecutorService was never shut down
aksmali/baksmali.java
338db9fdf7ef6db58238b7f6d90712f59f69b7bf 08-Dec-2013 Ben Gruver <bgruv@google.com> Fix up option parsing code for resource id stuff to use 'i'
aksmali/main.java
68564258a316e41cb014f98d2777b5944bf37de3 07-Dec-2013 Ben Gruver <bgruv@google.com> occured -> occurred
aksmali/baksmali.java
d0c0c84d66954b0ad02efe92778d924e09a240af 07-Dec-2013 Ben Gruver <bgruv@google.com> Don't System.exit from baksmali.disassembleClass
aksmali/baksmali.java
65cb1628a00f853705955056f4c4e7161ad124fb 06-Dec-2013 Ben Gruver <bgruv@google.com> Remove --check-package-private-access option

This ties the functionality to api >= 17
aksmali/main.java
4f2620415d505a35d2d14b866cde10a54b1b7c8c 05-Dec-2013 Ben Gruver <bgruv@google.com> Add better handling for various types of invalid instructions
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/baksmaliOptions.java
aksmali/main.java
20b7bbf63e7c689316b8fbc28ecd1212ab4fe6b9 19-Nov-2013 Jeff Smith <whydoubt@yahoo.com> baksmali: Only perform resource ID lookup once
aksmali/Adaptors/Format/InstructionMethodItem.java
9cf653f0936511280bd37bb69301f716732dcf4c 19-Nov-2013 Jeff Smith <whydoubt@yahoo.com> baksmali: resource-id-files should not be a debug option
aksmali/main.java
d607960cffa1db7791601ad383cfd22f128a6ff5 19-Nov-2013 Jeff Smith <whydoubt@yahoo.com> baksmali: Reverse pair ordering in resource-id-files option
aksmali/baksmaliOptions.java
aksmali/main.java
eb0b009971653400809fa43c51d2ce99cb5c52b9 14-Nov-2013 Jeff Smith <whydoubt@yahoo.com> baksmali: resource IDs are 32-bit
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/baksmali.java
aksmali/baksmaliOptions.java
7e9231a211bf00451229d88edb5c7fbd5085f73e 11-Nov-2013 Jeff Smith <whydoubt@yahoo.com> baksmali: Write comments about matched resource IDs
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
29d4ccc8a9a0001c084f46223416ba9ae08c2a0a 10-Nov-2013 Jeff Smith <whydoubt@yahoo.com> baksmali: add command-line option to specify resource ID files
aksmali/baksmali.java
aksmali/baksmaliOptions.java
aksmali/main.java
44c5c07c5724e9448d803b3585c9ef47117c3d4e 29-Sep-2013 Ben Gruver <bgruv@google.com> Don't output parameter names when using the -b/--no-debug-info option
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/MethodDefinition.java
f7d6d5fadec6276246194a55b6aefe4815b50ace 15-Sep-2013 Ben Gruver <bgruv@google.com> Gracefully handle instructions with invalid references
aksmali/Adaptors/Format/InstructionMethodItem.java
49fa5f5f4438000c1a174ae88d394069bb46f826 01-Jun-2013 Ben Gruver <bgruv@google.com> Don't crash if the smali/baksmali.properties file can't be found
aksmali/main.java
13705697c23cb2d72bea75d661390be26fea50a4 19-May-2013 Ben Gruver <bgruv@google.com> Clean up how the classes are sorted before being disassembled
aksmali/baksmali.java
74436bdd2f8269d6a94a2be33be7ef53e782b5ea 13-May-2013 Ben Gruver <bgruv@google.com> Fix issues with initialization of bootClassPath and inlineResolver
aksmali/main.java
dea5f8d544040e506b550116bd7874d27436b99b 12-May-2013 Ben Gruver <bgruv@google.com> Exit with non-zero status if any error occurred while running baksmali
aksmali/baksmali.java
aksmali/main.java
7e25c35df7786c98bc6fa96958e93146ca73367a 12-May-2013 Ben Gruver <bgruv@google.com> Make baksmali thread safe, and add -j option
aksmali/baksmali.java
aksmali/baksmaliOptions.java
aksmali/main.java
4b171afedb983fb811990beeec6a15e30a90b455 11-May-2013 Ben Gruver <bgruv@google.com> Misc baksmali cleanup
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/baksmaliOptions.java
aksmali/dump.java
aksmali/main.java
aksmali/temp.java
5b69a5f3a5232b8ea0456f46f3285388963c77d3 07-May-2013 Ben Gruver <bgruv@google.com> Merge remote-tracking branch 'izzy_github/deodex2' into dexlib_redesign

Conflicts:
dexlib2/src/main/java/org/jf/dexlib2/analysis/ClassPath.java
d38f3a79838220a666f80c7c2495a184d319a960 04-May-2013 Ben Gruver <bgruv@google.com> Fix up line number handling to be unsigned int safe
aksmali/Adaptors/Debug/LineNumberMethodItem.java
936cc551f7d950bac27fe1cd511ba46682b79a11 01-May-2013 Ben Gruver <bgruv@google.com> Clean up some TODOs
aksmali/temp.java
03b82478500a9778da155bd63b7d3c99a6ca8df1 29-Apr-2013 Izzat Bahadirov <izzat.b@sta.samsung.com> Renamed getVersion() to getOdexVersion() in DexBackedOdexFile.
aksmali/baksmali.java
1bf6f2324541df184689fdb2c0d8188af5221784 28-Apr-2013 Ben Gruver <bgruv@google.com> Implementation of new generificationified writer functionality
aksmali/Adaptors/MethodDefinition.java
9c72df65f76a70b7215769fe11e1fde99059519a 22-Apr-2013 Izzat Bahadirov <izzat.b@sta.samsung.com> Using standard InlineMethodResolver if no custom one is provided.
aksmali/baksmali.java
b6435e7a475c64189906fb12e5408041bf3e750a 18-Apr-2013 Ben Gruver <bgruv@google.com> Add support to smali for a .source directive with no source file
aksmali/Adaptors/Debug/SetSourceFileMethodItem.java
3e4e5ec7a4f2bcd82e21ba7caf93c60a981422ab 18-Apr-2013 Ben Gruver <bgruv@google.com> Change .param and .local syntax, to be able to handle empty name/type/signature
aksmali/Adaptors/Debug/EndLocalMethodItem.java
aksmali/Adaptors/Debug/LocalFormatter.java
aksmali/Adaptors/Debug/RestartLocalMethodItem.java
aksmali/Adaptors/Debug/StartLocalMethodItem.java
aksmali/Adaptors/MethodDefinition.java
83f77f51aa888998486c0c9ad693047480b060b0 18-Apr-2013 Ben Gruver <bgruv@google.com> Refactor how api specific Opcodes work (make them non-static)
aksmali/baksmali.java
aksmali/dump.java
aksmali/main.java
8979759556f31af324257fec9ebd47d3444cede0 14-Apr-2013 Ben Gruver <bgruv@google.com> Gracefully handle duplicate fields/methods in baksmali
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/CommentingIndentingWriter.java
0a18ea7f8b62e51945a79ac37802133a24c9a742 13-Apr-2013 Ben Gruver <bgruv@google.com> Separate direct/virtual methods and static/instance fields in the ClassDef interface

This is unfortunately required to support not-quite-well-formed dex files
containing duplicate static/instance fields, or duplicate direct/virtual methods,
which dalvik inadvertently allows.

In cases when there are duplicate fields/methods in the same category, we
unambiguously remove/hide the latter duplicate fields/methods.
aksmali/Adaptors/ClassDefinition.java
5b99529feb5aa797d7c0d107a86b441b6c4fa9bb 12-Apr-2013 Ben Gruver <bgruv@google.com> Remove unneeded TODO
aksmali/main.java
2363e6e43ccd826a315b2f1feb1850a6ccd68f84 12-Apr-2013 Ben Gruver <bgruv@google.com> Gracefully handle unknown instructions
aksmali/Adaptors/Format/InstructionMethodItem.java
5fa302678ce3a8e08fa8d2e8dbc5424781e751a6 11-Apr-2013 Ben Gruver <bgruv@google.com> Add support for custom inline tables
aksmali/baksmali.java
a55990c876eab2489e824711da23e5abc7bff1a5 10-Apr-2013 Ben Gruver <bgruv@google.com> Re-enable deodexing in baksmali

It's not quite working yet.
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/UnresolvedOdexInstructionMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
7172de2aabc88ee66c0b50d78c731830ed374d18 10-Apr-2013 Ben Gruver <bgruv@google.com> Always write out the register info in numeric order
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
3f05570b6bb8249f545ced73a1beb7f996c5227d 09-Apr-2013 Ben Gruver <bgruv@google.com> Always use .equals for comparing RegisterType instances
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
93aa50139c4641d931b05608f73af8879c0de1c2 08-Apr-2013 Ben Gruver <bgruv@google.com> Refactor the way the baksmali options are handled
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/baksmali.java
aksmali/baksmaliOptions.java
aksmali/main.java
c91b03ba45ccacfa7b0ad52592a42e8fd8c18da1 08-Apr-2013 Ben Gruver <bgruv@google.com> Add support for generating register information
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/baksmali.java
ffe82bdcb5c914b3a60b630c6d3abe6fc9229dec 08-Apr-2013 Ben Gruver <bgruv@google.com> Fully remove the dependency on the old dexlib from baksmali
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/UnresolvedOdexInstructionMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/baksmali.java
92d690894a3d91f776c39fb83b464f1d0c3e422a 08-Apr-2013 Ben Gruver <bgruv@google.com> Remove some unneeded baksmali command line options
aksmali/baksmali.java
aksmali/main.java
db7795ffaa2d8804d84623a79d406f8c8686c1b8 10-Mar-2013 Ben Gruver <bgruv@google.com> Add support for odex format 20bc
aksmali/Adaptors/Format/InstructionMethodItem.java
61277b50b39015efe38c9cc5c79b31f6dd35c1f6 10-Mar-2013 Ben Gruver <bgruv@google.com> Add support for odex formats 3rms and 3rmi
aksmali/Adaptors/Format/InstructionMethodItem.java
2a91d72a1534dd8171d8296ce8312de4bd603451 10-Mar-2013 Ben Gruver <bgruv@google.com> Add support for odex format 35mi
aksmali/Adaptors/Format/InstructionMethodItem.java
8a151ae671f6d5c99d55779005580834b49187f0 10-Mar-2013 Ben Gruver <bgruv@google.com> Add support for odex format 35ms
aksmali/Adaptors/Format/InstructionMethodItem.java
e88723c666db87d414e126ac6d94d683d86ad28d 10-Mar-2013 Ben Gruver <bgruv@google.com> Add support for odex format 22cs
aksmali/Adaptors/Format/InstructionMethodItem.java
93ff1cab5b7eb00477908bb05d08ca1b5fb4a4e5 06-Mar-2013 Ben Gruver <bgruv@google.com> Expand TODO regarding the syntax of locals
aksmali/Adaptors/Debug/StartLocalMethodItem.java
8f8b67f65ec3390e92cce7d710e5b1eaabd4e248 04-Mar-2013 Ben Gruver <bgruv@google.com> Refactor the dump/annotation functionality
aksmali/dump.java
31d87776c459972f311a3527694e0d630d92a84b 04-Mar-2013 Ben Gruver <bgruv@google.com> Refactor/rewrite the AnnotatedBytes class and helpers

This allows annotations to be added out-of-order, rather than the previous
requirement of forward-only annotating
aksmali/dump.java
cc3be5df1e6cf941ee3fab4a6f78a3c08922be59 01-Mar-2013 Ben Gruver <bgruv@google.com> Make RawDexFile extends DexBackedDexFile.Impl
aksmali/dump.java
ff32d5cc147d4777b19e19692b3b196ddc460b51 27-Feb-2013 Ben Gruver <bgruv@google.com> Refactor how annotatations are handled a bit, and add annotations for TypeListItems
aksmali/dump.java
373ff22ec69bb6e93646994347b6d80502be1588 25-Feb-2013 Ben Gruver <bgruv@google.com> Beginning of annotated dump implementation
aksmali/dump.java
aksmali/main.java
a78d169848624b154ca80c500df707c26778f8f0 24-Feb-2013 Ben Gruver <bgruv@google.com> Make DexFileFactory return a DexBackedDexFile
aksmali/main.java
e77b5a7354f99f417f8d80df629d528e02ef5f9c 29-Dec-2012 Ben Gruver <bgruv@google.com> Sort the interfaces before writing them, in baksmali
aksmali/Adaptors/ClassDefinition.java
db81d89c2acbd8569f62a941ee2947eb5cd4c5b5 29-Dec-2012 Ben Gruver <bgruv@google.com> Fix how parameter annotations are written in baksmali
aksmali/Adaptors/MethodDefinition.java
f3c33259dd0567294ef814be879b59a450c24f70 17-Dec-2012 Izzat Bahadirov <izzat.b@sta.samsung.com> Add support for writing code_items
aksmali/Adaptors/MethodDefinition.java
22c3185bb7c8618437eabe6c597549e0989ec4e6 18-Nov-2012 Ben Gruver <bgruv@google.com> Major cleanup of the interface and library in general
aksmali/Adaptors/ClassDefinition.java
bea9627ed75546d7df9e79c927b9329c70a29808 17-Nov-2012 Ben Gruver <bgruv@google.com> Change the nomenclature from CodeOffset to CodeAddress for absolute code positions
aksmali/Adaptors/MethodDefinition.java
c6e54994a7be1bdbdd751ede7c96e07e7fb1c84f 12-Nov-2012 Ben Gruver <bgruv@google.com> Use collections of annotations, not lists.
aksmali/Adaptors/AnnotationFormatter.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/MethodDefinition.java
12b970ed4dfad768002335503e49c348ea0ed69b 11-Nov-2012 Ben Gruver <bgruv@google.com> Use collections instead of lists for variable size "lists" in the dex file

Only things that can be accessed in the dex file in a random access manner
should be exposed as a list. If the list must be read sequentially, it is
exposed in the interface as a Collection if the size is available up-front
or as an Iterable if the size can only be determined by iterating over the
list.
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
e27e44bee39e3fd862ca4b127c435b8f1cff0347 11-Nov-2012 Ben Gruver <bgruv@google.com> Refactor EnumEncodedValue to use a field reference
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
4060490e85d1f9250f5e22c39c456920e19be317 10-Nov-2012 Ben Gruver <bgruv@google.com> Get rid of old commented code block for methods in ClassDefinition
aksmali/Adaptors/ClassDefinition.java
98eede2ce107a467afa03df6f9a97c05737bd1aa 10-Nov-2012 Ben Gruver <bgruv@google.com> Don't write default field values for static final fields that are set in <clinit>
aksmali/Adaptors/FieldDefinition.java
60631f684fe900940670409c46b7752c5713ae51 10-Nov-2012 Ben Gruver <bgruv@google.com> Detect static final fields that are set in the static initializer
aksmali/Adaptors/ClassDefinition.java
987cdc3e0e1ee99c104837192ea1f63e4fa5565a 10-Nov-2012 Ben Gruver <bgruv@google.com> Sort the classes before disassembling
aksmali/baksmali.java
42b6dc3e3783f99de5a16952265c3176b4fbf978 10-Nov-2012 Ben Gruver <bgruv@google.com> Minor cleanup of synthetic accessor code
aksmali/Adaptors/MethodDefinition.java
2b8845bb247e3e5ee154966866b53fa9887e2609 05-Nov-2012 Ben Gruver <bgruv@google.com> Re-implement SyntheticAccessorResolver
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/SyntheticAccessCommentMethodItem.java
aksmali/baksmali.java
db389aa3a1d898d3a452f3f0b2220b334b23cb4c 05-Nov-2012 Ben Gruver <bgruv@google.com> Make ClassDef implement TypeReference
aksmali/Adaptors/ClassDefinition.java
a8e05220c14778d93c97911044ff5124aadbd77c 04-Nov-2012 Ben Gruver <bgruv@google.com> Refactor how method/field/string/type references are handled
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/baksmali.java
7fe0543b660587a77f6013905a85e4f737a9a851 03-Nov-2012 Ben Gruver <bgruv@google.com> Cache the MethodParameters in MethodDefinition
aksmali/Adaptors/MethodDefinition.java
6b93c7cc35141db5c70406b8af609ed0954135f9 03-Nov-2012 Ben Gruver <bgruv@google.com> Don't precompute the full method string in MethodDefinition
aksmali/Adaptors/MethodDefinition.java
d1662b67fecaf835227aff3a136949a2358ccd4e 03-Nov-2012 Ben Gruver <bgruv@google.com> Refactor dexbacked implementations

Made construction of a new dexbacked item as light weight as possible,
only the very mimimum in computed/stored. Some of the values that were
previously calculated/loaded in the constructor are now lazily loaded
upon first use.

In general, nothing is cached, unless the item can't be fully read by
the consumer without causing the value to be computed multiple times.
Otherwise, it is up to the consume to decide if/when/what they want to
cache.
aksmali/Adaptors/MethodDefinition.java
db49fd7714893b35ba7de51fae8d8e386f3dc335 02-Nov-2012 Ben Gruver <bgruv@google.com> Use a for instead of foreach loop when iterating over MethodItems

This is measurably faster than the previous version
aksmali/Adaptors/MethodDefinition.java
09058f9914385025020e01125452a884f1b1fe11 01-Nov-2012 Ben Gruver <bgruv@google.com> Don't forget to intern the switch labels
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
d3dd617d250771840c801009e4f71d971c4d4061 01-Nov-2012 Ben Gruver <bgruv@google.com> Switch key/value in the switch maps
aksmali/Adaptors/MethodDefinition.java
4499f63c6c4beb21ff52fb0da0d192e9e2bd39a9 01-Nov-2012 Ben Gruver <bgruv@google.com> Add a space after the # for .end/.restart local
aksmali/Adaptors/Debug/EndLocalMethodItem.java
aksmali/Adaptors/Debug/RestartLocalMethodItem.java
c3a3ee3799e354b6718ce8eee2cf20cbac1ca9d9 01-Nov-2012 Ben Gruver <bgruv@google.com> Refactor the writeParameters method a bit

- Accepts a method instead of the parameter list directly
- Uses the correct pN register values for non-static vs. static methods
- Adds a space after the # for the type comment
aksmali/Adaptors/MethodDefinition.java
db4316ef6ddeaaae94ca88673b6bac1c2b29eec5 01-Nov-2012 Ben Gruver <bgruv@google.com> Add TODO regarding parameter/local names
aksmali/Adaptors/MethodDefinition.java
16f257ee8f12974c62e50643b2f87533513da455 28-Oct-2012 Ben Gruver <bgruv@google.com> Use .param instead of .parameter and normalize param/local syntax
aksmali/Adaptors/Debug/EndLocalMethodItem.java
aksmali/Adaptors/Debug/RestartLocalMethodItem.java
aksmali/Adaptors/MethodDefinition.java
754b3c4dc009b7a02e39001560c3f0fd6a7cc2c0 28-Oct-2012 Ben Gruver <bgruv@google.com> Nearly full switch over to dexlib2 in baksmali

No odex handling/register analysis yet, and there are still a few minor
features that haven't been reimplemented yet.

Still lots of bugs :)
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/Debug/BeginEpilogueMethodItem.java
aksmali/Adaptors/Debug/DebugMethodItem.java
aksmali/Adaptors/Debug/EndLocalMethodItem.java
aksmali/Adaptors/Debug/EndPrologueMethodItem.java
aksmali/Adaptors/Debug/LineNumberMethodItem.java
aksmali/Adaptors/Debug/RestartLocalMethodItem.java
aksmali/Adaptors/Debug/SetSourceFileMethodItem.java
aksmali/Adaptors/Debug/StartLocalMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedOdexInstructionMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/Adaptors/SyntheticAccessCommentMethodItem.java
4e3124206a058ceb1be7b893d83b9201744db380 25-Oct-2012 Ben Gruver <bgruv@google.com> Improve how access flags are handled
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/FieldDefinition.java
7ccb5fcfec99e79a8a65c774900f680690406c01 25-Oct-2012 Ben Gruver <bgruv@google.com> Refactor annotations and encoded values in baksmali
aksmali/Adaptors/AnnotationFormatter.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/ReferenceFormatter.java
8b1508ee58f4918835d8c01483725b508d21be29 22-Oct-2012 Ben Gruver <bgruv@google.com> Start switching baksmali over to dexlib2
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/FieldDefinition.java
aksmali/baksmali.java
aksmali/main.java
9f1d05eb44d85183651753d9b83ae3115a8ea256 22-Oct-2012 Ben Gruver <bgruv@google.com> Move Utf8Utils to util module, and split out StringUtils
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/Renderers/CharRenderer.java
bf95959ae43ddd003936a01dfaecc612a438d4b5 16-Oct-2012 Ben Gruver <bgruv@google.com> Move ExceptionWithContext to Util module
aksmali/Adaptors/MethodDefinition.java
1176b7512344cd16abe95f3a50ddacd884fc7594 12-Oct-2012 Ben Gruver <bgruv@google.com> Add support for new virtual table generation

This adds support for a fix in dalvik that changes the way
virtual tables are generated.

This new logic can be turned on with the -K option. This option
will be removed once the new functionality can be tied to a released
api level, at which point, it will be triggered when using an
appropriate api level with the -a option.
aksmali/baksmali.java
aksmali/main.java
92a9aa2aa5292ef861211961816fac00e63080d7 09-Oct-2012 Ben Gruver <bgruv@google.com> Minor cleanup of synthetic access related stuff
aksmali/Adaptors/SyntheticAccessCommentMethodItem.java
60bb8c675cf4431b78373598b2d7e8527766b58f 26-Sep-2012 Ben Gruver <bgruv@google.com> Simply the generic-ity around Instruction, OffsetInstruction and InstructionMethodItem
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
40c48da564efb8c95ed0599f0783b0fd676b6c1f 24-Sep-2012 Ben Gruver <bgruv@google.com> The great tab cleanup of 2012
aksmali/Adaptors/ClassDefinition.java
4af666e4a6dbcff1a68ebc3bc64fe813decb5920 25-Aug-2012 Ben Gruver <bgruv@google.com> Remove support for the extended opcodes
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/Format/InstructionMethodItem.java
5934004fe3c1e9617793aa120e88f5df1b651c14 24-Aug-2012 Ben Gruver <bgruv@google.com> Allow try end addresses that fall in the middle of an instruction
aksmali/Adaptors/MethodDefinition.java
343df2f456f38c305ee7d6742f6601d9bde09715 06-Jul-2012 Ben Gruver <bgruv@google.com> Simplify deodexing

This makes it possible to deodex an odex file using only the dependencies
listed in the odex file itself. Adding extra dependencies via the -c
option should no longer be needed.
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
a9ce1cf3ecff57b00c14bf86b2c688823c918a05 04-Jul-2012 Ben Gruver <bgruv@google.com> For unknown opcodes, mention the original opcode value in a comment
aksmali/Adaptors/Format/InstructionMethodItem.java
7bb622e0b16201d0a50e4bdb1f133cbd6477a19a 20-Jun-2012 Ben Gruver <bgruv@google.com> Set the default local to en-US, to avoid locale specific weirdness
aksmali/main.java
3f70d08442fadd8f2af225f86ca2a41334182dec 15-May-2012 Ben Gruver <bgruv@google.com> Gracefully handle duplicate methods and fields in baksmali

baksmali will emit duplicate methods and fields as commented blocks, when it
is safe to do so.
aksmali/Adaptors/ClassDefinition.java
cf01f5db09da2b597e280f8ac8ef8a3fedbeb2f7 06-Jun-2012 Ben Gruver <bgruv@google.com> Refactor ClassDefItem

This primarily adds nullable/nonnull annotations, and fixes a few related issues
aksmali/Adaptors/ClassDefinition.java
10ebad1205b6c2407233ebf9805e4e2db29c251b 06-Jun-2012 Ben Gruver <bgruv@google.com> Refactor the ClassDataItem interface

This improves the usability and makes the nullness (or nonnullness) for
various things explicit.
aksmali/Adaptors/ClassDefinition.java
e5466fee2396e262fe2823f5f5d90ff7e39dd3a7 06-Jun-2012 Ben Gruver <bgruv@google.com> Add annotation lookup functionality to AnnotationDirectoryItem
aksmali/Adaptors/ClassDefinition.java
b71c12967b9c5c133c46c5edb6c128e78f1baf2c 05-Jun-2012 Ben Gruver <bgruv@google.com> Refactor the interface of AnnotationDirectoryItem

This makes it easier to use, and fixes a few null safeness issues.
aksmali/Adaptors/ClassDefinition.java
36c2f08ba064bce2a447f9280bcf80177cb4b9b9 13-May-2012 Ben Gruver <bgruv@google.com> Clean up how the usage messages are printed

This also fixes an OOM issue when trying to print the usage message
on a terminal that doesn't report its width.
aksmali/main.java
a4b5f66e4c34a9ad44d5063a0a59743ac6bc1bb0 21-Dec-2011 Ben Gruver <bgruv@google.com> Fix an issue with missing parameter annotations in methods without a body
aksmali/Adaptors/MethodDefinition.java
0da8e11d11347711bfb6a58a0041f7944c4936cd 21-Nov-2011 Ben Gruver <bgruv@google.com> Make sure the api level is set before reading in the dex file
aksmali/main.java
4d3b3311e19f479cef271ff374a0ea512bd3cbc1 21-Nov-2011 Ben Gruver <bgruv@google.com> Fix a few issues with Format 35mi
aksmali/Adaptors/Format/InstructionMethodItem.java
c8de336727bfe8e56998332fe97ad5c0e32e50fa 19-Nov-2011 Ben Gruver <bgruv@google.com> Use Format 35c for invoke-direct-empty, and get rid of Format 35s
aksmali/Adaptors/Format/InstructionMethodItem.java
5967598d012839eb25d50d9fa63952ac802e05dd 17-Nov-2011 Ben Gruver <bgruv@google.com> Add support for specifying a custom inline method table to use while deodexing
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
e00d96c438364844a5c87797119e8770d8ad1f67 17-Nov-2011 Ben Gruver <bgruv@google.com> Fix an issue with the handling of sparse-switch-data blocks
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
c2f08d5123c7cdbba3f449b07c46742ab3d7cacb 19-Nov-2011 Ben Gruver <bgruv@google.com> Add support for an --api-level parameter
aksmali/main.java
c4db7e2473a77b6dfa58207825efcdb4d51697b7 18-Nov-2011 Ben Gruver <bgruv@google.com> Add support for Format5rc
aksmali/Adaptors/Format/InstructionMethodItem.java
1efc2c038842f85728b0ae4311a0e550b826390b 18-Nov-2011 Ben Gruver <bgruv@google.com> Add support for Format52c (type references)
aksmali/Adaptors/Format/InstructionMethodItem.java
d863324ffb94f70dbb59f1dab4dabd2ce1b39cfd 18-Nov-2011 Ben Gruver <bgruv@google.com> Add support for Format41c (field references)
aksmali/Adaptors/ClassDefinition.java
d12c76927616b9f5193864c2d834e84a57c08787 14-Nov-2011 Ben Gruver <bgruv@google.com> Add support for Format41c (type references)
aksmali/Adaptors/Format/InstructionMethodItem.java
b0c62b9781751e4d04d2ddb4458940d545cc8bb2 10-Nov-2011 Ben Gruver <bgruv@google.com> Seperate out execute-inline and execute-inline/range into seperate 35mi and 3rmi formats
aksmali/Adaptors/Format/InstructionMethodItem.java
3bfd77dff08cfa059ea230017791fca11fa08c53 10-Nov-2011 Ben Gruver <bgruv@google.com> Use the term VtableIndex rather than MethodIndex for invoke-*-quick instructions/formats
aksmali/Adaptors/Format/InstructionMethodItem.java
bbe539f2d2cdfdd814fcdc0057dcdf454ae153d3 09-Oct-2011 Ben Gruver <jesusfreke@jesusfreke.com> Add support for the throw-verification-error opcode
aksmali/Adaptors/Format/InstructionMethodItem.java
cb3e0ea38a669633b8daefd538750c8ded46f524 09-Oct-2011 Ben Gruver <jesusfreke@jesusfreke.com> Improve the way sparse/packed switch data blocks are found and processed
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/MethodDefinition.java
3c4f8094a2295adf666f8de51d8230bd78acf478 15-Jul-2011 Ben Gruver <jesusfreke@jesusfreke.com> Fix possible issue(?) in IntegerRenderer.writeUnsignedTo
aksmali/Renderers/IntegerRenderer.java
74c14ffcca0ff4f8f3e66e66022894cd7b0b8540 15-Jul-2011 Ben Gruver <jesusfreke@jesusfreke.com> Rename the printLongAsHex and printIntAsHex methods in IndentingWriter for clarity
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/Renderers/ByteRenderer.java
aksmali/Renderers/IntegerRenderer.java
aksmali/Renderers/LongRenderer.java
aksmali/Renderers/ShortRenderer.java
baa030c201f558c274d74dc1511f2c982b87ae74 03-Jun-2011 jesusfreke@jesusfreke.com <jesusfreke@jesusfreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Correctly escape any special characters in the value of the .source directive

git-svn-id: https://smali.googlecode.com/svn/trunk@811 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/DebugMethodItem.java
a564a1733b3a86bd2f2586f6b9788ca688010663 20-May-2011 jesusfreke@jesusfreke.com <jesusfreke@jesusfreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Don't forget to check if synthetic accessor comments are disabled

git-svn-id: https://smali.googlecode.com/svn/trunk@810 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
2f376953b4c96542f200724727e4dac74dd27425 20-May-2011 jesusfreke@jesusfreke.com <jesusfreke@jesusfreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add helper comments for synthetic member accessors

This adds a comment before a synthetic member accessor is called, which
mentions what member in the parent is being accessed

Kudos to jasta for suggesting this feature!

git-svn-id: https://smali.googlecode.com/svn/trunk@809 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/SyntheticAccessCommentMethodItem.java
aksmali/baksmali.java
aksmali/main.java
b9a19bf3f18f66eb3b4c84994938bf627b825732 21-Dec-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Remove deodexerant and related functionality

git-svn-id: https://smali.googlecode.com/svn/trunk@797 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/deodexCheck.java
4b72225e9d81201838f387171a68a832486903f9 17-Aug-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Move the IndentingWriter class to the util project

git-svn-id: https://smali.googlecode.com/svn/trunk@788 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationFormatter.java
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/CommentMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedOdexInstructionMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/IndentingWriter.java
aksmali/Renderers/BooleanRenderer.java
aksmali/Renderers/ByteRenderer.java
aksmali/Renderers/CharRenderer.java
aksmali/Renderers/DoubleRenderer.java
aksmali/Renderers/FloatRenderer.java
aksmali/Renderers/IntegerRenderer.java
aksmali/Renderers/LongRenderer.java
aksmali/Renderers/ShortRenderer.java
aksmali/baksmali.java
bbf4dbba6127ef96e316060b2b4ec292627a4078 17-Aug-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Rename fileNameHandler to ClassFileNameHandler and move it to the utils project

git-svn-id: https://smali.googlecode.com/svn/trunk@787 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/fileNameHandler.java
a6e5671a627284347484db96f40a29a45e4e4ed1 02-Aug-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add support for class names that differ only by case on case insensitive file systems

git-svn-id: https://smali.googlecode.com/svn/trunk@784 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/fileNameHandler.java
8913c59363230bc1bf787b7e24941cb13209de0c 26-Jun-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fixed issue 37, where the -b option to baksmali wasn't disabling all debug directives

git-svn-id: https://smali.googlecode.com/svn/trunk@764 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
9c79173818622c2cab6f29a60c5bea61c69e8602 23-Jun-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Incorporate the null check from the previous commit into the containing if statement

git-svn-id: https://smali.googlecode.com/svn/trunk@763 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
ecc73ab3f5d1d323f640a3283768ed007d315d81 23-Jun-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fix an NPE when there is a <clinit> with no codeItem

git-svn-id: https://smali.googlecode.com/svn/trunk@762 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
e01409c11f10de58a47df9bc02c6c715b75c6289 12-Jun-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Change the way unresolvable odex instructions are handled, so that it doesn't cause problems with try/catch blocks

git-svn-id: https://smali.googlecode.com/svn/trunk@737 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/Format/UnresolvedOdexInstructionMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
f7344d33d01953eee129f3cfa2b9655eb65bfe2f 12-Jun-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Split the logic for generating the instruction method items depending on whether we need to use the MethodAnalyzer or not

git-svn-id: https://smali.googlecode.com/svn/trunk@736 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/MethodDefinition.java
fbea4e751fa6f1748ded4379a4b64601cb53ba7b 16-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Cleaned up imports

git-svn-id: https://smali.googlecode.com/svn/trunk@709 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationFormatter.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/baksmali.java
aksmali/dump.java
aksmali/main.java
2371e35aaeaf2ed4d7c571fb3286090eb01b717d 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Exit on the first error by default, but add the -I option for ignoring errors and continuing with disassembly

git-svn-id: https://smali.googlecode.com/svn/trunk@701 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/deodexCheck.java
aksmali/main.java
bde73b303cb004c2441ec7a001b48bb91301ab8b 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> minor changes to option usage info

git-svn-id: https://smali.googlecode.com/svn/trunk@699 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
db806b12618f36785c3c0a056a80e0fa6bceef6f 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> minor reformatting - reorder the options

git-svn-id: https://smali.googlecode.com/svn/trunk@698 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
c6734e8a604dc8fd3788a19d1c3d19ce670511f6 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fix a typo in the commented out format for a packed-switch structure

git-svn-id: https://smali.googlecode.com/svn/trunk@697 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
d293bc1eb3ed900cfb30852da8ded1d46d0e3203 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Always read and write files using UTF8

git-svn-id: https://smali.googlecode.com/svn/trunk@696 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
e861da12850ac36236092a08b9e441314753d4d8 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fix the output format for the .parameter directive

git-svn-id: https://smali.googlecode.com/svn/trunk@694 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
c1cc0e093492722e7eecb20455b5242176ca63db 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add better support for the case when an odex file has missing classes

git-svn-id: https://smali.googlecode.com/svn/trunk@693 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/baksmali.java
19b601436ac846b039318a69b5d13f4291d0bb45 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fix the formatting of the instruction offset comment

git-svn-id: https://smali.googlecode.com/svn/trunk@692 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
baec3bc450e72fbc31b4af9860e118e05d6309c3 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fix the workaround for the ext.jar BCP special case

git-svn-id: https://smali.googlecode.com/svn/trunk@691 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
306fe8753a0a9906307cf761c31b48c24339d583 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Use the platform specific newline character/string

git-svn-id: https://smali.googlecode.com/svn/trunk@690 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/IndentingWriter.java
adb1511f4ee80b47250ffef6bd926fd657317a7f 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> minor linewrap change

git-svn-id: https://smali.googlecode.com/svn/trunk@689 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
0b2f7d6a57e90424b3ee455c041aab3996c05f2c 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> delete IndentingPrintWriter and refactor everything to use IndentingWriter directly

git-svn-id: https://smali.googlecode.com/svn/trunk@688 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationFormatter.java
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/CommentMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/IndentingPrintWriter.java
aksmali/IndentingWriter.java
aksmali/Renderers/BooleanRenderer.java
aksmali/Renderers/ByteRenderer.java
aksmali/Renderers/CharRenderer.java
aksmali/Renderers/DoubleRenderer.java
aksmali/Renderers/FloatRenderer.java
aksmali/Renderers/IntegerRenderer.java
aksmali/Renderers/LongRenderer.java
aksmali/Renderers/ShortRenderer.java
aksmali/baksmali.java
6eae34831fee1f116f3a453bdc5e143d68e05e03 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactor dexlib so that the output is generated directly, instead of using the StringTemplate library

git-svn-id: https://smali.googlecode.com/svn/trunk@681 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
aksmali/Adaptors/AnnotationFormatter.java
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/CommentMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/SimpleEncodedValueAdaptor.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Adaptors/ParameterAdaptor.java
aksmali/Adaptors/PostInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/PreInstructionRegisterInfoMethodItem.java
aksmali/Adaptors/Reference/FieldReference.java
aksmali/Adaptors/Reference/MethodReference.java
aksmali/Adaptors/Reference/Reference.java
aksmali/Adaptors/Reference/StringReference.java
aksmali/Adaptors/Reference/TypeReference.java
aksmali/Adaptors/ReferenceFormatter.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/IndentingPrintWriter.java
aksmali/IndentingWriter.java
aksmali/Renderers/BooleanRenderer.java
aksmali/Renderers/ByteRenderer.java
aksmali/Renderers/CharRenderer.java
aksmali/Renderers/DoubleRenderer.java
aksmali/Renderers/FloatRenderer.java
aksmali/Renderers/IntegerRenderer.java
aksmali/Renderers/LongRenderer.java
aksmali/Renderers/ShortRenderer.java
aksmali/Renderers/StringIdItemRenderer.java
aksmali/baksmali.java
aksmali/main.java
78bde01ad4bf31ad44ad7bd0279b07fd2696b53c 04-Apr-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add the ability to read the dependency information from an odex file, and use those dependencies as the BOOTCLASSPATH by default for odex files

git-svn-id: https://smali.googlecode.com/svn/trunk@679 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/deodexCheck.java
aksmali/main.java
db26b663aa3b5bb721185b8798b6767710d3c243 06-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Change the way the "dead" instructions are handled, so that loops within the dead code are handled properly

git-svn-id: https://smali.googlecode.com/svn/trunk@674 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/MethodDefinition.java
650725bbd3c5e10b9f29d3bcbab473b20a89d57b 06-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Check for unreachable instructions and comment them out

git-svn-id: https://smali.googlecode.com/svn/trunk@673 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
10a95181115741071ae23911413a3f731047621c 06-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add additional context information to exceptions when building a MethodDefinition object

git-svn-id: https://smali.googlecode.com/svn/trunk@672 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
8eaecd53d39d14ee5edc52c49b15c4742a32742d 04-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Load all the class path classes using TempClassInfo, before starting to creating the ClassDefs for them

This fixes an issue when a class in a boot class path jar has a superclass that is in a later boot class path jar

git-svn-id: https://smali.googlecode.com/svn/trunk@669 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/deodexCheck.java
aksmali/main.java
6786055f3566c4fcafd352329662b6b8b223580c 03-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Move the HelpFormatter subclass to the util project and use it for both smali and baksmali

git-svn-id: https://smali.googlecode.com/svn/trunk@667 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmaliHelpFormatter.java
aksmali/main.java
c616a0dadca9cbffdf4827eeb6c2da064ad9f7b7 03-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add support for detecting the console width in unix and windows environments, and printing the usage info accordingly

git-svn-id: https://smali.googlecode.com/svn/trunk@666 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
7bb8ace93bb02750a95d3a68fe99153980abdee8 03-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> add -V option for baksmali to verify the bytecode

git-svn-id: https://smali.googlecode.com/svn/trunk@664 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
ef24b31c9872b24f60c88bdae9b2d8c93eb36fee 03-Mar-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactor the MethodAnalyzer API so that the instructions are returned as a read-only list

git-svn-id: https://smali.googlecode.com/svn/trunk@662 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
00fc68adf2e39aeb9fed35293f2576bbe729ec4b 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Update copyright notices

git-svn-id: https://smali.googlecode.com/svn/trunk@644 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/CommentMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/SimpleEncodedValueAdaptor.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Adaptors/ParameterAdaptor.java
aksmali/Adaptors/Reference/FieldReference.java
aksmali/Adaptors/Reference/MethodReference.java
aksmali/Adaptors/Reference/Reference.java
aksmali/Adaptors/Reference/StringReference.java
aksmali/Adaptors/Reference/TypeReference.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/Renderers/ByteRenderer.java
aksmali/Renderers/CharRenderer.java
aksmali/Renderers/FloatRenderer.java
aksmali/Renderers/IntegerRenderer.java
aksmali/Renderers/LongRenderer.java
aksmali/Renderers/ShortRenderer.java
aksmali/Renderers/StringIdItemRenderer.java
aksmali/baksmali.java
aksmali/baksmaliHelpFormatter.java
aksmali/deodexCheck.java
aksmali/dump.java
aksmali/main.java
f25f71342619b5cc9a286ab2db90d9098417f577 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> change the default value for the -r parameter to ARGS|DEST

git-svn-id: https://smali.googlecode.com/svn/trunk@642 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
819e8b92a060a79b63fcdbd2d614786d758bfefb 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Allow multiple class path directories to be specified

git-svn-id: https://smali.googlecode.com/svn/trunk@639 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/deodexCheck.java
aksmali/main.java
e9b722eab0b0932be59cb99c8c6f403b00abad6f 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Misc cleanup

git-svn-id: https://smali.googlecode.com/svn/trunk@638 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/main.java
0c65e0f4f54ead8fd2832c954d516367b3556ae3 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented deodex functionality

git-svn-id: https://smali.googlecode.com/svn/trunk@637 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OdexInstructionMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Deodex/DeodexUtil.java
aksmali/Deodex/DeodexUtil2.java
aksmali/Deodex/Deodexerant.java
aksmali/baksmali.java
aksmali/deodexCheck.java
aksmali/main.java
2bdbf739bfd935877e463bc36df0e446b1dfb09f 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add a new option to add a comment line with the code offset for each instruction

git-svn-id: https://smali.googlecode.com/svn/trunk@634 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
5b908115c006d791f8198316302453455a650c0c 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactor options for baksmali

- Identified a set of options that are really only useful for debugging baksmali, and changed the short option character for them to be uppercase'
- Change the option letters for various options
- Don't display the debug options in the main usage info, but only if -? is specified twice (i.e. -??)

git-svn-id: https://smali.googlecode.com/svn/trunk@633 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmaliHelpFormatter.java
aksmali/main.java
928790f2939e0eec7ab2e4653a19c6c27a113634 22-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> remove the "disable interning" functionality in dexlib

- rename the getInterned* methods to intern*
- add a lookup* method to a few item types that performs the same function, except that
it returns null if the item isn't found, instead of interning it

git-svn-id: https://smali.googlecode.com/svn/trunk@632 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Deodex/DeodexUtil.java
aksmali/Deodex/Deodexerant.java
f5defb97c0d869d9e1dfebf21adbf0bfce5e44cd 15-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Allow additional bootclasspath files to be added to the default, by prepending the bootclasspath value with a :

git-svn-id: https://smali.googlecode.com/svn/trunk@630 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
3f7739cd09932129a51badaca9e172aaa47f50f4 15-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add support for specifying a base dir for the BOOTCLASSPATH files

git-svn-id: https://smali.googlecode.com/svn/trunk@629 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/main.java
2e2a18773408cc2cb32cb8e3c8dd55ca25183b14 14-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Don't output register information on switch/array data structures

git-svn-id: https://smali.googlecode.com/svn/trunk@628 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
1c56c7e7507dc24ae1ed2f693c793d94df814c76 14-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add finer grained control of what register information is printed out

git-svn-id: https://smali.googlecode.com/svn/trunk@625 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
da69b22d6fe70d082b18858aea0d15ec383f1865 14-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Use a double instead of an int as the sort value for method items

git-svn-id: https://smali.googlecode.com/svn/trunk@624 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/CommentMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodItem.java
db385ec3fd0c4f0de00ec3a17b6565d2a6c60e61 14-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Don't load the instructions in a code item when loading the BOOTCLASSPATH dex files

git-svn-id: https://smali.googlecode.com/svn/trunk@623 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
c9be5e13034da9827b5598a6257376164745b827 11-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Tons of fixes related to getting "verbose register info"/type analysis to work

git-svn-id: https://smali.googlecode.com/svn/trunk@621 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
7e24a9f010eeeff54f7ca0cb589a75cc251fabdd 08-Feb-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Preliminary implementation of "verbose register info" functionality

git-svn-id: https://smali.googlecode.com/svn/trunk@620 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/CommentMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
fffb29fd9d67ba1396bd2999de4f0d9a44b79837 24-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implement ClassPath class, refactor analysis code to use new ClassPath functionality, start adding verification for individual opcodes

git-svn-id: https://smali.googlecode.com/svn/trunk@574 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Analysis/Analysis.java
aksmali/Analysis/AnalysisInstruction.java
b2e1e2067d5179b0ec38c76a5191909f5a7dc1cc 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> deodex refactoring part 1

Significantly simplified how instructions are handled in baksmali. Normal
disassembly seems to be working, deodexing definitely not.

git-svn-id: https://smali.googlecode.com/svn/trunk@561 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction10xMethodItem.java
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction12xMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22csMethodItem.java
aksmali/Adaptors/Format/Instruction22csfMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction22xMethodItem.java
aksmali/Adaptors/Format/Instruction23xMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/Instruction32xMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction35msMethodItem.java
aksmali/Adaptors/Format/Instruction35msfMethodItem.java
aksmali/Adaptors/Format/Instruction35sMethodItem.java
aksmali/Adaptors/Format/Instruction35sfMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsfMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItem.java
aksmali/Adaptors/Format/InstructionMethodItemFactory.java
aksmali/Adaptors/Format/OdexInstructionMethodItem.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Analysis/Analysis.java
aksmali/Analysis/AnalysisInstruction.java
aksmali/Deodex/DeodexUtil2.java
575bd4ce54ecc53d9c01e3c000fd5c9b1acbb855 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Remove unused 'fixed' field from DeodexUtil.insn

git-svn-id: https://smali.googlecode.com/svn/trunk@560 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Deodex/DeodexUtil.java
563bc6604110b2e629239ac1c58a3a8b6876c400 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> whitespace change

git-svn-id: https://smali.googlecode.com/svn/trunk@559 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Deodex/DeodexUtil.java
42e4ef489241e4bd7216e235ca499ea3f201bd3b 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactor the opcode enum to have a flags field, to store the odexOnly and canThrow flags

And get rid of the instructionThrowTable in DeodexUtil

git-svn-id: https://smali.googlecode.com/svn/trunk@558 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Deodex/DeodexUtil.java
1f478c3228e375aa439635775f0f586857dac154 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added comment for Deodexerant class

git-svn-id: https://smali.googlecode.com/svn/trunk@557 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Deodex/Deodexerant.java
f568b80d16caa9d7d6c8fe809faaa497cab783c2 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Moved DeodexUtil and Deodexerant classes to baksmali

git-svn-id: https://smali.googlecode.com/svn/trunk@556 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Deodex/DeodexUtil.java
aksmali/Deodex/Deodexerant.java
aksmali/baksmali.java
aksmali/main.java
16a911620ccf7b530b873fb71cf13e8dcb88ad28 12-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> General cleanup/refactoring/maintentance

- Added some additional context information for exceptions in various locations
- Refactored all code offsets so that they use 2-byte code block address, instead of a byte offset.
- Additionally changed all "offset" terminology refering to code offsets to "address" instead
- Changed the way the getItemByIndex and getOffsettedItemByOffset work, so that they throw an
exception if the index/offset is -1/0.
- Added additional getOptionalItemByIndex and getOptionalOffsettedItemByOffset methods, to be used
in the cases where an index/offset of -1/0 is valid, to indicate the absence of an item
- Other misc cleanup/maintentance

git-svn-id: https://smali.googlecode.com/svn/trunk@552 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction10xMethodItem.java
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction12xMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22csMethodItem.java
aksmali/Adaptors/Format/Instruction22csfMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction22xMethodItem.java
aksmali/Adaptors/Format/Instruction23xMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/Instruction32xMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction35msMethodItem.java
aksmali/Adaptors/Format/Instruction35msfMethodItem.java
aksmali/Adaptors/Format/Instruction35sMethodItem.java
aksmali/Adaptors/Format/Instruction35sfMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsfMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/main.java
be2472d6d747a71a73560c1a5cf392a75a905b6d 01-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add support for the upcoming execute-inline/range odexed instruction

git-svn-id: https://smali.googlecode.com/svn/trunk@544 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
c9c2ec3d48d813bc5e74703747466fd6635dcfa6 01-Jan-2010 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add "support" for odexed instructions using Format3rms

Also, change the name of the invoke-*-range-quick opcodes to invoke-*-quick/range,
to be consistent with the naming scheme of non-odexed opcodes

git-svn-id: https://smali.googlecode.com/svn/trunk@542 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
22296e7f8366b81b37191f9e37ae9e8cee343492 31-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added assertion+comment, to clarify a misleading null check

git-svn-id: https://smali.googlecode.com/svn/trunk@536 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
7d9b1b10f03035153829553ae372947b75e17f70 31-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> use createTemplate and createReference instead of makeTemplate and makeReference

git-svn-id: https://smali.googlecode.com/svn/trunk@534 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/SimpleEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22csfMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction35msfMethodItem.java
aksmali/Adaptors/Format/Instruction35sMethodItem.java
aksmali/Adaptors/Format/Instruction35sfMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsfMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/ParameterAdaptor.java
aksmali/Adaptors/Reference/FieldReference.java
aksmali/Adaptors/Reference/MethodReference.java
aksmali/Adaptors/Reference/Reference.java
aksmali/Adaptors/Reference/StringReference.java
aksmali/Adaptors/Reference/TypeReference.java
aksmali/baksmali.java
81ab1aa726c16abfea0b9b2550e3123190d98343 31-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add warning about disassembling an odex file without deodexing it

git-svn-id: https://smali.googlecode.com/svn/trunk@533 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
7f9cfb3a6863ebc5a1024b7ce2a9b63b34625956 26-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> rename "indexed labels" stuff to "sequential labels"

git-svn-id: https://smali.googlecode.com/svn/trunk@530 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
630f5dc2dcaa811410ae1f9209e377d2e89d8e5c 26-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add support for the -b option for baksmali, to suppress the output of debug info

git-svn-id: https://smali.googlecode.com/svn/trunk@522 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
311ee79fab06269ea6d9bd31ec1854a6ad036b23 23-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Complete and fix-up the implementation of autofixing instructions

git-svn-id: https://smali.googlecode.com/svn/trunk@511 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
fda2e631ac0b1ca092973b7fff4b2f38d2c23437 23-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactor instructions to store individual pieces of data instead of just using an offset into a buffer

Also included is a partial implementation of the logic needed to automatically fix various types of issues

git-svn-id: https://smali.googlecode.com/svn/trunk@502 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/MethodDefinition.java
5867263eb588f4671400895d1e6b01c01535061b 23-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> line ending and trailing whitespace cleanup

git-svn-id: https://smali.googlecode.com/svn/trunk@500 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/Renderers/ByteRenderer.java
aksmali/baksmali.java
aksmali/dump.java
eb78b7fa6462e7c52e6f5779206a86559a64a06b 23-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Minor cleanup

git-svn-id: https://smali.googlecode.com/svn/trunk@499 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
d1dc954863ac950b42cfb8f26afbbca16958ad96 23-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Remove unused comment parameter for instruction method items

git-svn-id: https://smali.googlecode.com/svn/trunk@498 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
e24e70f9ad584d45d2a2af911c1d056163f1bc74 23-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Handle unresolvable instructions in a more intellegent manner

Don't replace an unresolvable instruction with replacement instruction(s) that
are larger, to avoid inserting extra bytes, and possibly moving jump type
instructions too far from their targets.

git-svn-id: https://smali.googlecode.com/svn/trunk@497 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/MethodDefinition.java
e2684fa2191e04f27faba763f2bcc19593513b25 01-Dec-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - refactored/simplified the label code
- changed the handler_ label prefix to catch_ and catchall_
- added support for the new -i/--indexed-labels option, which numbers the labels incrementally for each method by type, rather than using the bytecode offset

git-svn-id: https://smali.googlecode.com/svn/trunk@493 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/OffsetInstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
a5fb30849ded98084d9ba486c43d7a8c41b55ca3 23-Nov-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> minor verbage change for the -l/--use-locals option

git-svn-id: https://smali.googlecode.com/svn/trunk@491 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
ff80035f438dd2a70330931bb87e37bb8b42f9e0 23-Nov-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> add support for the .locals directive and the --use-locals/-l option for baksmali

git-svn-id: https://smali.googlecode.com/svn/trunk@489 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
090e553f34a176bc558f0d70392181c0fbd83fe8 19-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> check if a static final field is set within the static constructor, and if so, add a comment stating such if it makes sense to do so (for primitive types, or reference/array types that have a non-null initializer)

git-svn-id: https://smali.googlecode.com/svn/trunk@481 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/FieldDefinition.java
05c9404ecde123f9c965d4d99967850b74f943f2 19-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> set the SparseArrays even if classDataItem is null

git-svn-id: https://smali.googlecode.com/svn/trunk@480 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
29f49465ca358613486bd6bc61a1b9a5fa3bd1c1 19-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Use a SparseArray instead of a HashMap, and add get*Count methods to AnnotationDirectoryItem so we can initialize the SparseArrays with the correct capacity

git-svn-id: https://smali.googlecode.com/svn/trunk@478 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
04473936a1bfb93ca8f097c908dcb9c0374d5440 10-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> remove test println

git-svn-id: https://smali.googlecode.com/svn/trunk@458 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
a171922cbdf28809de5973d07c9082471e0fa584 10-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> add TODO

git-svn-id: https://smali.googlecode.com/svn/trunk@456 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
c65a8d8b5f2091a6bd835617262840a3f52c5c00 10-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added better support for the case when an optimized instruction can't be resolved due to the object register always being null. It should comment out any dead code following the unresolved instruction (to prevent verification issues, due to the changed method call)

git-svn-id: https://smali.googlecode.com/svn/trunk@455 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CommentedOutMethodItem.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/Format/Instruction22csnMethodItem.java
aksmali/Adaptors/Format/Instruction35msnMethodItem.java
aksmali/Adaptors/Format/UnresolvedNullReferenceMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
285dfd013a14d058cf6c1937933e5bc1f0fcc823 08-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fix the registers in the dummy method calls used to replace null pointer method invokes/field accesses

git-svn-id: https://smali.googlecode.com/svn/trunk@438 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/Instruction22csnMethodItem.java
aksmali/Adaptors/Format/Instruction35msnMethodItem.java
5b89857df3124851183c75a134f10b6ba41512a9 08-Sep-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Initial commit of deodex functionality in dexlib and baksmali

git-svn-id: https://smali.googlecode.com/svn/trunk@435 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22csfMethodItem.java
aksmali/Adaptors/Format/Instruction22csnMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction35msfMethodItem.java
aksmali/Adaptors/Format/Instruction35msnMethodItem.java
aksmali/Adaptors/Format/Instruction35sfMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsfMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
5f98a2926093cd9a6c2ea64848c47fc5e39e018d 30-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add support for the odex only opcodes

git-svn-id: https://smali.googlecode.com/svn/trunk@432 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/Instruction22csMethodItem.java
aksmali/Adaptors/Format/Instruction35msMethodItem.java
aksmali/Adaptors/Format/Instruction35sMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction3rmsMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aaa11529d4822e9b59390e991e5d31ec3dd240d8 29-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Check if the method is static to determine if there is an extra "this" register, not if it's a direct method

git-svn-id: https://smali.googlecode.com/svn/trunk@428 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/RegisterFormatter.java
f5f30468ad0d6094eb198d1c08cf4590eb1f0dff 11-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> refactored the options a bit

git-svn-id: https://smali.googlecode.com/svn/trunk@394 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
3c23129eecb7127646f2901c1b0ec3b94a83c08f 09-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for writing parameter registers with the p<n> syntax

git-svn-id: https://smali.googlecode.com/svn/trunk@376 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction10xMethodItem.java
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction12xMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction22xMethodItem.java
aksmali/Adaptors/Format/Instruction23xMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/Instruction32xMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/RegisterFormatter.java
aksmali/baksmali.java
aksmali/main.java
149225a27f05019e1cbb87b427e9b466617495b3 08-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Set the Bytes attribute multiple times, instead of using an array of bytes

git-svn-id: https://smali.googlecode.com/svn/trunk@373 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/ArrayDataMethodItem.java
fdf48625bbf7005aea918d8c4d0cda662e3c42c5 07-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactor instruction 35c to set the Registers attribute multiple times, instead of setting it to an array

git-svn-id: https://smali.googlecode.com/svn/trunk@372 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/Instruction35cMethodItem.java
7885a819a0dc52568fedd60f7d8d0f0a9ca352e9 07-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> refactor ClassDefinition to use template attributes instead of object parameters

git-svn-id: https://smali.googlecode.com/svn/trunk@371 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/baksmali.java
fa7e91bff2f8a5b19ccb4c4f3fed0d802916be0b 06-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> refactor the references to use template attributes instead of object parameters

git-svn-id: https://smali.googlecode.com/svn/trunk@370 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Reference/FieldReference.java
aksmali/Adaptors/Reference/MethodReference.java
aksmali/Adaptors/Reference/Reference.java
aksmali/Adaptors/Reference/StringReference.java
aksmali/Adaptors/Reference/TypeReference.java
a3cf936fc254f9d2bdec715718bef9a0f5edf600 06-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> refactor all the encoded value stuff to use template attributes instead of object properties

git-svn-id: https://smali.googlecode.com/svn/trunk@368 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/NullEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/SimpleEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
7ab77bc90be62b0688c97d4476e3bd219eace0da 06-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Refactoring baksmali so that the template attributes are passed in, instead of relying on reflection to get attributes from an object

git-svn-id: https://smali.googlecode.com/svn/trunk@366 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction10xMethodItem.java
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction12xMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction22xMethodItem.java
aksmali/Adaptors/Format/Instruction23xMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/Instruction32xMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/ReferenceInstructionFormatMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Adaptors/ParameterAdaptor.java
aksmali/baksmali.java
814580d4cfe7de0c8848fa081e547146d87d3b0b 05-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> The stored offset is a relative offset from the position of the instruction, not an absolute offset

git-svn-id: https://smali.googlecode.com/svn/trunk@364 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
416b72fc7469b5be3fe5bd0de0604e98e58c52c1 05-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> StringTemplate does't seem to want to iterate over the byte array returned by the iterator, but it works if you return an object and access the byte array as an attribute

git-svn-id: https://smali.googlecode.com/svn/trunk@363 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/ArrayDataMethodItem.java
9596186473ae51071f71858f84055a67b531baa3 05-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - Return individual items from the iterator, instead of returning the same object every time
- Simplify PackedSwitchMethodItem, so that it just returns the target as a string, instead of an object

git-svn-id: https://smali.googlecode.com/svn/trunk@362 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
866267dfb71534266eb194a5adb7d8dc7c1482a5 05-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Store the string values, not the objects

git-svn-id: https://smali.googlecode.com/svn/trunk@360 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/LocalDebugMethodItem.java
8140e9fca2e57ca71d08f21f1b7974606b0eb4a0 05-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> The annotation visibility should be lowercase

git-svn-id: https://smali.googlecode.com/svn/trunk@358 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
2700dc281c1af60351fb3f4f6d423c90582904e4 04-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Add check for null parameterName value

git-svn-id: https://smali.googlecode.com/svn/trunk@353 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
630a384c6bb90358cc64c7fcbec6884fdac8f50d 04-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Check for null source file

git-svn-id: https://smali.googlecode.com/svn/trunk@344 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
0fa2c67bfdf70db3febba0cf7c3c5a9e4f040f4b 04-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Check for null code item

git-svn-id: https://smali.googlecode.com/svn/trunk@343 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
cf6729c1ee64e732f28eb40386ecc69d4fb6b401 03-Aug-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Lots of misc cleanup/refactoring to work with the new dexlib

git-svn-id: https://smali.googlecode.com/svn/trunk@336 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/ReferenceInstructionFormatMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/ParameterAdaptor.java
aksmali/Adaptors/Reference/Reference.java
aksmali/Renderers/StringIdItemRenderer.java
aksmali/baksmali.java
a53706985479f8e0a1019fdbd3731ed6063a1627 27-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Improved version handling

git-svn-id: https://smali.googlecode.com/svn/trunk@225 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/main.java
9293a116b33ad0e74b6deab53e673d0c391f4ae9 27-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added an option to only read the dex file then exit (mostly for profiling)

git-svn-id: https://smali.googlecode.com/svn/trunk@224 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
69c3abb483d8a6329f38fb3c30afa3d138d3adc0 25-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - fixed an issue where java.lang.Object from core.jar couldn't be re-assembled, because it has no superclass

git-svn-id: https://smali.googlecode.com/svn/trunk@221 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
3249b724ea6615e85a0a1e0ed1ea0fc2cbee62fe 23-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - fixed an issue where -D didn't use the specified file

git-svn-id: https://smali.googlecode.com/svn/trunk@219 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
c894b9658c69a014ed1f57732b066a180218d126 23-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - removed the ability to dump to stdout (issues with the CLI recognizing '-' as a value instead of an option)
- tweaked the version and usage info

git-svn-id: https://smali.googlecode.com/svn/trunk@218 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/dump.java
aksmali/main.java
24b394bc4348f7a356f4c194781e834b80c18ff1 23-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> cleaned up comment

git-svn-id: https://smali.googlecode.com/svn/trunk@214 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/main.java
81014659d928284a14fafc23bc239e39de836d83 23-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Significant rewrite of the command line interface

git-svn-id: https://smali.googlecode.com/svn/trunk@212 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
aksmali/dump.java
aksmali/main.java
d166b746b91c114cd8d8fe4b054069083c33170b 22-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - Redid the option parsing logic to use the apache commons cli library
- Added options to the dump command, to help with dumping and comparing 2 dex files


git-svn-id: https://smali.googlecode.com/svn/trunk@210 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Renderers/LongRenderer.java
aksmali/UsageException.java
aksmali/baksmali.java
aksmali/dump.java
aksmali/main.java
9f8be068989686815d0bae411bcbc5594e8a7aba 22-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fixed an issue where baksmali didn't output the optional signature info on local debug directives, when available

git-svn-id: https://smali.googlecode.com/svn/trunk@207 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/LocalDebugMethodItem.java
0871036088eb43bbfe82bfe2a9411a79a87c9791 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Misc cleanup/refactoring

git-svn-id: https://smali.googlecode.com/svn/trunk@206 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
56d16a23f6d9a69eef41586f93c2a09b72e21952 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Misc cleanup/refactoring

git-svn-id: https://smali.googlecode.com/svn/trunk@205 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/Reference/MethodReference.java
bf4ca730cc857f76ee703e9efa73ad3e408c6c37 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Misc cleanup/refactoring

git-svn-id: https://smali.googlecode.com/svn/trunk@204 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction10xMethodItem.java
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction12xMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction22xMethodItem.java
aksmali/Adaptors/Format/Instruction23xMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/Instruction32xMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/Reference/StringReference.java
aksmali/Renderers/CharRenderer.java
aksmali/dump.java
8ff7f345aee1b1ff985f3a460ebc72f3111ab33c 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fixed the unsigned byte format, so that it includes the training 't'

git-svn-id: https://smali.googlecode.com/svn/trunk@196 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Renderers/ByteRenderer.java
2b7d3ebb66c5107ecfa2b31edfea5016a55112f7 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added a --dump command

git-svn-id: https://smali.googlecode.com/svn/trunk@192 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/dump.java
aksmali/main.java
c49127449f428c7e2482ef8fd6f870bddf35b7e0 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for the null encoded literal

git-svn-id: https://smali.googlecode.com/svn/trunk@190 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/NullEncodedValueAdaptor.java
3a4eafc4d994f46a6740a6bdf365254267f21c7b 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for the case when the end/restart local directives don't have the name/type/signature information (i.e. when ending a register that contained a parameter, instead of a local defined with a previous .local directive)

git-svn-id: https://smali.googlecode.com/svn/trunk@189 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/LocalDebugMethodItem.java
280fc21738416a1bb1f11643770f67b4f0be0351 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for the null encoded literal

git-svn-id: https://smali.googlecode.com/svn/trunk@188 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
e9ee92dc4c0848146e00d5607eb4baa5750361c8 21-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added the logic to generate smali files in the proper directory structure for every class in the dex file

git-svn-id: https://smali.googlecode.com/svn/trunk@186 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/baksmali.java
d7df5938b154b6d83c8c2e1c7a6fe47f41797e0d 20-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fixed an issue when generating try items at the very end of a method

git-svn-id: https://smali.googlecode.com/svn/trunk@185 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/MethodDefinition.java
d58edc94c0052e144a8255b07618e4e6cf6aeb8c 20-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fixed the rendering of longs

git-svn-id: https://smali.googlecode.com/svn/trunk@184 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Renderers/LongRenderer.java
a68e8c8d4b95926c42878c798de35d223a78c48c 20-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Fixed an issue with the getRegister method in the 21t class

git-svn-id: https://smali.googlecode.com/svn/trunk@183 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/Format/Instruction21tMethodItem.java
3c9013f9c08fa8effc9f6d4dc58212c68eb21742 19-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for parameter names and annotations

git-svn-id: https://smali.googlecode.com/svn/trunk@172 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/ParameterAdaptor.java
b6547e8fd56242dde90275d9b0ba6f3639083a61 19-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for field annotations
Added support for try blocks
Added support for most types of debug info (no parameter names yet)

git-svn-id: https://smali.googlecode.com/svn/trunk@171 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/CatchMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/DebugMethodItem.java
aksmali/Adaptors/EndTryLabelMethodItem.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/LocalDebugMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Renderers/IntegerRenderer.java
fa07a1972e3cff56d5615c18a8797ff58fc9f739 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented class and method annotations

git-svn-id: https://smali.googlecode.com/svn/trunk@166 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/AnnotationAdaptor.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/MethodDefinition.java
1080561460a0d509a24173d7ff38241a1f79a1b6 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented annotation encoded values

git-svn-id: https://smali.googlecode.com/svn/trunk@165 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/AnnotationEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
8c8cec655db8793f19a52abf62fe338dbe3fab7b 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented enum encoded values

git-svn-id: https://smali.googlecode.com/svn/trunk@164 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EnumEncodedValueAdaptor.java
fe93559624d609cb299198f71677e6be872a3b84 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented array encoded values

git-svn-id: https://smali.googlecode.com/svn/trunk@163 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/ArrayEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
5e28c634e729556aca68c375b0176533d3575e1d 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented field and method encoded values, and redid how string and type encoded values are handled

git-svn-id: https://smali.googlecode.com/svn/trunk@162 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/EncodedIndexedItemAdaptor.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/StringEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/TypeEncodedValueAdaptor.java
5f50a1a8b32b8fa81916c7f2d5b3c2d1b266995f 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Cleaned up imports

git-svn-id: https://smali.googlecode.com/svn/trunk@161 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/baksmali.java
aksmali/main.java
8543d8b6262a3f89b1c757fd9c39cac9487a5804 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Cleaned up imports

git-svn-id: https://smali.googlecode.com/svn/trunk@160 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/TypeEncodedValueAdaptor.java
2c5df648d0a04e85274b6872f4a56788f4eb6adc 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Added support for string and type encoded values

git-svn-id: https://smali.googlecode.com/svn/trunk@159 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/StringEncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/TypeEncodedValueAdaptor.java
6ef13753e78bb7abc7e7683d5e533c3395d4a9b6 18-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - some directory/packages renaming
- started adding support for encoded values and static initializers

git-svn-id: https://smali.googlecode.com/svn/trunk@158 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/Adaptors/BlankMethodItem.java
aksmali/Adaptors/ClassDefinition.java
aksmali/Adaptors/EncodedValue/EncodedValueAdaptor.java
aksmali/Adaptors/EncodedValue/SimpleEncodedValueAdaptor.java
aksmali/Adaptors/FieldDefinition.java
aksmali/Adaptors/Format/ArrayDataMethodItem.java
aksmali/Adaptors/Format/Instruction10tMethodItem.java
aksmali/Adaptors/Format/Instruction10xMethodItem.java
aksmali/Adaptors/Format/Instruction11nMethodItem.java
aksmali/Adaptors/Format/Instruction11xMethodItem.java
aksmali/Adaptors/Format/Instruction12xMethodItem.java
aksmali/Adaptors/Format/Instruction20tMethodItem.java
aksmali/Adaptors/Format/Instruction21cMethodItem.java
aksmali/Adaptors/Format/Instruction21hMethodItem.java
aksmali/Adaptors/Format/Instruction21sMethodItem.java
aksmali/Adaptors/Format/Instruction21tMethodItem.java
aksmali/Adaptors/Format/Instruction22bMethodItem.java
aksmali/Adaptors/Format/Instruction22cMethodItem.java
aksmali/Adaptors/Format/Instruction22sMethodItem.java
aksmali/Adaptors/Format/Instruction22tMethodItem.java
aksmali/Adaptors/Format/Instruction22xMethodItem.java
aksmali/Adaptors/Format/Instruction23xMethodItem.java
aksmali/Adaptors/Format/Instruction30tMethodItem.java
aksmali/Adaptors/Format/Instruction31cMethodItem.java
aksmali/Adaptors/Format/Instruction31iMethodItem.java
aksmali/Adaptors/Format/Instruction31tMethodItem.java
aksmali/Adaptors/Format/Instruction32xMethodItem.java
aksmali/Adaptors/Format/Instruction35cMethodItem.java
aksmali/Adaptors/Format/Instruction3rcMethodItem.java
aksmali/Adaptors/Format/Instruction51lMethodItem.java
aksmali/Adaptors/Format/InstructionFormatMethodItem.java
aksmali/Adaptors/Format/PackedSwitchMethodItem.java
aksmali/Adaptors/Format/SparseSwitchMethodItem.java
aksmali/Adaptors/LabelMethodItem.java
aksmali/Adaptors/MethodDefinition.java
aksmali/Adaptors/MethodItem.java
aksmali/Adaptors/Reference/FieldReference.java
aksmali/Adaptors/Reference/MethodReference.java
aksmali/Adaptors/Reference/Reference.java
aksmali/Adaptors/Reference/StringReference.java
aksmali/Adaptors/Reference/TypeReference.java
aksmali/Renderers/ByteRenderer.java
aksmali/Renderers/CharRenderer.java
aksmali/Renderers/FloatRenderer.java
aksmali/Renderers/IntegerRenderer.java
aksmali/Renderers/LongRenderer.java
aksmali/Renderers/ShortRenderer.java
aksmali/baksmali.java
aksmali/wrappers/BlankMethodItem.java
aksmali/wrappers/ClassDefinition.java
aksmali/wrappers/FieldDefinition.java
aksmali/wrappers/LabelMethodItem.java
aksmali/wrappers/MethodDefinition.java
aksmali/wrappers/MethodItem.java
aksmali/wrappers/format/ArrayDataMethodItem.java
aksmali/wrappers/format/Instruction10tMethodItem.java
aksmali/wrappers/format/Instruction10xMethodItem.java
aksmali/wrappers/format/Instruction11nMethodItem.java
aksmali/wrappers/format/Instruction11xMethodItem.java
aksmali/wrappers/format/Instruction12xMethodItem.java
aksmali/wrappers/format/Instruction20tMethodItem.java
aksmali/wrappers/format/Instruction21cMethodItem.java
aksmali/wrappers/format/Instruction21hMethodItem.java
aksmali/wrappers/format/Instruction21sMethodItem.java
aksmali/wrappers/format/Instruction21tMethodItem.java
aksmali/wrappers/format/Instruction22bMethodItem.java
aksmali/wrappers/format/Instruction22cMethodItem.java
aksmali/wrappers/format/Instruction22sMethodItem.java
aksmali/wrappers/format/Instruction22tMethodItem.java
aksmali/wrappers/format/Instruction22xMethodItem.java
aksmali/wrappers/format/Instruction23xMethodItem.java
aksmali/wrappers/format/Instruction30tMethodItem.java
aksmali/wrappers/format/Instruction31cMethodItem.java
aksmali/wrappers/format/Instruction31iMethodItem.java
aksmali/wrappers/format/Instruction31tMethodItem.java
aksmali/wrappers/format/Instruction32xMethodItem.java
aksmali/wrappers/format/Instruction35cMethodItem.java
aksmali/wrappers/format/Instruction3rcMethodItem.java
aksmali/wrappers/format/Instruction51lMethodItem.java
aksmali/wrappers/format/InstructionFormatMethodItem.java
aksmali/wrappers/format/PackedSwitchMethodItem.java
aksmali/wrappers/format/SparseSwitchMethodItem.java
aksmali/wrappers/reference/FieldReference.java
aksmali/wrappers/reference/MethodReference.java
aksmali/wrappers/reference/Reference.java
aksmali/wrappers/reference/StringReference.java
aksmali/wrappers/reference/TypeReference.java
9bc4978139ca38e422ae89065d3062146534132d 16-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Implemented all opcodes for baksmali

git-svn-id: https://smali.googlecode.com/svn/trunk@154 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/wrappers/BlankMethodItem.java
aksmali/wrappers/LabelMethodItem.java
aksmali/wrappers/MethodDefinition.java
aksmali/wrappers/MethodItem.java
aksmali/wrappers/format/ArrayDataMethodItem.java
aksmali/wrappers/format/Instruction10tMethodItem.java
aksmali/wrappers/format/Instruction11nMethodItem.java
aksmali/wrappers/format/Instruction12xMethodItem.java
aksmali/wrappers/format/Instruction20tMethodItem.java
aksmali/wrappers/format/Instruction21hMethodItem.java
aksmali/wrappers/format/Instruction21sMethodItem.java
aksmali/wrappers/format/Instruction21tMethodItem.java
aksmali/wrappers/format/Instruction22bMethodItem.java
aksmali/wrappers/format/Instruction22cMethodItem.java
aksmali/wrappers/format/Instruction22sMethodItem.java
aksmali/wrappers/format/Instruction22tMethodItem.java
aksmali/wrappers/format/Instruction22xMethodItem.java
aksmali/wrappers/format/Instruction23xMethodItem.java
aksmali/wrappers/format/Instruction30tMethodItem.java
aksmali/wrappers/format/Instruction31cMethodItem.java
aksmali/wrappers/format/Instruction31iMethodItem.java
aksmali/wrappers/format/Instruction31tMethodItem.java
aksmali/wrappers/format/Instruction32xMethodItem.java
aksmali/wrappers/format/Instruction3rcMethodItem.java
aksmali/wrappers/format/Instruction51lMethodItem.java
aksmali/wrappers/format/PackedSwitchMethodItem.java
aksmali/wrappers/format/SparseSwitchMethodItem.java
ad1085e32a17b342c2418c117c59d9c8305d71fc 14-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> - Added the plumbing to be able to handle the various types of "things" contained in a method (instructions, labels, debug info, etc.)
- Added wrappers for a few instruction formats
- Added wrappers for item references

git-svn-id: https://smali.googlecode.com/svn/trunk@148 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/wrappers/MethodDefinition.java
aksmali/wrappers/MethodItem.java
aksmali/wrappers/format/Instruction10xMethodItem.java
aksmali/wrappers/format/Instruction11xMethodItem.java
aksmali/wrappers/format/Instruction21cMethodItem.java
aksmali/wrappers/format/Instruction35cMethodItem.java
aksmali/wrappers/format/InstructionFormatMethodItem.java
aksmali/wrappers/reference/FieldReference.java
aksmali/wrappers/reference/MethodReference.java
aksmali/wrappers/reference/Reference.java
aksmali/wrappers/reference/StringReference.java
aksmali/wrappers/reference/TypeReference.java
36836121d7ecf72050d3ef065b7ab5fa86548319 13-Jun-2009 JesusFreke@JesusFreke.com <JesusFreke@JesusFreke.com@55b6fa8a-2a1e-11de-a435-ffa8d773f76a> Adding initial sources for baksmali

git-svn-id: https://smali.googlecode.com/svn/trunk@143 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
aksmali/UsageException.java
aksmali/baksmali.java
aksmali/main.java
aksmali/wrappers/ClassDefinition.java
aksmali/wrappers/FieldDefinition.java
aksmali/wrappers/MethodDefinition.java