From 95aa2ea9d8b1c346e5ea98308d83ff1aa82e3add Mon Sep 17 00:00:00 2001 From: Tobias Thierer Date: Wed, 11 Oct 2017 16:46:05 +0100 Subject: [PATCH] Update locked_region_code_injection tool to ASM 6.0-BETA. ASM 6 is required to read version 53 (OpenJDK 9) class files. Test: make EXPERIMENTAL_USE_OPENJDK9=true services.core (in the presence of other unsubmitted CLs that fix other issues) Test: Copied all required dependencies into a subdirectory lib/, then ran the steps from TestMain.java, both for OpenJDK 8 and OpenJDK 9 toolchains. Bug: 67676752 Change-Id: If324d8ea28450d9a8426a2279190b2f4d9213ed5 --- tools/locked_region_code_injection/Android.mk | 8 ++++---- .../src/lockedregioncodeinjection/LockFindingClassVisitor.java | 2 +- .../test/lockedregioncodeinjection/TestMain.java | 7 +++++-- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/tools/locked_region_code_injection/Android.mk b/tools/locked_region_code_injection/Android.mk index 77d5163c1b78..bb5f4d6034b3 100644 --- a/tools/locked_region_code_injection/Android.mk +++ b/tools/locked_region_code_injection/Android.mk @@ -6,10 +6,10 @@ LOCAL_JAR_MANIFEST := manifest.txt LOCAL_MODULE := lockedregioncodeinjection LOCAL_SRC_FILES := $(call all-java-files-under,src) LOCAL_STATIC_JAVA_LIBRARIES := \ - asm-5.2 \ - asm-commons-5.2 \ - asm-tree-5.2 \ - asm-analysis-5.2 \ + asm-6.0_BETA \ + asm-commons-6.0_BETA \ + asm-tree-6.0_BETA \ + asm-analysis-6.0_BETA \ guava-21.0 \ include $(BUILD_HOST_JAVA_LIBRARY) diff --git a/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockFindingClassVisitor.java b/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockFindingClassVisitor.java index 99ef8a7b707a..a60f2a2019d2 100644 --- a/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockFindingClassVisitor.java +++ b/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockFindingClassVisitor.java @@ -76,7 +76,7 @@ class LockFindingClassVisitor extends ClassVisitor { private MethodVisitor chain; public LockFindingMethodVisitor(String owner, MethodNode mn, MethodVisitor chain) { - super(Opcodes.ASM5, mn); + super(Opcodes.ASM6, mn); assert owner != null; this.owner = owner; this.chain = chain; diff --git a/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java b/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java index b86954d5e377..c408b9e99c32 100644 --- a/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java +++ b/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java @@ -23,11 +23,14 @@ import org.junit.Test; * * set -x * + * croot frameworks/base/tools/locked_region_code_injection + * * # Clean + * mkdir -p out * rm -fr out/* * * # Make booster - * javac -cp lib/asm-all-5.2.jar src/*/*.java -d out/ + * javac -cp lib/asm-6.0_BETA.jar:lib/asm-commons-6.0_BETA.jar:lib/asm-tree-6.0_BETA.jar:lib/asm-analysis-6.0_BETA.jar:lib/guava-21.0.jar src/*/*.java -d out/ * pushd out * jar cfe lockedregioncodeinjection.jar lockedregioncodeinjection.Main */*.class * popd @@ -40,7 +43,7 @@ import org.junit.Test; * popd * * # Run tool on unit tests. - * java -ea -cp lib/asm-all-5.2.jar:out/lockedregioncodeinjection.jar \ + * java -ea -cp lib/asm-6.0_BETA.jar:lib/asm-commons-6.0_BETA.jar:lib/asm-tree-6.0_BETA.jar:lib/asm-analysis-6.0_BETA.jar:lib/guava-21.0.jar:out/lockedregioncodeinjection.jar \ * lockedregioncodeinjection.Main \ * -i out/test_input.jar -o out/test_output.jar \ * --targets 'Llockedregioncodeinjection/TestTarget;' \ -- 2.11.0