RFR: String Density/Compact String JEP 254
Roland Westrelin
roland.westrelin at oracle.com
Wed Oct 7 13:28:55 UTC 2015
> http://cr.openjdk.java.net/~thartmann/compact_strings/webrev/hotspot
I looked at the compiler related files only.
intrinsicnode.hpp
A comment would be nice:
49 typedef enum ArgEncoding { LL, LU, UL, UU, none } ArgEnc;
The (ASSERT only) comment should be removed:
53 virtual uint size_of() const; // Size is bigger (ASSERT only)
library_call.cpp
In LibraryCallKit::inline_hasNegatives(), don’t you need to test for too many Deoptimization::Reason_intrinsic before intrinsifying?
Shouldn’t LibraryCallKit::inline_string_toBytesU() and LibraryCallKit::inline_string_getCharsU() use an ArrayCopyNode (maybe an improvement/cleanup for later)?
Same is true for PhaseStringOpts::arraycopy
macroAssembler_sparc.cpp
I don’t think you should reference c2 stuff outside c2:
4440 if (ae == StrIntrinsicNode::LU || ae == StrIntrinsicNode::UL) {
Roland.
More information about the hotspot-dev
mailing list