RFR: 8270333: -XX:+VerifyStringTableAtExit should not do linear search [v3]
Ioi Lam
iklam at openjdk.java.net
Wed Jul 14 06:02:35 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:
fixed build and make sure table size is not zero
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/4772/files
- new: https://git.openjdk.java.net/jdk/pull/4772/files/cf913b1c..66c4d4ea
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4772&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4772&range=01-02
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