> Hi, please consider.
> 
> This provides the necessary JVM changes (interpreter, c1 and c2) for a 
> specification-compliant Valhalla port on linux-riscv64 platform. Major change 
> is made in the riscv CPU part. We need a very small change to hotspot c1 
> shared code. The reason is that there doesn't exist a real flag register for 
> the riscv64 ISA. So we have to pass the result in a temp register. That's a 
> major difference from other ISAs like aarch64 & amd64.
> 
> Calling convention flattening feature has not been implemented for this 
> platform. If either `-InlineTypePassFieldsAsArgs` or 
> `-XX:-InlineTypeReturnedAsFields` is specified on the command line, JVM will 
> issue a warning and continue with these two options disabled. This helps 
> enable most of Valhalla tests on this platform so that we could have a better 
> test coverage.
> 
> 
> 
> Testing on linux-riscv64:
> - [x] GHA
> - [x] `make test TEST="hotspot_valhalla jdk_valhalla valhalla_adopted"` 
> (release & fastdebug)
> - [x] `make test TEST="tier1 tier2 tier3 tier4"` (release)
> - [x] `make test TEST="hotspot:tier1 hotspot:tier2 hotspot:tier3 
> hotspot:tier4"` (fastdebug)
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Fei Yang has updated the pull request with a new target base due to a merge or 
a rebase. The incremental webrev excludes the unrelated changes brought in by 
the merge/rebase. The pull request contains 16 additional commits since the 
last revision:

 - Improve register usage
 - Merge remote-tracking branch 'upstream/lworld' into JDK-8386240
 - Header Cleanup
 - Small Refactor
 - Add handling for Metaspace OOME in ciObjArrayKlass::make_impl
 - Code Comment
 - Merge remote-tracking branch 'upstream/lworld' into JDK-8386240
 - More code cleanup
 - Fix typo
 - Merge remote-tracking branch 'upstream/lworld' into JDK-8386240
 - ... and 6 more: https://git.openjdk.org/valhalla/compare/34c259a7...48fe0f02

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

Changes:
  - all: https://git.openjdk.org/valhalla/pull/2531/files
  - new: https://git.openjdk.org/valhalla/pull/2531/files/d1e15117..48fe0f02

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=valhalla&pr=2531&range=01
 - incr: https://webrevs.openjdk.org/?repo=valhalla&pr=2531&range=00-01

  Stats: 12 lines in 3 files changed: 0 ins; 5 del; 7 mod
  Patch: https://git.openjdk.org/valhalla/pull/2531.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/2531/head:pull/2531

PR: https://git.openjdk.org/valhalla/pull/2531

Reply via email to