History log of /dalvik/dx/src/com/android/dx/cf/code/BytecodeArray.java
Revision Date Author Comments
9dbd802c8c96c3a66873bc600bc7d1374a1d08e5 31-Aug-2017 Orion Hodson <oth@google.com> dx: Minor code clean-up

A few automated code clean-ups:
- Insert missing @Override annotations.
- Make fields final where possible.
- Use StringBuilder rather StringBuffer for local use.
- Clean-up imports.

Bug: 65231722
Test: dx/tests/run-all-tests
Change-Id: I49810f1d43cb53ad32636a66eda2fadc538ba249
d5370b6315ee137744746479003c9d07185f34f0 10-Jul-2017 Orion Hodson <oth@google.com> Revert^2 "Refinements relating to invoke-custom"

This reverts commit bd6107f1deec28e1184bfa4fd5a717d6b35b259d.

Use the dump informatin from dx to validate call sites rather using
dexdump. The latter is not available in the buildbot build.

Bug: 36641082
Test: dalvik/dx/tests/run-all-tests
Test: dalvik/dx/tests/run-test 135
Change-Id: Id7126010bc84f9bade956c9a4c8c1c5563a307fe
bd6107f1deec28e1184bfa4fd5a717d6b35b259d 07-Jul-2017 Nicolas Geoffray <ngeoffray@google.com> Revert "Refinements relating to invoke-custom"

Breaks dx tests.

This reverts commit ff80988c1d58ccc63f12e61cce1417c4f5239eee.

Change-Id: I822b6cfb81c99d2d92bb560b8cedfaea42913344
ff80988c1d58ccc63f12e61cce1417c4f5239eee 05-Jul-2017 Orion Hodson <oth@google.com> Refinements relating to invoke-custom

Move assignment of call site references in dx to avoid call site
duplication. Previously we were allocating call site references in the
BytecodeArray when visiting instructions, but there are two visitors
that are applied to instructions :- the BasicBlocker and the
Simulator. Allocation now happens in the Simulator visitor.

Update dexdump to print call site offset of each listed callsite to
enable calculating the number of call site ids and call site instances.

Update 135-invoke-custom test to sanity check the number of call sites
and call site ids.

Do not allow dx/tests/run-test to report success if it fails when run
with --update.

Bug: 36641082
Test: dalvik/dx/tests/run-all-tests
Test: dalvik/dx/tests/run-test 135
Change-Id: I8bb1f6c99c97c7a9fa785503df4f66c9e9b80672
b7d748318354aba23ba03f76bdefc31fa6adc885 13-Jun-2017 Orion Hodson <oth@google.com> dx: Add support for invoke-custom

This change adds the translations to invoke-custom and extends the DEX
file sections that dx emits sections for method handles and call
sites.

Test: dx/tests/run-test 135
Test: dx/testse/run-all-tests
Bug: 36641082
Bug: 36957105
Change-Id: Ia1c5b548755485755e8bab0a8f99bd745c2960cd
5ca383d7373cf7c54706b8e70d534deee8d2e3ad 29-Apr-2013 delphinemartin <delphinemartin@google.com> Added support for version 51 class files in dx

If an invokedynamic is present, an exception is thrown.

(cherry picked from commit 94629f2a31206637fc79535ffef1b223e9f02e30)

Change-Id: I1922d4cf78465dfd2ac53f8694b7317a1d98016d
6b386bfb92ef6efe8f963270fc5a4b756fca225e 15-Feb-2011 jeffhao <jeffhao@google.com> Fix for complex jsr nesting causing NullPointerException.

Happens when one jsr calls another that ultimates throws an exception.
The subroutine inliner assumes the return block of the first jsr is
reachable when it's not, causing access to a null field. Fixed by
checking the field for null before accessing it.

Change-Id: Id1fb376c9f14ffebc77cdbd253a713eb6d949c1f
19cefdcde26ea31d06cef031032b2ef78013d976 01-Feb-2011 Dan Bornstein <danfuzz@android.com> Add ShortArrayCodeInput.

This is analogous to ByteArrayInputStream, and is hopefully useful
as-is to be the impedence matcher between CodeReader and InstructionCodec.

I also modified CodeInput's methods to throw EOFException, implementing
ShortArrayCodeInput to throw it in the expected cases.

Change-Id: Id46366590ed5a2607bc6672d040f9d11fa8a445d
Bonus: Fixed a comment in BytecodeArray that I happened to notice.
9c907e0f7dd74ef351d0116783e088bb9ed68bdb 27-Oct-2010 Dan Bornstein <danfuzz@android.com> The failure of dx test 105 wasn't actually spurious. Fixed the code.

In particular, for array load and store instructions, dx was being too
aggressive about letting the contents of the stack override the
implied type expected by the instructions. This led to cases where dx
would emit code instead of reporting an error.

The failure on the array load side of things implied that there also
needed to be a new regression test on the store side, since the
existing array store test didn't catch this. So, I added that too in
this change.

Finally, I took this opportunity to do minor whitespace-type cleanups
in a couple of related files that I opened during the course of the
investigation.

Change-Id: I72c644f66afb1108ae43a129ac81b010d072155a
de75089fb7216d19e9c22cce4dc62a49513477d3 09-Jun-2010 Carl Shapiro <cshapiro@google.com> Remove trailing whitespace.

Change-Id: I95534bb2b88eaf48f2329282041118cd034c812b
72e93344b4d1ffc71e9c832ec23de0657e5b04a5 13-Nov-2009 Jean-Baptiste Queru <jbq@google.com> eclair snapshot
30d4c4a0e63f5bd6f1887bb987d7836ea091144e 30-Aug-2009 Alexey Tarasov <tarasov@dodologics.com> Cosmetic change: cst -> type in javadoc @param
99409883d9c4c0ffb49b070ce307bb33a9dfe9f1 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import //branches/master/...@140412
f6c387128427e121477c1b32ad35cdcaa5101ba3 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
f72d5de56a522ac3be03873bdde26f23a5eeeb3c 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
2ad60cfc28e14ee8f0bb038720836a4696c478ad 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution