RFR 8003426: Remove UseFastAccessors and UseFastEmptyMethods except for zero

Coleen Phillimore coleen.phillimore at oracle.com
Thu Aug 7 16:17:40 UTC 2014


Summary: These options have been long disabled in Xmixed mode because 
they prevent these small methods from being inlined and are subject to 
bit rot, and we don't need more macro assembler code to maintain and 
change if the constant pool cache format changes.

I ran specjvm98 -Xint and there wasn't a performance improvement with 
these flags.  Zero reportedly needs these flags for performance, so I 
left them in for zero.  I did build zero with some other changes to make 
zero build (not included in this patch) though.  There are PPC64 changes 
which Volker offered to test.  Also built c++ interpreter on x86 and 
sparc and got same runtime error as already reported.

generate_method_entry was at the wrong level of inheritance so I fixed 
that and made it common.  There was also some duplicate comment about 
frame layout and calling conventions (not sure it it's correct) that I 
either removed because it's in frame_x86.hpp or moved to before 
generate_fixed_frame() where it makes more sense.

Tested with JPRT, nsk, jck and hotspot jtreg tests.

open webrev at http://cr.openjdk.java.net/~coleenp/8003426/
bug link https://bugs.openjdk.java.net/browse/JDK-8003426

Thanks,
Coleen




More information about the hotspot-dev mailing list