RFR: 8284433: Cleanup Disassembler::find_prev_instr() on all platforms

Xiaolin Zheng xlinzheng at openjdk.java.net
Wed Apr 6 08:12:27 UTC 2022


Hi team,

This is a trivial cleanup for `Disassembler::find_prev_instr()` on all platforms. This function is used nowhere and seems to be loaded in JDK-13 (JDK-8213084) [1]. I looked through the code and found it very solid that it checks many corner cases (unreadable pages on s390x, etc.). But it is not used so modifying and testing it might be hard, especially the corner cases that could increase burdens to maintenance. On RISC-V we also need to make the current semantics of this function[2] right (Thanks to Felix @RealFYang pointing out that) because there is an extension 'C' that can compress the size of some instructions from 4-byte to 2-byte. Though I have written one version on my local branch, I began to thought if removing this might be a better choice anyway.

Tested by building hotspot on x86, AArch64, RISC-V 64, and s390x. (I don't have access to s390x and ppc real machines, but have an s390x sysroot and qemu)

(I feel also pleased to retract this patch if there are objections.)

[1] https://github.com/openjdk/jdk13u-dev/commit/b730805159695107fbf950a0ef48e6bed5cf5bba
[2] https://github.com/openjdk/jdk/blob/0a67d686709000581e29440ef13324d1f2eba9ff/src/hotspot/cpu/riscv/disassembler_riscv.hpp#L38-L44

Thanks,
Xiaolin

-------------

Commit messages:
 - Cleanup Disassembler::find_prev_instr

Changes: https://git.openjdk.java.net/jdk/pull/8120/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8120&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8284433
  Stats: 196 lines in 9 files changed: 0 ins; 196 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8120.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8120/head:pull/8120

PR: https://git.openjdk.java.net/jdk/pull/8120


More information about the hotspot-compiler-dev mailing list