RFR: 8297729: Replace GrowableArray in ComputeMoveOrder with hash table

Jorn Vernee jvernee at openjdk.org
Tue Nov 29 13:49:40 UTC 2022


Replaces the GrowableArray 'table' in ComputeMoveOrder with a real hash table.

Through testing, I found that sometimes this array is blown up to several thousand elements, most of which are `NULL`. Using a hash table prevents this large wastage.

I've touched up some of the surrounding code as well. Mostly style changes, but I've also removed the `BasicType` field from the `Move` and `MoveOperation` structs, since it was unused, and added frame data storages to the fast path for stack args as well, since both are allocated on the stack.

Testing: `jdk_foreign` test suite.

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

Depends on: https://git.openjdk.org/jdk/pull/11019

Commit messages:
 - Drop redundant friend decl
 - improve hash slightly
 - Use hashtable in ComputeMoveOrder + general cleanup

Changes: https://git.openjdk.org/jdk/pull/11392/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=11392&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8297729
  Stats: 61 lines in 2 files changed: 20 ins; 10 del; 31 mod
  Patch: https://git.openjdk.org/jdk/pull/11392.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/11392/head:pull/11392

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


More information about the hotspot-dev mailing list