Bug P3
Status Update
Comments
di...@google.com <di...@google.com> #2
Thank you for the report, and sorry for any inconvenience. While reproducing the issue, one workaround I found is: -keeppackagenames com.example.customview.extra** (i.e., double asterisks, instead of single).
https://www.guardsquare.com/en/products/proguard/manual/usage#filters
R8 currently regards <package_filter> in that directive as <class_filter>. That's why single asterisk---a class name not containing the package separator---doesn't work for now, whereas double asterisks---matches a class name, possibly containing any number of package separators---works. The caveat is, use of, e.g., extra**, will keep all the sub packages as well. :( We'll prepare the fix soon.
R8 currently regards <package_filter> in that directive as <class_filter>. That's why single asterisk---a class name not containing the package separator---doesn't work for now, whereas double asterisks---matches a class name, possibly containing any number of package separators---works. The caveat is, use of, e.g., extra**, will keep all the sub packages as well. :( We'll prepare the fix soon.
sr...@google.com <sr...@google.com> #3
Project: r8
Branch: master
commit a9a9e7d1231726094c6e16c2cef1bad887da3bba
Author: Jinseong Jeon <jsjeon@google.com>
Date: Tue Apr 09 11:49:28 2019
Reproduce b/130135768 : keeppackagenames with asterisks
Bug: 130135768
Change-Id: I5ab1cdb5148a570a63bdd488358759bb33da700a
M src/test/java/com/android/tools/r8/TestShrinkerBuilder.java
A src/test/java/com/android/tools/r8/naming/KeepPackageNamesTest.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/Top.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/sub/SubClass.java
https://r8-review.googlesource.com/36860
Branch: master
commit a9a9e7d1231726094c6e16c2cef1bad887da3bba
Author: Jinseong Jeon <jsjeon@google.com>
Date: Tue Apr 09 11:49:28 2019
Reproduce
Bug: 130135768
Change-Id: I5ab1cdb5148a570a63bdd488358759bb33da700a
M src/test/java/com/android/tools/r8/TestShrinkerBuilder.java
A src/test/java/com/android/tools/r8/naming/KeepPackageNamesTest.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/Top.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/sub/SubClass.java
di...@google.com <di...@google.com> #4
Project: r8
Branch: master
commit 391e2992aee375adf46edbb5e7b098556c8604ed
Author: Søren Gjesse <sgjesse@google.com>
Date: Fri Apr 12 11:05:43 2019
New implementation of -keeppackagenames
This implementation collects the list of package names given for
-keeppackagenames and matches against that in the minifier.
The previous implementation created class matching rules to piggybag
on the existing matching.
Bug: 130135768
Change-Id: I5a341e145747a5dec8788a066a0c67d4e259ec77
M src/main/java/com/android/tools/r8/graph/DexType.java
M src/main/java/com/android/tools/r8/naming/ClassNameMinifier.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfigurationParser.java
D src/main/java/com/android/tools/r8/shaking/ProguardKeepPackageNamesRule.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageMatcher.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageNameList.java
M src/main/java/com/android/tools/r8/shaking/RootSetBuilder.java
M src/test/java/com/android/tools/r8/naming/KeepPackageNamesTest.java
M src/test/java/com/android/tools/r8/shaking/ProguardConfigurationParserTest.java
A src/test/java/com/android/tools/r8/shaking/ProguardPackageNameMatcherTest.java
https://r8-review.googlesource.com/36944
Branch: master
commit 391e2992aee375adf46edbb5e7b098556c8604ed
Author: Søren Gjesse <sgjesse@google.com>
Date: Fri Apr 12 11:05:43 2019
New implementation of -keeppackagenames
This implementation collects the list of package names given for
-keeppackagenames and matches against that in the minifier.
The previous implementation created class matching rules to piggybag
on the existing matching.
Bug: 130135768
Change-Id: I5a341e145747a5dec8788a066a0c67d4e259ec77
M src/main/java/com/android/tools/r8/graph/DexType.java
M src/main/java/com/android/tools/r8/naming/ClassNameMinifier.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfigurationParser.java
D src/main/java/com/android/tools/r8/shaking/ProguardKeepPackageNamesRule.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageMatcher.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageNameList.java
M src/main/java/com/android/tools/r8/shaking/RootSetBuilder.java
M src/test/java/com/android/tools/r8/naming/KeepPackageNamesTest.java
M src/test/java/com/android/tools/r8/shaking/ProguardConfigurationParserTest.java
A src/test/java/com/android/tools/r8/shaking/ProguardPackageNameMatcherTest.java
ll...@google.com <ll...@google.com>
di...@google.com <di...@google.com> #5
Project: r8
Branch: d8-1.4
commit b6ca9ee953e43aa029411bb4db030e4694180063
Author: Christoffer Quist Adamsen <christofferqa@google.com>
Date: Fri Apr 12 12:51:40 2019
Version 1.4.86
Cherry pick: New implementation of -keeppackagenames
CL:https://r8-review.googlesource.com/c/r8/+/36944
Cherry pick: Reproduce b/130135768 : keeppackagenames with asterisks
CL:https://r8-review.googlesource.com/c/r8/+/36860
Bug: 130135768
Change-Id: I8a340afe4811ec3f8826956c99b94346f4c2c8b4
M src/main/java/com/android/tools/r8/Version.java
M src/main/java/com/android/tools/r8/graph/DexType.java
M src/main/java/com/android/tools/r8/naming/ClassNameMinifier.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfigurationParser.java
D src/main/java/com/android/tools/r8/shaking/ProguardKeepPackageNamesRule.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageMatcher.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageNameList.java
M src/main/java/com/android/tools/r8/shaking/RootSetBuilder.java
M src/test/java/com/android/tools/r8/TestShrinkerBuilder.java
A src/test/java/com/android/tools/r8/naming/KeepPackageNamesTest.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/Top.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/sub/SubClass.java
M src/test/java/com/android/tools/r8/shaking/ProguardConfigurationParserTest.java
A src/test/java/com/android/tools/r8/shaking/ProguardPackageNameMatcherTest.java
https://r8-review.googlesource.com/36959
Branch: d8-1.4
commit b6ca9ee953e43aa029411bb4db030e4694180063
Author: Christoffer Quist Adamsen <christofferqa@google.com>
Date: Fri Apr 12 12:51:40 2019
Version 1.4.86
Cherry pick: New implementation of -keeppackagenames
CL:
Cherry pick: Reproduce
CL:
Bug: 130135768
Change-Id: I8a340afe4811ec3f8826956c99b94346f4c2c8b4
M src/main/java/com/android/tools/r8/Version.java
M src/main/java/com/android/tools/r8/graph/DexType.java
M src/main/java/com/android/tools/r8/naming/ClassNameMinifier.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfiguration.java
M src/main/java/com/android/tools/r8/shaking/ProguardConfigurationParser.java
D src/main/java/com/android/tools/r8/shaking/ProguardKeepPackageNamesRule.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageMatcher.java
A src/main/java/com/android/tools/r8/shaking/ProguardPackageNameList.java
M src/main/java/com/android/tools/r8/shaking/RootSetBuilder.java
M src/test/java/com/android/tools/r8/TestShrinkerBuilder.java
A src/test/java/com/android/tools/r8/naming/KeepPackageNamesTest.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/Top.java
A src/test/java/com/android/tools/r8/naming/keeppackagenames/sub/SubClass.java
M src/test/java/com/android/tools/r8/shaking/ProguardConfigurationParserTest.java
A src/test/java/com/android/tools/r8/shaking/ProguardPackageNameMatcherTest.java
ll...@google.com <ll...@google.com> #6
not for now.. Need Chris to catch up with all the context.
bl...@google.com <bl...@google.com> #7
Hoi, cjdb! You haven't added a comment to this issue in a while. Please do so!
Automated by Blunderbuss job chromeos-toolchain-blunderbuss for component 1038090.
Automated by Blunderbuss job chromeos-toolchain-blunderbuss for component 1038090.
bl...@google.com <bl...@google.com> #8
Hoi, cjdb! You haven't added a comment to this issue in a while. Please do so!
Automated by Blunderbuss job chromeos-toolchain-blunderbuss for component 1038090.
Automated by Blunderbuss job chromeos-toolchain-blunderbuss for component 1038090.
bl...@google.com <bl...@google.com> #9
Hoi, cjdb! You haven't added a comment to this issue in a while. Please do so!
Automated by Blunderbuss job chromeos-toolchain-blunderbuss for component 1038090.
Automated by Blunderbuss job chromeos-toolchain-blunderbuss for component 1038090.
Description
Forked from bug 187790592 (comment 32). If you read closely you can see that when I tried to use the
-mno-omit-leaf-frame-pointer
it didn't work.Repeating the test and adding
-frecord-gcc-switches
:Compile my test with:
Check and see that there's no difference:
And just to see one of the functions: