< prev index next >

src/share/vm/runtime/globals.hpp

Print this page




 159 #endif
 160 #ifdef TARGET_OS_FAMILY_solaris
 161 # include "c2_globals_solaris.hpp"
 162 #endif
 163 #ifdef TARGET_OS_FAMILY_windows
 164 # include "c2_globals_windows.hpp"
 165 #endif
 166 #ifdef TARGET_OS_FAMILY_aix
 167 # include "c2_globals_aix.hpp"
 168 #endif
 169 #ifdef TARGET_OS_FAMILY_bsd
 170 # include "c2_globals_bsd.hpp"
 171 #endif
 172 #endif
 173 #ifdef SHARK
 174 #ifdef TARGET_ARCH_zero
 175 # include "shark_globals_zero.hpp"
 176 #endif
 177 #endif
 178 
 179 #if !defined(COMPILER1) && !defined(COMPILER2) && !defined(SHARK)
 180 define_pd_global(bool, BackgroundCompilation,        false);
 181 define_pd_global(bool, UseTLAB,                      false);
 182 define_pd_global(bool, CICompileOSR,                 false);
 183 define_pd_global(bool, UseTypeProfile,               false);
 184 define_pd_global(bool, UseOnStackReplacement,        false);
 185 define_pd_global(bool, InlineIntrinsics,             false);
 186 define_pd_global(bool, PreferInterpreterNativeStubs, true);
 187 define_pd_global(bool, ProfileInterpreter,           false);
 188 define_pd_global(bool, ProfileTraps,                 false);
 189 define_pd_global(bool, TieredCompilation,            false);
 190 
 191 define_pd_global(intx, CompileThreshold,             0);
 192 
 193 define_pd_global(intx, OnStackReplacePercentage,     0);
 194 define_pd_global(bool, ResizeTLAB,                   false);
 195 define_pd_global(intx, FreqInlineSize,               0);
 196 define_pd_global(size_t, NewSizeThreadIncrease,      4*K);
 197 define_pd_global(intx, InlineClassNatives,           true);
 198 define_pd_global(intx, InlineUnsafeOps,              true);
 199 define_pd_global(intx, InitialCodeCacheSize,         160*K);
 200 define_pd_global(intx, ReservedCodeCacheSize,        32*M);
 201 define_pd_global(intx, NonProfiledCodeHeapSize,      0);
 202 define_pd_global(intx, ProfiledCodeHeapSize,         0);
 203 define_pd_global(intx, NonNMethodCodeHeapSize,       32*M);
 204 
 205 define_pd_global(intx, CodeCacheExpansionSize,       32*K);
 206 define_pd_global(intx, CodeCacheMinBlockLength,      1);
 207 define_pd_global(intx, CodeCacheMinimumUseSpace,     200*K);
 208 define_pd_global(size_t, MetaspaceSize,              ScaleForWordSize(4*M));
 209 define_pd_global(bool, NeverActAsServerClassMachine, true);
 210 define_pd_global(uint64_t,MaxRAM,                    1ULL*G);
 211 #define CI_COMPILER_COUNT 0
 212 #else
 213 
 214 #ifdef COMPILER2
 215 #define CI_COMPILER_COUNT 2
 216 #else
 217 #define CI_COMPILER_COUNT 1
 218 #endif // COMPILER2
 219 
 220 #endif // no compilers
 221 
 222 // string type aliases used only in this file
 223 typedef const char* ccstr;
 224 typedef const char* ccstrlist;   // represents string arguments which accumulate
 225 
 226 struct Flag {
 227   enum Flags {
 228     // value origin
 229     DEFAULT          = 0,
 230     COMMAND_LINE     = 1,
 231     ENVIRON_VAR      = 2,
 232     CONFIG_FILE      = 3,
 233     MANAGEMENT       = 4,
 234     ERGONOMIC        = 5,
 235     ATTACH_ON_DEMAND = 6,
 236     INTERNAL         = 7,
 237 
 238     LAST_VALUE_ORIGIN = INTERNAL,
 239     VALUE_ORIGIN_BITS = 4,
 240     VALUE_ORIGIN_MASK = right_n_bits(VALUE_ORIGIN_BITS),
 241 
 242     // flag kind
 243     KIND_PRODUCT            = 1 << 4,
 244     KIND_MANAGEABLE         = 1 << 5,
 245     KIND_DIAGNOSTIC         = 1 << 6,
 246     KIND_EXPERIMENTAL       = 1 << 7,
 247     KIND_NOT_PRODUCT        = 1 << 8,
 248     KIND_DEVELOP            = 1 << 9,
 249     KIND_PLATFORM_DEPENDENT = 1 << 10,
 250     KIND_READ_WRITE         = 1 << 11,
 251     KIND_C1                 = 1 << 12,
 252     KIND_C2                 = 1 << 13,
 253     KIND_ARCH               = 1 << 14,
 254     KIND_SHARK              = 1 << 15,
 255     KIND_LP64_PRODUCT       = 1 << 16,
 256     KIND_COMMERCIAL         = 1 << 17,

 257 
 258     KIND_MASK = ~VALUE_ORIGIN_MASK
 259   };
 260 
 261   enum Error {
 262     // no error
 263     SUCCESS = 0,
 264     // flag name is missing
 265     MISSING_NAME,
 266     // flag value is missing
 267     MISSING_VALUE,
 268     // error parsing the textual form of the value
 269     WRONG_FORMAT,
 270     // flag is not writeable
 271     NON_WRITABLE,
 272     // flag value is outside of its bounds
 273     OUT_OF_BOUNDS,
 274     // flag value violates its constraint
 275     VIOLATES_CONSTRAINT,
 276     // there is no flag with the given name


1081           "Restore the FPU control word after every JNI call (expensive)")  \
1082                                                                             \
1083   diagnostic(bool, PrintCompilation2, false,                                \
1084           "Print additional statistics per compilation")                    \
1085                                                                             \
1086   diagnostic(bool, PrintAdapterHandlers, false,                             \
1087           "Print code generated for i2c/c2i adapters")                      \
1088                                                                             \
1089   diagnostic(bool, VerifyAdapterCalls, trueInDebug,                         \
1090           "Verify that i2c/c2i adapters are called properly")               \
1091                                                                             \
1092   develop(bool, VerifyAdapterSharing, false,                                \
1093           "Verify that the code for shared adapters is the equivalent")     \
1094                                                                             \
1095   diagnostic(bool, PrintAssembly, false,                                    \
1096           "Print assembly code (using external disassembler.so)")           \
1097                                                                             \
1098   diagnostic(ccstr, PrintAssemblyOptions, NULL,                             \
1099           "Print options string passed to disassembler.so")                 \
1100                                                                             \



1101   diagnostic(bool, PrintNMethods, false,                                    \
1102           "Print assembly code for nmethods when generated")                \
1103                                                                             \



1104   diagnostic(bool, PrintNativeNMethods, false,                              \
1105           "Print assembly code for native nmethods when generated")         \
1106                                                                             \
1107   develop(bool, PrintDebugInfo, false,                                      \
1108           "Print debug information for all nmethods when generated")        \
1109                                                                             \
1110   develop(bool, PrintRelocations, false,                                    \
1111           "Print relocation information for all nmethods when generated")   \
1112                                                                             \
1113   develop(bool, PrintDependencies, false,                                   \
1114           "Print dependency information for all nmethods when generated")   \
1115                                                                             \
1116   develop(bool, PrintExceptionHandlers, false,                              \
1117           "Print exception handler tables for all nmethods when generated") \
1118                                                                             \
1119   develop(bool, StressCompiledExceptionHandlers, false,                     \
1120           "Exercise compiled exception handlers")                           \
1121                                                                             \
1122   develop(bool, InterceptOSException, false,                                \
1123           "Start debugger when an implicit OS (e.g. NULL) "                 \


3046   product(intx,  AllocatePrefetchDistance, -1,                              \
3047           "Distance to prefetch ahead of allocation pointer")               \
3048                                                                             \
3049   product(intx,  AllocatePrefetchLines, 3,                                  \
3050           "Number of lines to prefetch ahead of array allocation pointer")  \
3051                                                                             \
3052   product(intx,  AllocateInstancePrefetchLines, 1,                          \
3053           "Number of lines to prefetch ahead of instance allocation "       \
3054           "pointer")                                                        \
3055                                                                             \
3056   product(intx,  AllocatePrefetchStepSize, 16,                              \
3057           "Step size in bytes of sequential prefetch instructions")         \
3058                                                                             \
3059   product(intx,  AllocatePrefetchInstr, 0,                                  \
3060           "Prefetch instruction to prefetch ahead of allocation pointer")   \
3061                                                                             \
3062   /* deoptimization */                                                      \
3063   develop(bool, TraceDeoptimization, false,                                 \
3064           "Trace deoptimization")                                           \
3065                                                                             \



3066   develop(bool, DebugDeoptimization, false,                                 \
3067           "Tracing various information while debugging deoptimization")     \
3068                                                                             \
3069   product(intx, SelfDestructTimer, 0,                                       \
3070           "Will cause VM to terminate after a given time (in minutes) "     \
3071           "(0 means off)")                                                  \
3072                                                                             \
3073   product(intx, MaxJavaStackTraceDepth, 1024,                               \
3074           "The maximum number of lines in the stack trace for Java "        \
3075           "exceptions (0 means all)")                                       \
3076                                                                             \
3077   NOT_EMBEDDED(diagnostic(intx, GuaranteedSafepointInterval, 1000,          \
3078           "Guarantee a safepoint (at least) every so many milliseconds "    \
3079           "(0 means none)"))                                                \
3080                                                                             \
3081   EMBEDDED_ONLY(product(intx, GuaranteedSafepointInterval, 0,               \
3082           "Guarantee a safepoint (at least) every so many milliseconds "    \
3083           "(0 means none)"))                                                \
3084                                                                             \
3085   product(intx, SafepointTimeoutDelay, 10000,                               \


3195           "Number of exits until DeoptimizeALot kicks in")                  \
3196                                                                             \
3197   notproduct(intx, ZombieALotInterval,     5,                               \
3198           "Number of exits until ZombieALot kicks in")                      \
3199                                                                             \
3200   diagnostic(intx, MallocVerifyInterval,     0,                             \
3201           "If non-zero, verify C heap after every N calls to "              \
3202           "malloc/realloc/free")                                            \
3203                                                                             \
3204   diagnostic(intx, MallocVerifyStart,     0,                                \
3205           "If non-zero, start verifying C heap after Nth call to "          \
3206           "malloc/realloc/free")                                            \
3207                                                                             \
3208   diagnostic(uintx, MallocMaxTestWords,     0,                              \
3209           "If non-zero, maximum number of words that malloc/realloc can "   \
3210           "allocate (for testing only)")                                    \
3211                                                                             \
3212   product(intx, TypeProfileWidth,     2,                                    \
3213           "Number of receiver types to record in call/cast profile")        \
3214                                                                             \



3215   develop(intx, BciProfileWidth,      2,                                    \
3216           "Number of return bci's to record in ret profile")                \
3217                                                                             \
3218   product(intx, PerMethodRecompilationCutoff, 400,                          \
3219           "After recompiling N times, stay in the interpreter (-1=>'Inf')") \
3220           range(-1, max_intx)                                               \
3221                                                                             \
3222   product(intx, PerBytecodeRecompilationCutoff, 200,                        \
3223           "Per-BCI limit on repeated recompilation (-1=>'Inf')")            \
3224           range(-1, max_intx)                                               \
3225                                                                             \
3226   product(intx, PerMethodTrapLimit,  100,                                   \
3227           "Limit on traps (of one kind) in a method (includes inlines)")    \
3228                                                                             \
3229   experimental(intx, PerMethodSpecTrapLimit,  5000,                         \
3230           "Limit on speculative traps (of one kind) in a method "           \
3231           "(includes inlines)")                                             \
3232                                                                             \
3233   product(intx, PerBytecodeTrapLimit,  4,                                   \
3234           "Limit on traps (of one kind) at a particular BCI")               \


3730                                                                             \
3731   product(intx, Tier3BackedgeNotifyFreqLog, 13,                             \
3732           "C1 with MDO profiling (tier 3) invocation notification "         \
3733           "frequency")                                                      \
3734                                                                             \
3735   product(intx, Tier2CompileThreshold, 0,                                   \
3736           "threshold at which tier 2 compilation is invoked")               \
3737                                                                             \
3738   product(intx, Tier2BackEdgeThreshold, 0,                                  \
3739           "Back edge threshold at which tier 2 compilation is invoked")     \
3740                                                                             \
3741   product(intx, Tier3InvocationThreshold, 200,                              \
3742           "Compile if number of method invocations crosses this "           \
3743           "threshold")                                                      \
3744                                                                             \
3745   product(intx, Tier3MinInvocationThreshold, 100,                           \
3746           "Minimum invocation to compile at tier 3")                        \
3747                                                                             \
3748   product(intx, Tier3CompileThreshold, 2000,                                \
3749           "Threshold at which tier 3 compilation is invoked (invocation "   \
3750           "minimum must be satisfied")                                      \
3751                                                                             \
3752   product(intx, Tier3BackEdgeThreshold,  60000,                             \
3753           "Back edge threshold at which tier 3 OSR compilation is invoked") \
3754                                                                             \
3755   product(intx, Tier4InvocationThreshold, 5000,                             \
3756           "Compile if number of method invocations crosses this "           \
3757           "threshold")                                                      \
3758                                                                             \
3759   product(intx, Tier4MinInvocationThreshold, 600,                           \
3760           "Minimum invocation to compile at tier 4")                        \
3761                                                                             \
3762   product(intx, Tier4CompileThreshold, 15000,                               \
3763           "Threshold at which tier 4 compilation is invoked (invocation "   \
3764           "minimum must be satisfied")                                      \
3765                                                                             \
3766   product(intx, Tier4BackEdgeThreshold, 40000,                              \
3767           "Back edge threshold at which tier 4 OSR compilation is invoked") \
3768                                                                             \
3769   product(intx, Tier3DelayOn, 5,                                            \
3770           "If C2 queue size grows over this amount per compiler thread "    \




 159 #endif
 160 #ifdef TARGET_OS_FAMILY_solaris
 161 # include "c2_globals_solaris.hpp"
 162 #endif
 163 #ifdef TARGET_OS_FAMILY_windows
 164 # include "c2_globals_windows.hpp"
 165 #endif
 166 #ifdef TARGET_OS_FAMILY_aix
 167 # include "c2_globals_aix.hpp"
 168 #endif
 169 #ifdef TARGET_OS_FAMILY_bsd
 170 # include "c2_globals_bsd.hpp"
 171 #endif
 172 #endif
 173 #ifdef SHARK
 174 #ifdef TARGET_ARCH_zero
 175 # include "shark_globals_zero.hpp"
 176 #endif
 177 #endif
 178 
 179 #if !defined(COMPILER1) && !defined(COMPILER2) && !defined(SHARK) && !INCLUDE_JVMCI
 180 define_pd_global(bool, BackgroundCompilation,        false);
 181 define_pd_global(bool, UseTLAB,                      false);
 182 define_pd_global(bool, CICompileOSR,                 false);
 183 define_pd_global(bool, UseTypeProfile,               false);
 184 define_pd_global(bool, UseOnStackReplacement,        false);
 185 define_pd_global(bool, InlineIntrinsics,             false);
 186 define_pd_global(bool, PreferInterpreterNativeStubs, true);
 187 define_pd_global(bool, ProfileInterpreter,           false);
 188 define_pd_global(bool, ProfileTraps,                 false);
 189 define_pd_global(bool, TieredCompilation,            false);
 190 
 191 define_pd_global(intx, CompileThreshold,             0);
 192 
 193 define_pd_global(intx, OnStackReplacePercentage,     0);
 194 define_pd_global(bool, ResizeTLAB,                   false);
 195 define_pd_global(intx, FreqInlineSize,               0);
 196 define_pd_global(size_t, NewSizeThreadIncrease,      4*K);
 197 define_pd_global(intx, InlineClassNatives,           true);
 198 define_pd_global(intx, InlineUnsafeOps,              true);
 199 define_pd_global(intx, InitialCodeCacheSize,         160*K);
 200 define_pd_global(intx, ReservedCodeCacheSize,        32*M);
 201 define_pd_global(intx, NonProfiledCodeHeapSize,      0);
 202 define_pd_global(intx, ProfiledCodeHeapSize,         0);
 203 define_pd_global(intx, NonNMethodCodeHeapSize,       32*M);
 204 
 205 define_pd_global(intx, CodeCacheExpansionSize,       32*K);
 206 define_pd_global(intx, CodeCacheMinBlockLength,      1);
 207 define_pd_global(intx, CodeCacheMinimumUseSpace,     200*K);
 208 define_pd_global(size_t, MetaspaceSize,              ScaleForWordSize(4*M));
 209 define_pd_global(bool, NeverActAsServerClassMachine, true);
 210 define_pd_global(uint64_t,MaxRAM,                    1ULL*G);
 211 #define CI_COMPILER_COUNT 0
 212 #else
 213 
 214 #if defined(COMPILER2) || INCLUDE_JVMCI
 215 #define CI_COMPILER_COUNT 2
 216 #else
 217 #define CI_COMPILER_COUNT 1
 218 #endif // COMPILER2 || INCLUDE_JVMCI
 219 
 220 #endif // no compilers
 221 
 222 // string type aliases used only in this file
 223 typedef const char* ccstr;
 224 typedef const char* ccstrlist;   // represents string arguments which accumulate
 225 
 226 struct Flag {
 227   enum Flags {
 228     // value origin
 229     DEFAULT          = 0,
 230     COMMAND_LINE     = 1,
 231     ENVIRON_VAR      = 2,
 232     CONFIG_FILE      = 3,
 233     MANAGEMENT       = 4,
 234     ERGONOMIC        = 5,
 235     ATTACH_ON_DEMAND = 6,
 236     INTERNAL         = 7,
 237 
 238     LAST_VALUE_ORIGIN = INTERNAL,
 239     VALUE_ORIGIN_BITS = 4,
 240     VALUE_ORIGIN_MASK = right_n_bits(VALUE_ORIGIN_BITS),
 241 
 242     // flag kind
 243     KIND_PRODUCT            = 1 << 4,
 244     KIND_MANAGEABLE         = 1 << 5,
 245     KIND_DIAGNOSTIC         = 1 << 6,
 246     KIND_EXPERIMENTAL       = 1 << 7,
 247     KIND_NOT_PRODUCT        = 1 << 8,
 248     KIND_DEVELOP            = 1 << 9,
 249     KIND_PLATFORM_DEPENDENT = 1 << 10,
 250     KIND_READ_WRITE         = 1 << 11,
 251     KIND_C1                 = 1 << 12,
 252     KIND_C2                 = 1 << 13,
 253     KIND_ARCH               = 1 << 14,
 254     KIND_SHARK              = 1 << 15,
 255     KIND_LP64_PRODUCT       = 1 << 16,
 256     KIND_COMMERCIAL         = 1 << 17,
 257     KIND_JVMCI              = 1 << 18,
 258 
 259     KIND_MASK = ~VALUE_ORIGIN_MASK
 260   };
 261 
 262   enum Error {
 263     // no error
 264     SUCCESS = 0,
 265     // flag name is missing
 266     MISSING_NAME,
 267     // flag value is missing
 268     MISSING_VALUE,
 269     // error parsing the textual form of the value
 270     WRONG_FORMAT,
 271     // flag is not writeable
 272     NON_WRITABLE,
 273     // flag value is outside of its bounds
 274     OUT_OF_BOUNDS,
 275     // flag value violates its constraint
 276     VIOLATES_CONSTRAINT,
 277     // there is no flag with the given name


1082           "Restore the FPU control word after every JNI call (expensive)")  \
1083                                                                             \
1084   diagnostic(bool, PrintCompilation2, false,                                \
1085           "Print additional statistics per compilation")                    \
1086                                                                             \
1087   diagnostic(bool, PrintAdapterHandlers, false,                             \
1088           "Print code generated for i2c/c2i adapters")                      \
1089                                                                             \
1090   diagnostic(bool, VerifyAdapterCalls, trueInDebug,                         \
1091           "Verify that i2c/c2i adapters are called properly")               \
1092                                                                             \
1093   develop(bool, VerifyAdapterSharing, false,                                \
1094           "Verify that the code for shared adapters is the equivalent")     \
1095                                                                             \
1096   diagnostic(bool, PrintAssembly, false,                                    \
1097           "Print assembly code (using external disassembler.so)")           \
1098                                                                             \
1099   diagnostic(ccstr, PrintAssemblyOptions, NULL,                             \
1100           "Print options string passed to disassembler.so")                 \
1101                                                                             \
1102   notproduct(bool, PrintNMethodStatistics, false,                           \
1103           "Print a summary statistic for the generated nmethods")           \
1104                                                                             \
1105   diagnostic(bool, PrintNMethods, false,                                    \
1106           "Print assembly code for nmethods when generated")                \
1107                                                                             \
1108   diagnostic(intx, PrintNMethodsAtLevel, -1,                                \
1109           "Only print code for nmethods at the given compilation level")    \
1110                                                                             \
1111   diagnostic(bool, PrintNativeNMethods, false,                              \
1112           "Print assembly code for native nmethods when generated")         \
1113                                                                             \
1114   develop(bool, PrintDebugInfo, false,                                      \
1115           "Print debug information for all nmethods when generated")        \
1116                                                                             \
1117   develop(bool, PrintRelocations, false,                                    \
1118           "Print relocation information for all nmethods when generated")   \
1119                                                                             \
1120   develop(bool, PrintDependencies, false,                                   \
1121           "Print dependency information for all nmethods when generated")   \
1122                                                                             \
1123   develop(bool, PrintExceptionHandlers, false,                              \
1124           "Print exception handler tables for all nmethods when generated") \
1125                                                                             \
1126   develop(bool, StressCompiledExceptionHandlers, false,                     \
1127           "Exercise compiled exception handlers")                           \
1128                                                                             \
1129   develop(bool, InterceptOSException, false,                                \
1130           "Start debugger when an implicit OS (e.g. NULL) "                 \


3053   product(intx,  AllocatePrefetchDistance, -1,                              \
3054           "Distance to prefetch ahead of allocation pointer")               \
3055                                                                             \
3056   product(intx,  AllocatePrefetchLines, 3,                                  \
3057           "Number of lines to prefetch ahead of array allocation pointer")  \
3058                                                                             \
3059   product(intx,  AllocateInstancePrefetchLines, 1,                          \
3060           "Number of lines to prefetch ahead of instance allocation "       \
3061           "pointer")                                                        \
3062                                                                             \
3063   product(intx,  AllocatePrefetchStepSize, 16,                              \
3064           "Step size in bytes of sequential prefetch instructions")         \
3065                                                                             \
3066   product(intx,  AllocatePrefetchInstr, 0,                                  \
3067           "Prefetch instruction to prefetch ahead of allocation pointer")   \
3068                                                                             \
3069   /* deoptimization */                                                      \
3070   develop(bool, TraceDeoptimization, false,                                 \
3071           "Trace deoptimization")                                           \
3072                                                                             \
3073   develop(bool, PrintDeoptimizationDetails, false,                          \
3074           "Print more information about deoptimization")                    \
3075                                                                             \
3076   develop(bool, DebugDeoptimization, false,                                 \
3077           "Tracing various information while debugging deoptimization")     \
3078                                                                             \
3079   product(intx, SelfDestructTimer, 0,                                       \
3080           "Will cause VM to terminate after a given time (in minutes) "     \
3081           "(0 means off)")                                                  \
3082                                                                             \
3083   product(intx, MaxJavaStackTraceDepth, 1024,                               \
3084           "The maximum number of lines in the stack trace for Java "        \
3085           "exceptions (0 means all)")                                       \
3086                                                                             \
3087   NOT_EMBEDDED(diagnostic(intx, GuaranteedSafepointInterval, 1000,          \
3088           "Guarantee a safepoint (at least) every so many milliseconds "    \
3089           "(0 means none)"))                                                \
3090                                                                             \
3091   EMBEDDED_ONLY(product(intx, GuaranteedSafepointInterval, 0,               \
3092           "Guarantee a safepoint (at least) every so many milliseconds "    \
3093           "(0 means none)"))                                                \
3094                                                                             \
3095   product(intx, SafepointTimeoutDelay, 10000,                               \


3205           "Number of exits until DeoptimizeALot kicks in")                  \
3206                                                                             \
3207   notproduct(intx, ZombieALotInterval,     5,                               \
3208           "Number of exits until ZombieALot kicks in")                      \
3209                                                                             \
3210   diagnostic(intx, MallocVerifyInterval,     0,                             \
3211           "If non-zero, verify C heap after every N calls to "              \
3212           "malloc/realloc/free")                                            \
3213                                                                             \
3214   diagnostic(intx, MallocVerifyStart,     0,                                \
3215           "If non-zero, start verifying C heap after Nth call to "          \
3216           "malloc/realloc/free")                                            \
3217                                                                             \
3218   diagnostic(uintx, MallocMaxTestWords,     0,                              \
3219           "If non-zero, maximum number of words that malloc/realloc can "   \
3220           "allocate (for testing only)")                                    \
3221                                                                             \
3222   product(intx, TypeProfileWidth, 2,                                        \
3223           "Number of receiver types to record in call/cast profile")        \
3224                                                                             \
3225   experimental(intx, MethodProfileWidth, 0,                                 \
3226           "Number of methods to record in call profile")                    \
3227                                                                             \
3228   develop(intx, BciProfileWidth,      2,                                    \
3229           "Number of return bci's to record in ret profile")                \
3230                                                                             \
3231   product(intx, PerMethodRecompilationCutoff, 400,                          \
3232           "After recompiling N times, stay in the interpreter (-1=>'Inf')") \
3233           range(-1, max_intx)                                               \
3234                                                                             \
3235   product(intx, PerBytecodeRecompilationCutoff, 200,                        \
3236           "Per-BCI limit on repeated recompilation (-1=>'Inf')")            \
3237           range(-1, max_intx)                                               \
3238                                                                             \
3239   product(intx, PerMethodTrapLimit,  100,                                   \
3240           "Limit on traps (of one kind) in a method (includes inlines)")    \
3241                                                                             \
3242   experimental(intx, PerMethodSpecTrapLimit,  5000,                         \
3243           "Limit on speculative traps (of one kind) in a method "           \
3244           "(includes inlines)")                                             \
3245                                                                             \
3246   product(intx, PerBytecodeTrapLimit,  4,                                   \
3247           "Limit on traps (of one kind) at a particular BCI")               \


3743                                                                             \
3744   product(intx, Tier3BackedgeNotifyFreqLog, 13,                             \
3745           "C1 with MDO profiling (tier 3) invocation notification "         \
3746           "frequency")                                                      \
3747                                                                             \
3748   product(intx, Tier2CompileThreshold, 0,                                   \
3749           "threshold at which tier 2 compilation is invoked")               \
3750                                                                             \
3751   product(intx, Tier2BackEdgeThreshold, 0,                                  \
3752           "Back edge threshold at which tier 2 compilation is invoked")     \
3753                                                                             \
3754   product(intx, Tier3InvocationThreshold, 200,                              \
3755           "Compile if number of method invocations crosses this "           \
3756           "threshold")                                                      \
3757                                                                             \
3758   product(intx, Tier3MinInvocationThreshold, 100,                           \
3759           "Minimum invocation to compile at tier 3")                        \
3760                                                                             \
3761   product(intx, Tier3CompileThreshold, 2000,                                \
3762           "Threshold at which tier 3 compilation is invoked (invocation "   \
3763           "minimum must be satisfied)")                                     \
3764                                                                             \
3765   product(intx, Tier3BackEdgeThreshold,  60000,                             \
3766           "Back edge threshold at which tier 3 OSR compilation is invoked") \
3767                                                                             \
3768   product(intx, Tier4InvocationThreshold, 5000,                             \
3769           "Compile if number of method invocations crosses this "           \
3770           "threshold")                                                      \
3771                                                                             \
3772   product(intx, Tier4MinInvocationThreshold, 600,                           \
3773           "Minimum invocation to compile at tier 4")                        \
3774                                                                             \
3775   product(intx, Tier4CompileThreshold, 15000,                               \
3776           "Threshold at which tier 4 compilation is invoked (invocation "   \
3777           "minimum must be satisfied")                                      \
3778                                                                             \
3779   product(intx, Tier4BackEdgeThreshold, 40000,                              \
3780           "Back edge threshold at which tier 4 OSR compilation is invoked") \
3781                                                                             \
3782   product(intx, Tier3DelayOn, 5,                                            \
3783           "If C2 queue size grows over this amount per compiler thread "    \


< prev index next >