src/share/vm/runtime/arguments.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Sdiff src/share/vm/runtime

src/share/vm/runtime/arguments.cpp

Print this page
rev 6139 : 8031755: Type speculation should be used to optimize explicit null checks
Summary: feed profiling data about reference nullness to type speculation.
Reviewed-by:


3776 #ifdef ZERO
3777   // Clear flags not supported on zero.
3778   FLAG_SET_DEFAULT(ProfileInterpreter, false);
3779   FLAG_SET_DEFAULT(UseBiasedLocking, false);
3780   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
3781   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedClassPointers, false));
3782 #endif // CC_INTERP
3783 
3784 #ifdef COMPILER2
3785   if (!EliminateLocks) {
3786     EliminateNestedLocks = false;
3787   }
3788   if (!Inline) {
3789     IncrementalInline = false;
3790   }
3791 #ifndef PRODUCT
3792   if (!IncrementalInline) {
3793     AlwaysIncrementalInline = false;
3794   }
3795 #endif
3796   if (IncrementalInline && FLAG_IS_DEFAULT(MaxNodeLimit)) {
3797     // incremental inlining: bump MaxNodeLimit
3798     FLAG_SET_DEFAULT(MaxNodeLimit, (intx)75000);
3799   }
3800   if (!UseTypeSpeculation && FLAG_IS_DEFAULT(TypeProfileLevel)) {
3801     // nothing to use the profiling, turn if off
3802     FLAG_SET_DEFAULT(TypeProfileLevel, 0);
3803   }
3804   if (UseTypeSpeculation && FLAG_IS_DEFAULT(ReplaceInParentMaps)) {
3805     // Doing the replace in parent maps helps speculation
3806     FLAG_SET_DEFAULT(ReplaceInParentMaps, true);
3807   }
3808 #endif
3809 
3810   if (PrintAssembly && FLAG_IS_DEFAULT(DebugNonSafepoints)) {
3811     warning("PrintAssembly is enabled; turning on DebugNonSafepoints to gain additional output");
3812     DebugNonSafepoints = true;
3813   }
3814 
3815   if (FLAG_IS_CMDLINE(CompressedClassSpaceSize) && !UseCompressedClassPointers) {
3816     warning("Setting CompressedClassSpaceSize has no effect when compressed class pointers are not used");
3817   }
3818 
3819 #ifndef PRODUCT




3776 #ifdef ZERO
3777   // Clear flags not supported on zero.
3778   FLAG_SET_DEFAULT(ProfileInterpreter, false);
3779   FLAG_SET_DEFAULT(UseBiasedLocking, false);
3780   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
3781   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedClassPointers, false));
3782 #endif // CC_INTERP
3783 
3784 #ifdef COMPILER2
3785   if (!EliminateLocks) {
3786     EliminateNestedLocks = false;
3787   }
3788   if (!Inline) {
3789     IncrementalInline = false;
3790   }
3791 #ifndef PRODUCT
3792   if (!IncrementalInline) {
3793     AlwaysIncrementalInline = false;
3794   }
3795 #endif




3796   if (!UseTypeSpeculation && FLAG_IS_DEFAULT(TypeProfileLevel)) {
3797     // nothing to use the profiling, turn if off
3798     FLAG_SET_DEFAULT(TypeProfileLevel, 0);
3799   }
3800   if (UseTypeSpeculation && FLAG_IS_DEFAULT(ReplaceInParentMaps)) {
3801     // Doing the replace in parent maps helps speculation
3802     FLAG_SET_DEFAULT(ReplaceInParentMaps, true);
3803   }
3804 #endif
3805 
3806   if (PrintAssembly && FLAG_IS_DEFAULT(DebugNonSafepoints)) {
3807     warning("PrintAssembly is enabled; turning on DebugNonSafepoints to gain additional output");
3808     DebugNonSafepoints = true;
3809   }
3810 
3811   if (FLAG_IS_CMDLINE(CompressedClassSpaceSize) && !UseCompressedClassPointers) {
3812     warning("Setting CompressedClassSpaceSize has no effect when compressed class pointers are not used");
3813   }
3814 
3815 #ifndef PRODUCT


src/share/vm/runtime/arguments.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File