From fc7aabcf2e390a8a8977f58ffb030b0c26b211ab Mon Sep 17 00:00:00 2001 From: Sorin Basca Date: Fri, 26 Nov 2021 17:40:14 +0000 Subject: [PATCH] Updating locked_region_code_injection to use ASM7 Bug: 195387073 Test: m Test: EXPERIMENTAL_TARGET_JAVA_VERSION_11=true m Change-Id: I34463d3da4d085697f441b4ca68007cafa9d7b69 --- tools/locked_region_code_injection/Android.bp | 8 ++++---- .../LockTargetStateAnalysis.java | 6 ++++-- .../src/lockedregioncodeinjection/Utils.java | 5 +++-- .../test/lockedregioncodeinjection/TestMain.java | 4 ++-- 4 files changed, 13 insertions(+), 10 deletions(-) diff --git a/tools/locked_region_code_injection/Android.bp b/tools/locked_region_code_injection/Android.bp index 98c0e69cbf8e..3e1297190622 100644 --- a/tools/locked_region_code_injection/Android.bp +++ b/tools/locked_region_code_injection/Android.bp @@ -12,10 +12,10 @@ java_binary_host { manifest: "manifest.txt", srcs: ["src/**/*.java"], static_libs: [ - "asm-6.0", - "asm-commons-6.0", - "asm-tree-6.0", - "asm-analysis-6.0", + "asm-7.0", + "asm-commons-7.0", + "asm-tree-7.0", + "asm-analysis-7.0", "guava-21.0", ], } diff --git a/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockTargetStateAnalysis.java b/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockTargetStateAnalysis.java index 1002c88e9281..335b3f82c533 100644 --- a/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockTargetStateAnalysis.java +++ b/tools/locked_region_code_injection/src/lockedregioncodeinjection/LockTargetStateAnalysis.java @@ -13,8 +13,6 @@ */ package lockedregioncodeinjection; -import java.util.ArrayList; -import java.util.List; import org.objectweb.asm.Type; import org.objectweb.asm.tree.AbstractInsnNode; import org.objectweb.asm.tree.MethodInsnNode; @@ -22,6 +20,9 @@ import org.objectweb.asm.tree.analysis.AnalyzerException; import org.objectweb.asm.tree.analysis.BasicInterpreter; import org.objectweb.asm.tree.analysis.BasicValue; +import java.util.ArrayList; +import java.util.List; + /** * A simple dataflow analysis to determine if the operands on the stack must be one of target lock * class type. @@ -31,6 +32,7 @@ public class LockTargetStateAnalysis extends BasicInterpreter { private final List targetLocks; public LockTargetStateAnalysis(List targetLocks) { + super(Utils.ASM_VERSION); this.targetLocks = targetLocks; } diff --git a/tools/locked_region_code_injection/src/lockedregioncodeinjection/Utils.java b/tools/locked_region_code_injection/src/lockedregioncodeinjection/Utils.java index 219c2b3a2fec..f1e84b1d8a33 100644 --- a/tools/locked_region_code_injection/src/lockedregioncodeinjection/Utils.java +++ b/tools/locked_region_code_injection/src/lockedregioncodeinjection/Utils.java @@ -13,13 +13,14 @@ */ package lockedregioncodeinjection; +import org.objectweb.asm.Opcodes; + import java.util.ArrayList; import java.util.List; -import org.objectweb.asm.Opcodes; public class Utils { - public static final int ASM_VERSION = Opcodes.ASM6; + public static final int ASM_VERSION = Opcodes.ASM7; /** * Reads a comma separated configuration similar to the Jack definition. diff --git a/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java b/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java index c408b9e99c32..31fa0bf63416 100644 --- a/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java +++ b/tools/locked_region_code_injection/test/lockedregioncodeinjection/TestMain.java @@ -30,7 +30,7 @@ import org.junit.Test; * rm -fr out/* * * # Make booster - * 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/ + * javac -cp lib/asm-7.0_BETA.jar:lib/asm-commons-7.0_BETA.jar:lib/asm-tree-7.0_BETA.jar:lib/asm-analysis-7.0_BETA.jar:lib/guava-21.0.jar src/*/*.java -d out/ * pushd out * jar cfe lockedregioncodeinjection.jar lockedregioncodeinjection.Main */*.class * popd @@ -43,7 +43,7 @@ import org.junit.Test; * popd * * # Run tool on unit tests. - * 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 \ + * java -ea -cp lib/asm-7.0_BETA.jar:lib/asm-commons-7.0_BETA.jar:lib/asm-tree-7.0_BETA.jar:lib/asm-analysis-7.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;' \