RFR: 8293654: Improve SharedRuntime handling of continuation helper out-arguments [v3]

Aleksey Shipilev shade at openjdk.org
Tue Sep 13 07:56:49 UTC 2022


> (Found this while adapting current mainline to x86_32 port)
> 
> After [JDK-8292584](https://bugs.openjdk.org/browse/JDK-8292584), we have `gen_continuation_yield()` that generates compiled entry, and implicitly uses the defaults for other ones (interpreter, exception). We should be more explicit about these, and verify the generators properly initialized all out-parameters.
> 
> I think we are only using interpreter/exception entry in `enterContinuation`, but not in `yield`. Notably, `exception_offset` should be `-1` for `nmethod::new_native_nmethod` to treat it as "no exception handlers". 
> 
> There a many ways to strengthen this, this PR is the one I like. I can do the symmetric change in aarch64, once we are agree on x86_64 version.
> 
> Additional testing:
>  - [x] Linux x86_64 fastdebug, `hotspot_loom jdk_loom`
>  - [x] Linux x86_64 fastdebug, `tier1`

Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:

  Also handle AArch64 parts

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/10241/files
  - new: https://git.openjdk.org/jdk/pull/10241/files/f187415f..e0b244a3

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=10241&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10241&range=01-02

  Stats: 24 lines in 1 file changed: 15 ins; 5 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/10241.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10241/head:pull/10241

PR: https://git.openjdk.org/jdk/pull/10241


More information about the hotspot-compiler-dev mailing list