aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-06-07Revert "Cleanup r8-wip-dev r8 dependencies."android-o-mr1-iot-release-smart-display-r9android-o-mr1-iot-release-smart-display-r8android-o-mr1-iot-release-smart-display-r5android-o-mr1-iot-release-smart-display-r40.1Jandroid-o-mr1-iot-release-smart-display-r4android-o-mr1-iot-release-smart-display-r39android-o-mr1-iot-release-smart-display-r30android-o-mr1-iot-release-smart-display-r3android-o-mr1-iot-release-smart-display-r22android-o-mr1-iot-release-smart-display-r14android-o-mr1-iot-release-smart-clock-r6android-o-mr1-iot-release-smart-clock-r2android-o-mr1-iot-release-smart-clock-fsiandroid-o-mr1-iot-release-smart-clock-fcsandroid-o-mr1-iot-release-cube_r2android-o-mr1-iot-release-cube-fsiandroid-o-mr1-iot-release-cube-fcsandroid-o-mr1-iot-release-1.0.8android-o-mr1-iot-release-1.0.7android-o-mr1-iot-release-1.0.5android-o-mr1-iot-release-1.0.4android-o-mr1-iot-release-1.0.3android-o-mr1-iot-release-1.0.2android-o-mr1-iot-release-1.0.10oreo-mr1-1.2-iot-releaseMads Ager
This reverts commit 0326d86a6e0a6179ea6cd72353f6f051efccd894. Reason for revert: master branch is unused and has old sources that do not work with this change. Change-Id: Iff0db81f1efd241794a5df5b3fa90f8ffb06857f
2018-05-23Cleanup r8-wip-dev r8 dependencies.android-o-mr1-iot-release-1.0.1Mads Ager
Apache commons compress is not used by D8 and R8. We are switching from json-simple to gson. In order to make sure that r8-wip-dev does not break when we do so, this adds gson as a dependency. Once we have landed the switch to gson, we need to delete the json-simple deps. Test: mmma -j external/r8 Change-Id: I5b2bf2484f148e01c48a29a7730cdb44c76d7ac8
2017-11-20Add back D8 target.android-o-mr1-iot-release-1.0.0android-o-mr1-iot-preview-8android-o-mr1-iot-preview-7o-mr1-iot-preview-8o-mr1-iot-preview-7Alan Leung
This builds the actual D8 compiler instead of the hack that builds and run CompatDX Test: m d8 Bug: 69329508 Change-Id: I6d620ca9aa2bf2e391ed4ea53a89323930e0eb02
2017-11-16Merge "Rename d8 ToT to d8-compat-dx"Treehugger Robot
2017-11-15Add metadataBill Yi
BUG:67772237 Change-Id: I9c04af807d96607bd3f92b949863df2b0e0ecb86
2017-11-10Rename d8 ToT to d8-compat-dxAlan Leung
Test: m -j 32 Change-Id: I4f4abe442a5bb22b7f715bb374290d274bdfcb88
2017-10-27Update external/r8 to 2bfb29asdk-releaseSøren Gjesse
Merge remote-tracking branch 'aosp/upstream-mirror' into merge-r8-2bfb29a Test: m -j USE_D8=true USE_R8=true tests Change-Id: I249f979f3e349859607d3d67930d01e7cb82b901
2017-10-27Merge "Implement support for not overloading aggressively, making that the ↵Stephan Herhut
default."
2017-10-27Implement support for not overloading aggressively, making that the default.Stephan Herhut
Bug: 67757251 Change-Id: Ic814678649b165e48629f218bdc94a24af9ac7d8
2017-10-26Apply the given pg-map via graph lense.Jinseong Jeon
While visiting types in a subtyping order, mappings in the pg-map will be converted to a custom graph lense. One caveat is to detect mapping conflicts, e.g., so-called diamond problem. Another caveat is to apply class mappings on-the-fly. We should rename all the occurrences of renamed types while applying member mappings. Yet another caveat is uses of renamed lib classes inside pgr classes. We have a separate step that fixes trees by explicitly substitute those type appearances with applied names. ------ Note that, instead of way too general support (http://go/r8g/4880), we decided to support only the simple use case: compile a new piece of code (e.g., test) against an obfuscated app. See http://b/64802420#comment7 for more details. Bug: 64802420 Change-Id: Ib3cb35811061c046e94a4fc9a021a783f15050dc
2017-10-26Merge "Revert "Define distinct access-flag types for classes, methods and ↵Rico Wind
fields.""
2017-10-26Revert "Define distinct access-flag types for classes, methods and fields."Rico Wind
This reverts commit f76614b69a9a5cdf865087797546add35401ab07. Reason for revert: <INSERT REASONING HERE> Change-Id: I9c57ea39b5f78ef4e960f875da1f754db2d27349
2017-10-26Update external/r8 to 4d22d2d1Søren Gjesse
Merge remote-tracking branch 'aosp/upstream-mirror' into merge-r8-4d22d2d1 Test: m -j USE_D8=true USE_R8=true tests Change-Id: I0fdbb52222288b79254479882e2dbadb9051d9d2
2017-10-26Merge "Define distinct access-flag types for classes, methods and fields."Ian Zerny
2017-10-26Define distinct access-flag types for classes, methods and fields.Ian Zerny
Change-Id: Ia2b5d28f1d4a5ea478b529915227dcf0d4b0afd3
2017-10-26Merge "Remove a bunch of file descriptor leaks"Rico Wind
2017-10-26Incorrect ASM import.Ian Zerny
R=sgjesse Change-Id: I9c259f385eb23174b2b30e04127fb311aaac389d
2017-10-26Remove a bunch of file descriptor leaksRico Wind
Bug: Change-Id: Idba1848b5082f95494a00c1b0fcf15a6aeee3737
2017-10-26Update compat proguard to ignore missing classes when not shrinkingSøren Gjesse
It seems that Proguard does not warn about missing classes when -dontshrink is set. This change tries to mimic that behaviour for compat proguard. Also add the explicit --ignore-missing-classes flag to compat proguard. Bug: 68249935 Change-Id: I1134d368803b394cb7312e060afaf56cbd988ba8
2017-10-26Enable InconsistentOverloads checking in ErrorProne.Stephan Herhut
Bug: Change-Id: I1e0be14da4ba39e3f77464e6a249aa32b1b42bb9
2017-10-26Partial identity transformation from Java bytecode to Java bytecode.Ian Zerny
This change minimally enables writing out Java bytecode from Java bytecode inputs for a simple hello world program. Follow-up work will extend the support to the full program structure and producing code via our IR. Bug: 65390962 Change-Id: I978c7400f9a21323dc0c5e95fc55272300839878
2017-10-26Limit use of jar building utility.Ian Zerny
R=ager Bug: Change-Id: Ia77925c0c0c02c1f91352b8f4943e90fb8bc7336
2017-10-26Remove loop over all DEX runtimes now that bots support 4.4.4.Ian Zerny
R=ager Change-Id: I6afd7d7d17f29539b489876afbcfbacc18e72877
2017-10-25Add file missing from last commitSøren Gjesse
Bug: 68246915 Change-Id: Id6331909d1ee2d7bc2da3f5af0f9f544abc03d49
2017-10-25Update external/r8 to 1a0b0daSøren Gjesse
Merge remote-tracking branch 'aosp/upstream-mirror' into merge-r8-1a0b0da Test: m -j USE_D8=true USE_R8=true Change-Id: I96089c1eb1bf66085d2434b053d3c112d0ecf3a9
2017-10-25Make no -keepattributes flag keep all in Proguard compatibility modeSøren Gjesse
When running with --force-proguard-compatibility for the compat proguard command treat no -keepattributes flag as keep all attributes when not minifying. This should follow the Proguard semantics where -keepattributes is documented as "Only applicable when obfuscating". Bug: 68246915 Change-Id: Ib0e71cd8b0819af6ca148365d9b4d155db06e5e0
2017-10-25Merge "Support skipping of class loader frames in debug tests"Sebastien Hertz
2017-10-25Support skipping of class loader frames in debug testsSebastien Hertz
The default debug filtering of IntelliJ skips frames in class loader. This CL adds the same capability to our debug test infrastructure. We used to skip frames by repeating the same step command. But to skip class loading, we actually need to step out of the current frame so that the whole class loading code has executed. In order to achieve this, this CL refactors how step filtering is implemented. Now the StepFilter instance is reponsible for adding extra step commands into the commands queue when it is necessary. By extension, the 'step until' capability is also a StepFilter instance now. Since we can skip class loader frames now, this CL also enables the tests that were skipped for Dalvik due to class loader frames: * com.android.tools.r8.debug.InterfaceMethodTest#testDefaultMethod * com.android.tools.r8.debug.MinificationTest#testBreakInMainClass Bug: 67225390 Change-Id: I112161be31cc99ddcf1eeaa1b6a63a97a311b4d6
2017-10-25Enable more ErrorProne checks.Stephan Herhut
Bug: Change-Id: I1c16b0485a1549d251d9d900b7afca98a57fea15
2017-10-25Merge remote-tracking branch 'aosp/upstream-mirror' into merge-r8-3d2cdde19994Søren Gjesse
Test: m -j USE_D8=true USE_R8=true Change-Id: I1450ebe12dbd0cc200f0c4eda1a883b6dcab573f
2017-10-25Merge "Enable errorprone check to ensure hashCode is implemented."Stephan Herhut
2017-10-24Merge remote-tracking branch 'goog/stage-aosp-master' into HEADBill Yi
2017-10-24Detach PG attributes from InternalOptions.Jinseong Jeon
-keepattributes should belong to Proguard config, not internal options. Bug: 66399389 Change-Id: I247987455b80f094987904255ebe72580ef15b36
2017-10-24Merge "Remove use of Hashtable"Sebastien Hertz
2017-10-24Update external/r8Søren Gjesse
This to ToT r8. For the new dependencies their SHA-1 is identical to the one on maven.org: $ sha1sum deps/guava-23.0.jar c947004bb13d18182be60077ade044099e4f26f1 deps/guava-23.0.jar matches http://central.maven.org/maven2/com/google/guava/guava/23.0/guava-23.0.jar.sha1 $ sha1sum deps/asm-* bc6fa6b19424bb9592fe43bbc20178f92d403105 deps/asm-6.0.jar f256fd215d8dd5a4fa2ab3201bf653de266ed4ec deps/asm-commons-6.0.jar a624f1a6e4e428dcd680a01bab2d4c56b35b18f0 deps/asm-tree-6.0.jar 430b2fc839b5de1f3643b528853d5cf26096c1de deps/asm-util-6.0.jar matches http://central.maven.org/maven2/org/ow2/asm/asm/6.0/asm-6.0.jar.sha1 http://central.maven.org/maven2/org/ow2/asm/asm-commons/6.0/asm-commons-6.0.jar.sha1 http://central.maven.org/maven2/org/ow2/asm/asm-tree/6.0/asm-tree-6.0.jar.sha1 http://central.maven.org/maven2/org/ow2/asm/asm-util/6.0/asm-util-6.0.jar.sha1 Test: m -j Test: m -j USE_D8=true Test: m -j USE_D8=true USE_R8=true Change-Id: I558f4042335b9a8437a7cc7105cb73095ba03773
2017-10-24Enable errorprone check to ensure hashCode is implemented.Stephan Herhut
Bug: Change-Id: I918fd87f5d0175cdff928a8be64c6686d6689dfa
2017-10-24Support multiple -dontwarn and -adaptclassstrings linesSøren Gjesse
Before only the last of these lines had effect. Bug: 67836745 Change-Id: I6206211405e93b3b419af6e6b2b517a546749dc8
2017-10-24Merge "Add support for AutoValue in examples."Stephan Herhut
2017-10-24Add support for AutoValue in examples.Stephan Herhut
The @AutoValue annotation can _only_ be used in test/examples so that we can write tests for this common pattern. This is not meant to encourage general use of @AutoValue in the code base. Bug: Change-Id: Ie2f43cb4e49bfb2ed0f462c1d12f04c384fb1432
2017-10-24Remove use of HashtableSebastien Hertz
The Hashtable class is deprecated. This CL replaces its usage by either by HashMap or Int2IntArrayMap. Change-Id: I17793081eeb2cb756aff473d29963e4c2279d696
2017-10-24Merge "Also synchronize generation of staticValues."Stephan Herhut
2017-10-24Merge remote-tracking branch 'aosp/upstream-mirror' into new-mergeSøren Gjesse
Change-Id: I075cd3f471df1ac7ba494c58eee22a9f43f8c3c3
2017-10-24Revert "Automatically (not explicitly) control Proguard-related default options"Tamas Kenez
This reverts commit ad41f3f7a62832034b9bc90aef4ee23e31ce03c0. Reason for revert: bot failures Change-Id: I6b5dec164f495d5ae47312564608b4eda93fad98
2017-10-24Also synchronize generation of staticValues.Stephan Herhut
Bug: Change-Id: Idead3524d1e54cb000b29eb5421765d98dde2d27
2017-10-24Automatically (not explicitly) control Proguard-related default optionsTamas Kenez
This CL re-applies 30ebba3 which has been reverted in 12bcf4f because of these failures: http://storage.googleapis.com/r8-test-results/c0ff09e6-bac6-4ded-b776-b5b15342d83b/test/index.html Certain options (minification/shrinking/keeprules/attrs) have different defaults with and without a Proguard config file. Originally it has been decided automatically, based on the presence of Proguard options. This has been changed to explicit decision in 5e8f1ba because of complications from handling a ProguardConsumer. It has been suggested to restore the automatic choice but the first attempt 30ebba3 broke some tests. This CL restores the original, automatic choice. Bug: Change-Id: I7e0e7b96354e376829cd548b9a76e1efcdfbcf63
2017-10-24Merge "Ensure member arrays are accessed synchronized during write."Stephan Herhut
2017-10-24Merge "JDWP/MinificationTest: fix ClassLoader issue with Dalvik (4.4.4)"Tamas Kenez
2017-10-24Merge "Compat proguard ignores dx option --core-library"Søren Gjesse
2017-10-24Compat proguard ignores dx option --core-librarySøren Gjesse
We pass all dx options to compat proguard in the Android platform build and some builds pass --core-library. This option is also ignored by compat dx. Change-Id: I294988c658a60f6aca46b60b16f0f741a0124668
2017-10-23Ensure member arrays are accessed synchronized during write.Stephan Herhut
Now that we share classes between two files, we have to make sure that we do not access the member arrays while updating them. The referenced bug was caused (I believe) by us using the array to collect items in one thread while another thread was sorting them. This CL changes synchronization to be per member array instead of per dex class. This is mostly to make it more visible what we are synchronizing on. Bug: 67258314 Change-Id: I28a9bb68335673377032e0470ca5aef4c96e87ca