History log of /external/desugar/test/java/com/google/devtools/build/android/desugar/ByteCodeTypePrinter.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
0156e0d255709355b1e8f5303bd8256ab6967b0a 18-Dec-2017 Colin Cross <ccross@android.com> Revert "Revert "Merge remote-tracking branch 'aosp/upstream-master' into desugar""

This reverts commit 67e182a0a1c1d59b5fa107a42ba3bacdc7255eba.

Bug: 70415451
Test: m checkbuild
Change-Id: I87e967894b53b0f18defc48868e4e3b8181ddd33
/external/desugar/test/java/com/google/devtools/build/android/desugar/ByteCodeTypePrinter.java
67e182a0a1c1d59b5fa107a42ba3bacdc7255eba 15-Dec-2017 Colin Cross <ccross@android.com> Revert "Merge remote-tracking branch 'aosp/upstream-master' into desugar"

This reverts commit 28068806fa84995d3bd0f9aa448058c1d55cce36.

Reason for revert: Caused "Too many open files" errors.

Bug: 70415451
Change-Id: I2186e7eb5dd1501fe1c1c9c2f1fb1f1b6df2cc24
/external/desugar/test/java/com/google/devtools/build/android/desugar/ByteCodeTypePrinter.java
b06ac544a149ba745b7e1356047bc7a4a91a502f 12-Dec-2017 cnsun <cnsun@google.com> Correct stack map frame computation. When visiting CHOP Frame (discarding n local local variables), the current implementation deletes n local slots, which is wrong when the local variable to delete is of type category 2.

This CL deletes local variables instead of local slots.

Another change is using the Label objects to identify uninitialized values, instead of the offsets of labels, because the offsets of labels might not be computed.

RELNOTES:n/a.
PiperOrigin-RevId: 178762969
GitOrigin-RevId: 770b1779dfd4e673e1523bc7e6f1772d4f4dfc04
Change-Id: Ib1ae1a813a51649d5d9522bdf393f48e56432b66
/external/desugar/test/java/com/google/devtools/build/android/desugar/ByteCodeTypePrinter.java
f0971e886d2142be6219bb4a0ffa03f26b02f110 14-Nov-2017 cnsun <cnsun@google.com> Specialize $closeResource(Throwable, AutoCloseable) so that desugared code does not depend on AutoCloseable, as it is not available before API 19.

This CL includes the following:
1. A type inference algorithm based on ASM. It relies on the stack map frames to compute type information at the entry of basic blocks.
2. The type inference is used to infer the types of the resources to be closed. Then for each concrete resource type, we specialize the synthetic $closeResource method to $closeResource(Throwable, <concrete resource type>).

RELNOTES: None
PiperOrigin-RevId: 175731437
GitOrigin-RevId: e83f3b1fb010298cbe1e16e5f7f2f39bfb045cef
Change-Id: I347f8e4058a191621fb21bf2e81d7cf8f39ce6aa
/external/desugar/test/java/com/google/devtools/build/android/desugar/ByteCodeTypePrinter.java