History log of /art/dexdump/dexdump.cc
Revision Date Author Comments
b06e28e5b9fbabe3e69b18f31bf353eaff5d0c1f 10-Dec-2015 David Srbecky <dsrbecky@google.com> Refactor DexFile::DecodeDebugInfo.

Split the method into two - one for locals and one for positions.
All uses of the method request only one of the two and it makes the
code slightly cleaner. The position variant requires fewer parameters.

Expose additional line table information which was previously ignored
by the decode method (prologue, epilogue, source file).

Change-Id: Idf8ba98fa58ea0d2103932b5cc0af81365885107
1f12e28d52dace9f6e5906b5b7c43793acbc7971 11-Dec-2015 Alex Light <allight@google.com> Make 'dexdump2 -l xml' include whether each class is an interface.

Change-Id: Id83ef52454596ab80b16042e58ff9d00bc5fb8ed
82863f0ce9fa45f6b14d12c35a6a50e2772ab26a 05-Nov-2015 Shinichiro Hamaji <hamaji@google.com> Output static field values in dexdump

This is necessary to generate table-of-contents of .dex files
to prevent unnecessary rebuilds for implementation-only
changes because these values can be used while compiling other
modules.

Also modify EncodedStaticFieldValueIterator so it can be used
without ClassLoader/Linker.

Bug: 24597504
Change-Id: Ida0c839f9dd6961e1c1b3a380e2092042fad03bb
a3bb72036f5454e410467f7151dc89f725ae1151 27-Oct-2015 Aart Bik <ajcbik@google.com> Added format 25x to dexdump(2).

Rationale: Igor introduced a new format for invoke-lambda which
was not recognized by dexdump(2) yet.

Sample output:

Change-Id: I2d9cd4b740452bb8380de2234819bcd4ad49345a
0002ac: |[0002ac] Hello.doit:()V
0002bc: f600 0200 |0000: create-lambda v0, LHello;.-void_doit__LambdaImpl0:(J)V // method@0002
0002c0: f300 0000 |0002: invoke-lambda v0, {}
0002c4: f600 0300 |0004: create-lambda v0, LHello;.-void_doit__LambdaImpl1:(JI)V // method@0003
0002c8: 1212 |0006: const/4 v2, #int 1 // #1
0002ca: f310 2000 |0007: invoke-lambda v0, {v2}
0002ce: 0e00 |0009: return-void
5073fedd553afeb6ccdb49c1a1ab2cc2947c0870 10-Aug-2015 Andreas Gampe <agampe@google.com> ART: Add utility function to dump dex CFG

Add a utility function in utils.h to dump the dex CFG of
a method.

Add an option ("-g") to dump CFGs of a dex file in dexdump2.

Change-Id: I380082f0abe8ed7eeb6a9186364a99425f69f55c
4e14960f070a0979e785d278ec3452905b669110 09-Jul-2015 Aart Bik <ajcbik@google.com> Enable multi-dex content per file in dexlist/dump.

Rationale:
Unlike the original Dalvik-based utilities, the Art-based
utilities are able to extract multi-dex content from one file.
So no need for any artificial restriction on number of dex files.

Bug: 22322814
Change-Id: I7c603d22c7e0caa5ae712b905d9bb83982f1b918
22c26f5b454b56a20215cb8bbc5e8afcaccafdb0 08-Jul-2015 Aart Bik <ajcbik@google.com> Revert "Make Art dexdump/list the real utilities."

This reverts commit d10ee1ce1ccd92c003ec49c15edf339e74c13894.


REASON:
win_sdk is not happy with my migration :-(

Change-Id: I2ed196da3f5883112883525f883d25b36e48352a
d10ee1ce1ccd92c003ec49c15edf339e74c13894 08-Jul-2015 Aart Bik <ajcbik@google.com> Make Art dexdump/list the real utilities.

Note: depends on pending CL that removes
old dexdump/list and libdex.

Bug: 22322814
Change-Id: I99259553f0f4655a633989feb8d67aa11de8b29d
69ae54abd4eaad54dc73b75ea7c8051aa515581d 01-Jul-2015 Aart Bik <ajcbik@google.com> Migrated dexdump from Dalvik (libdex) into Art (libart)

Rationale:
The new dexdump (temporarily called dexdump2 until we are
satisfied with the migration) is a re-implementation of the
original dexdump utility that was based on Dalvik functions
in libdex into a new dexdump that is now based on Art functions
in libart instead.

The output is identical to the original for *correct* DEX files.
Output in error messages and the usage() may differ, however,
since the new utility relies on Art parsing and verification.

NOTE 1:
ODEX files are no longer supported.

NOTE 2:
Where possible, I kept the file as close to the original
as possible, including some archaic C idioms on memory
allocation; those can be improved over time.

NOTE 3:
I used the standard Android.mk format for the new dexdump,
but this probably needs to be Art-i-fied.

NOTE 4:
Some minor issues that need resolution are marked with a TODO.

Bug: 17442393
Change-Id: I753743f64afcf4b84b8d33efbd1cfcb7908f0c3e