RFR: 8315954: getArgumentValues002.java fails on Graal
Doug Simon
dnsimon at openjdk.org
Wed Sep 13 09:57:59 UTC 2023
On Wed, 13 Sep 2023 09:46:01 GMT, Doug Simon <dnsimon at openjdk.org> wrote:
> This PR adds `ResolvedJavaMethod.getLiveObjectLocalsAt` to get the oop map for a method at a given BCI. This is required to do correct clearing of oop locals at OSR entry points.
>
> As part of this addition, I needed to be able to detect requests for oop maps at invalid BCIs. For this, I added `InterpreterOopMap::has_valid_mask()`. When an oop map computation is requested for an invalid BCI, this method returns false.
src/hotspot/share/interpreter/oopMapCache.cpp line 204:
> 202: void InterpreterOopMap::initialize() {
> 203: _method = nullptr;
> 204: _mask_size = INT_MAX; // This value should cause a failure quickly
Unless I'm mistaken, `USHRT_MAX` is a legal (but unlikely) value (i.e. `max_locals` in a class file can be 65635) so I changed this to use `INT_MAX` instead.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/15705#discussion_r1324264486
More information about the graal-dev
mailing list