Otherwise during a build, Locked Region Code Injection may encounter an
ASM Analyzer exception, and the build will not fail, even though
injection won't have succeeded.
Test: make
Change-Id: Iee69f1a78fde735db62c7f73405b8cec4e410793
See build/soong/README.md for more information.
Test: m checkbuild
Change-Id: I417409281c928ea667d937090d2a0d9d72a449a2
Merged-In: I417409281c928ea667d937090d2a0d9d72a449a2
Exempt-From-Owner-Approval: trivial conversion
(cherry-picked from commit e0b2ee52d2f274a2d46b2e6695e42d2764c39fa7)
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
Methods inserted at the end of a synchronized {} block also need to
be outside of the implicit try{} block. Make sure the next
instruction is the virtual end label for the try block, and put
the inserted method after the label.
Bug: 64301866
Test: locked_region_code_injection test
Test: m -j checkbuild
Change-Id: I6626aa45580b4df692e02fc6127a2947a6075e2e
This tool is a replacement for the Jack plugin that allows injection
of static method calls before lock enter and exit.
A common use case would be to boost a thread's priority as soon as
it acquires a heavily contented lock and resetting the priority upon
release.
This tool is meant to be optionally invoked from /build/core/ rules
during the build process.
Test: JUnit Tests / resulting image on a bullhead.
Change-Id: If400414a0bf50f03768a1de2ebee42086a9d701f
Merged-In: If400414a0bf50f03768a1de2ebee42086a9d701f
(cherry picked from commit 93db63059ad5e9e1d59c8ce013559069d566ef4c)