RFR (S) 8140685: Fix backtrace building to not rely on constant pool merging
Coleen Phillimore
coleen.phillimore at oracle.com
Mon Jan 23 23:00:40 UTC 2017
Summary: Store Symbol* for the name in the backtrace
There was some thought that storing a u2 for cpref would be more memory
efficient than storing Symbol* in the backtraces, but recent runs of
Jetty show that this doesn't cause footprint increases or performance
decreases. Storing the Symbol* for the method name guarantees it is
there when creating the StackTraceElement, whereas cpref relies on
constant pool merging for redefinition and is dependent on being an
index in the right constant pool, which has been a source of bugs in the
past.
dev-submit performance testing was run with no regressions. Also, all
hotspot jtreg tests were run.
This is a change for JDK10 whenever that opens.
open webrev at http://cr.openjdk.java.net/~coleenp/8140685.01/webrev
bug link https://bugs.openjdk.java.net/browse/JDK-8140685
Thanks,
Coleen
More information about the hotspot-runtime-dev
mailing list