RFR: 8284760: Correct type/array element offset in LibraryCallKit::get_state_from_digest_object()

Roman Kennke rkennke at openjdk.java.net
Tue Apr 12 16:02:03 UTC 2022


In LibraryCallKit::get_state_from_digest_object() we call array_element_address() with T_INT, even though the input array might also be T_BYTE or T_LONG. This doesn't currently matter much: array elements always start at the same offset regardless of the element type. In Lilliput I'm trying to tighten the start of array elements though, and this causes problems because I can do smaller alignments for T_BYTE and T_INT, but not for T_LONG.

See also: https://github.com/openjdk/lilliput/pull/41

Let's just use the correct type in array_element_address().

Testing:
 - [x] tier1
 - [x] jdk_security (includes relevant cipher tests)

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

Commit messages:
 - 8284760: Correct type/array element offset in LibraryCallKit::get_state_from_digest_object()

Changes: https://git.openjdk.java.net/jdk/pull/8208/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=8208&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8284760
  Stats: 22 lines in 2 files changed: 7 ins; 0 del; 15 mod
  Patch: https://git.openjdk.java.net/jdk/pull/8208.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/8208/head:pull/8208

PR: https://git.openjdk.java.net/jdk/pull/8208


More information about the hotspot-compiler-dev mailing list