RFR: 8270333: -XX:+VerifyStringTableAtExit should not do linear search [v4]

Ioi Lam iklam at openjdk.java.net
Wed Jul 14 16:45:49 UTC 2021


> The implementation of `-XX:+VerifyStringTableAtExit` used a linear search to check for duplicated strings in the interned string table. This would be excessively slow if there were more than a few thousand strings.
> 
> This PR uses a hashtable so we can avoid doing a linear search. The table is sized such that each bucket has 8 items on average.
> 
> Since this code is executed only for verification, I added a new `java_lang_String::hash_code_noupdate(oop)` function, so we can avoid causing side effects.

Ioi Lam has updated the pull request incrementally with one additional commit since the last revision:

  @yminqi comments

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/4772/files
  - new: https://git.openjdk.java.net/jdk/pull/4772/files/66c4d4ea..72d0f8e8

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4772&range=03
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4772&range=02-03

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4772.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4772/head:pull/4772

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


More information about the hotspot-runtime-dev mailing list