-
Enhancement
-
Resolution: Fixed
-
P4
-
8, 11, 15, 16
-
b26
Biased locking support was always disabled for C++ interpreter. Zero seems to have inherited that, see block in arguments.cpp:
#ifdef ZERO
// Clear flags not supported on zero.
FLAG_SET_DEFAULT(ProfileInterpreter, false);
FLAG_SET_DEFAULT(UseBiasedLocking, false);
LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedClassPointers, false));
#endif // ZERO
But zero/bytecodeInterpreter.cpp still has paths that imply biased locking support. Seeing that biased locking can go away, and the cost/benefit balance of supporting it in Zero, it makes more sense to purge the long-time-disabled biased locking support from Zero.
#ifdef ZERO
// Clear flags not supported on zero.
FLAG_SET_DEFAULT(ProfileInterpreter, false);
FLAG_SET_DEFAULT(UseBiasedLocking, false);
LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedClassPointers, false));
#endif // ZERO
But zero/bytecodeInterpreter.cpp still has paths that imply biased locking support. Seeing that biased locking can go away, and the cost/benefit balance of supporting it in Zero, it makes more sense to purge the long-time-disabled biased locking support from Zero.