RFR: 8365265: x86 short forward jump exceeds 8-bit offset in methodHandles_x86.cpp when using Intel APX [v2]

duke duke at openjdk.org
Wed Aug 13 17:11:11 UTC 2025


On Wed, 13 Aug 2025 00:54:53 GMT, Srinivas Vamsi Parasa <sparasa at openjdk.org> wrote:

>> The goal of this PR is to address the failure caused by x86 forward jump offset exceeding imm8 displacement when running the HotSpot jtreg test `test/hotspot/jtreg/compiler/c2/TestLWLockingCodeGen.java` using Intel APX (on SDE emulator).
>> 
>> This bug triggers an assertion failure in methodHandles_x86.cpp because the assembler emits a short forward jump (imm8 displacement) whose target is more than 127 bytes away, exceeding the allowed range. This appears to be caused by larger stub code size when APX instruction encoding is enabled.
>> 
>> The fix for this issue is to replace the `jccb` instruction with` jcc` in methodHandles_x86.cpp.
>
> Srinivas Vamsi Parasa has updated the pull request incrementally with one additional commit since the last revision:
> 
>   change jccb to jcc in line 157

@vamsi-parasa 
Your change (at version ea8643c2986366b4f1c4e06d05399434cdd607a9) is now ready to be sponsored by a Committer.

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

PR Comment: https://git.openjdk.org/jdk/pull/26731#issuecomment-3184756272


More information about the hotspot-compiler-dev mailing list