[jdk20] RFR: 8299733: AArch64: "unexpected literal addressing mode" assertion failure with -XX:+PrintC1Statistics [v3]

Nick Gasson ngasson at openjdk.org
Mon Jan 9 14:02:11 UTC 2023


> `MacroAssembler::incrementw()` asserts that
> 
> 
> assert(!dst.uses(rscratch1), "invalid dst for address increment");
> 
> 
> But `Address::uses()` can only be called on non-literal addresses.  We could change this assert to check `dst.getMode()` first but it seems cleaner to make `Address::uses()` handle the non-literal case.
> 
> This failure is trivial to reproduce with:
> 
> 
> $ java -XX:+PrintC1Statistics -XX:+UseZGC --version

Nick Gasson has updated the pull request incrementally with one additional commit since the last revision:

  Enumerate all possible values of _mode

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

Changes:
  - all: https://git.openjdk.org/jdk20/pull/87/files
  - new: https://git.openjdk.org/jdk20/pull/87/files/209be8bb..b5a3c2ce

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

  Stats: 8 lines in 1 file changed: 7 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk20/pull/87.diff
  Fetch: git fetch https://git.openjdk.org/jdk20 pull/87/head:pull/87

PR: https://git.openjdk.org/jdk20/pull/87


More information about the hotspot-compiler-dev mailing list