RFR(S) 8231586: enlarge encoding space for OopMapValue offsets
Tom Rodriguez
tom.rodriguez at oracle.com
Fri Oct 4 17:26:25 UTC 2019
http://cr.openjdk.java.net/~never/8231586/webrev
https://bugs.openjdk.java.net/browse/JDK-8231586
The current OopMapValue encoding uses a bit mask for each value even
though only one bit is ever set. Since only 16 bits are available for
encoding this limits the offsets it can express. Compilation with a
large number of stack slots can bailout because of this limit. This
changes the encoding to use 2 bits which gives 2 bits back to the offset.
I also deleted some StressDerivedPointers machinery that's been
completely unimplemented for years (decades?). The flag itself is now
dead but I wasn't sure if there are test references to it somewhere.
Should I delete the flag as well?
mach5 testing is in progress.
tom
More information about the hotspot-compiler-dev
mailing list