[lworld] RFR: 8306301: [lworld] Circular dependency when unpacking

Tobias Hartmann thartmann at openjdk.org
Tue Apr 18 14:43:02 UTC 2023


The enhanced `StressCallingConvention` option from [JDK-8301007](https://bugs.openjdk.org/browse/JDK-8301007) triggered a spurious assert due to an unresolvable circular dependency between register/stack slots when emitting code for unpacking. The root cause is that `v0` is used as spill register on aarch64 but that register is also used for arguments and therefore not able to resolve all circular dependencies. We should use `v8` instead which is also save on call for Java.

Thanks,
Tobias

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

Commit messages:
 - 8306301: [lworld] Circular dependency when unpacking

Changes: https://git.openjdk.org/valhalla/pull/835/files
 Webrev: https://webrevs.openjdk.org/?repo=valhalla&pr=835&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8306301
  Stats: 3 lines in 2 files changed: 0 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/valhalla/pull/835.diff
  Fetch: git fetch https://git.openjdk.org/valhalla.git pull/835/head:pull/835

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



More information about the valhalla-dev mailing list