RFR: 8326692: JVMCI Local.endBci is off-by-one [v2]

Guoxiong Li gli at openjdk.org
Sat Mar 2 23:44:51 UTC 2024


On Sat, 2 Mar 2024 17:58:01 GMT, Gilles Duboscq <gdub at openjdk.org> wrote:

>> In class files, in the local variable table, local variables have a start BCI and a length. The local variable has a value from BCI (inclusive) until BCI + length (exclusive).
>> On the other end, JVMCI stores that information in `Local` objects with a start BCI and an end BCI (inclusive).
>> Currently the parser just uses BCI+length to compute the end BCI, leading to an off-by-one error.
>> 
>> A simple test checking that the start and end BCIs are within the method's bytecode is added. It fails without the fix.
>
> Gilles Duboscq has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Add note about zero-length locals

Looks good.

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

Marked as reviewed by gli (Committer).

PR Review: https://git.openjdk.org/jdk/pull/18087#pullrequestreview-1912780304


More information about the hotspot-compiler-dev mailing list