-
Bug
-
Resolution: Unresolved
-
P4
-
9
The hsdis plugin API has two entry points: A `decode_instructions` and
B `decode_instructions_virtual`. The reason is historical: At first
entry point A was the only one, but then we realized that some uses of
hsdis needed to present a copy of the instructions to disassemble,
instead of the actual original copy, at the installed virtual address.
Thus, entry point B takes extra arguments, to give the nominal
location of the buffered instructions.
It would be good to remove A, which is trivially superseded by B.
The support for A, in both the JVM and the plugin, is just noise
in the source code.
The effect of removing it from the JVM would be that certain very old
plugins (made before 2009) will not operate correctly with modern
JVMs. This is perfectly fine, since the X86 ISA has changed much
since then. The effect of removing it from the plugin is that very
old JVMs (before 2009) will have trouble using new versions of the
plugin. Neither of these risks seems to be a problem, and users can
work around them by aligning the plugin version with the JVM version.
B `decode_instructions_virtual`. The reason is historical: At first
entry point A was the only one, but then we realized that some uses of
hsdis needed to present a copy of the instructions to disassemble,
instead of the actual original copy, at the installed virtual address.
Thus, entry point B takes extra arguments, to give the nominal
location of the buffered instructions.
It would be good to remove A, which is trivially superseded by B.
The support for A, in both the JVM and the plugin, is just noise
in the source code.
The effect of removing it from the JVM would be that certain very old
plugins (made before 2009) will not operate correctly with modern
JVMs. This is perfectly fine, since the X86 ISA has changed much
since then. The effect of removing it from the plugin is that very
old JVMs (before 2009) will have trouble using new versions of the
plugin. Neither of these risks seems to be a problem, and users can
work around them by aligning the plugin version with the JVM version.
- relates to
-
JDK-8000489 older builds of hsdis don't work anymore after 6879063
-
- Resolved
-
-
JDK-6879063 SA should use hsdis for disassembly
-
- Closed
-