hotspot/src/share/vm/runtime/globals.hpp
changeset 33222 e0a340f4ab6e
parent 33208 5ec6ffa63c57
child 33227 b00ec45f8c2c
equal deleted inserted replaced
33219:08f642d9214f 33222:e0a340f4ab6e
   889                                                                             \
   889                                                                             \
   890   /* 50 retries * (5 * current_retry_count) millis = ~6.375 seconds */      \
   890   /* 50 retries * (5 * current_retry_count) millis = ~6.375 seconds */      \
   891   /* typically, at most a few retries are needed                    */      \
   891   /* typically, at most a few retries are needed                    */      \
   892   product(intx, SuspendRetryCount, 50,                                      \
   892   product(intx, SuspendRetryCount, 50,                                      \
   893           "Maximum retry count for an external suspend request")            \
   893           "Maximum retry count for an external suspend request")            \
       
   894           range(0, max_intx)                                                \
   894                                                                             \
   895                                                                             \
   895   product(intx, SuspendRetryDelay, 5,                                       \
   896   product(intx, SuspendRetryDelay, 5,                                       \
   896           "Milliseconds to delay per retry (* current_retry_count)")        \
   897           "Milliseconds to delay per retry (* current_retry_count)")        \
       
   898           range(0, max_intx)                                                \
   897                                                                             \
   899                                                                             \
   898   product(bool, AssertOnSuspendWaitFailure, false,                          \
   900   product(bool, AssertOnSuspendWaitFailure, false,                          \
   899           "Assert/Guarantee on external suspend wait failure")              \
   901           "Assert/Guarantee on external suspend wait failure")              \
   900                                                                             \
   902                                                                             \
   901   product(bool, TraceSuspendWaitFailures, false,                            \
   903   product(bool, TraceSuspendWaitFailures, false,                            \
  1330                                                                             \
  1332                                                                             \
  1331   product(intx, MaxJNILocalCapacity, 65536,                                 \
  1333   product(intx, MaxJNILocalCapacity, 65536,                                 \
  1332           "Maximum allowable local JNI handle capacity to "                 \
  1334           "Maximum allowable local JNI handle capacity to "                 \
  1333           "EnsureLocalCapacity() and PushLocalFrame(), "                    \
  1335           "EnsureLocalCapacity() and PushLocalFrame(), "                    \
  1334           "where <= 0 is unlimited, default: 65536")                        \
  1336           "where <= 0 is unlimited, default: 65536")                        \
       
  1337           range(min_intx, max_intx)                                         \
  1335                                                                             \
  1338                                                                             \
  1336   product(bool, EagerXrunInit, false,                                       \
  1339   product(bool, EagerXrunInit, false,                                       \
  1337           "Eagerly initialize -Xrun libraries; allows startup profiling, "  \
  1340           "Eagerly initialize -Xrun libraries; allows startup profiling, "  \
  1338           "but not all -Xrun libraries may support the state of the VM "    \
  1341           "but not all -Xrun libraries may support the state of the VM "    \
  1339           "at this time")                                                   \
  1342           "at this time")                                                   \
  1365   /* aggressive prefetching, while still leaving the room for segregating */\
  1368   /* aggressive prefetching, while still leaving the room for segregating */\
  1366   /* among the distinct pages.                                            */\
  1369   /* among the distinct pages.                                            */\
  1367   product(intx, ContendedPaddingWidth, 128,                                 \
  1370   product(intx, ContendedPaddingWidth, 128,                                 \
  1368           "How many bytes to pad the fields/classes marked @Contended with")\
  1371           "How many bytes to pad the fields/classes marked @Contended with")\
  1369           range(0, 8192)                                                    \
  1372           range(0, 8192)                                                    \
  1370           constraint(ContendedPaddingWidthConstraintFunc,AtParse)           \
  1373           constraint(ContendedPaddingWidthConstraintFunc,AfterErgo)         \
  1371                                                                             \
  1374                                                                             \
  1372   product(bool, EnableContended, true,                                      \
  1375   product(bool, EnableContended, true,                                      \
  1373           "Enable @Contended annotation support")                           \
  1376           "Enable @Contended annotation support")                           \
  1374                                                                             \
  1377                                                                             \
  1375   product(bool, RestrictContended, true,                                    \
  1378   product(bool, RestrictContended, true,                                    \
  1378   product(bool, UseBiasedLocking, true,                                     \
  1381   product(bool, UseBiasedLocking, true,                                     \
  1379           "Enable biased locking in JVM")                                   \
  1382           "Enable biased locking in JVM")                                   \
  1380                                                                             \
  1383                                                                             \
  1381   product(intx, BiasedLockingStartupDelay, 4000,                            \
  1384   product(intx, BiasedLockingStartupDelay, 4000,                            \
  1382           "Number of milliseconds to wait before enabling biased locking")  \
  1385           "Number of milliseconds to wait before enabling biased locking")  \
       
  1386           range(0, (intx)(max_jint-(max_jint%PeriodicTask::interval_gran))) \
       
  1387           constraint(BiasedLockingStartupDelayFunc,AfterErgo)               \
  1383                                                                             \
  1388                                                                             \
  1384   diagnostic(bool, PrintBiasedLockingStatistics, false,                     \
  1389   diagnostic(bool, PrintBiasedLockingStatistics, false,                     \
  1385           "Print statistics of biased locking in JVM")                      \
  1390           "Print statistics of biased locking in JVM")                      \
  1386                                                                             \
  1391                                                                             \
  1387   product(intx, BiasedLockingBulkRebiasThreshold, 20,                       \
  1392   product(intx, BiasedLockingBulkRebiasThreshold, 20,                       \
  1388           "Threshold of number of revocations per type to try to "          \
  1393           "Threshold of number of revocations per type to try to "          \
  1389           "rebias all objects in the heap of that type")                    \
  1394           "rebias all objects in the heap of that type")                    \
       
  1395           range(0, max_intx)                                                \
       
  1396           constraint(BiasedLockingBulkRebiasThresholdFunc,AfterErgo)        \
  1390                                                                             \
  1397                                                                             \
  1391   product(intx, BiasedLockingBulkRevokeThreshold, 40,                       \
  1398   product(intx, BiasedLockingBulkRevokeThreshold, 40,                       \
  1392           "Threshold of number of revocations per type to permanently "     \
  1399           "Threshold of number of revocations per type to permanently "     \
  1393           "revoke biases of all objects in the heap of that type")          \
  1400           "revoke biases of all objects in the heap of that type")          \
       
  1401           range(0, max_intx)                                                \
       
  1402           constraint(BiasedLockingBulkRevokeThresholdFunc,AfterErgo)        \
  1394                                                                             \
  1403                                                                             \
  1395   product(intx, BiasedLockingDecayTime, 25000,                              \
  1404   product(intx, BiasedLockingDecayTime, 25000,                              \
  1396           "Decay time (in milliseconds) to re-enable bulk rebiasing of a "  \
  1405           "Decay time (in milliseconds) to re-enable bulk rebiasing of a "  \
  1397           "type after previous bulk rebias")                                \
  1406           "type after previous bulk rebias")                                \
       
  1407           range(500, max_intx)                                              \
       
  1408           constraint(BiasedLockingDecayTimeFunc,AfterErgo)                  \
  1398                                                                             \
  1409                                                                             \
  1399   /* tracing */                                                             \
  1410   /* tracing */                                                             \
  1400                                                                             \
  1411                                                                             \
  1401   notproduct(bool, TraceRuntimeCalls, false,                                \
  1412   notproduct(bool, TraceRuntimeCalls, false,                                \
  1402           "Trace run-time calls")                                           \
  1413           "Trace run-time calls")                                           \
  1417   /* This can affect tests that except specific methods to be EMCP. */      \
  1428   /* This can affect tests that except specific methods to be EMCP. */      \
  1418   /* This option should be used with caution.                       */      \
  1429   /* This option should be used with caution.                       */      \
  1419   product(bool, StressLdcRewrite, false,                                    \
  1430   product(bool, StressLdcRewrite, false,                                    \
  1420           "Force ldc -> ldc_w rewrite during RedefineClasses")              \
  1431           "Force ldc -> ldc_w rewrite during RedefineClasses")              \
  1421                                                                             \
  1432                                                                             \
  1422   product(intx, TraceRedefineClasses, 0,                                    \
  1433   product(uintx, TraceRedefineClasses, 0,                                   \
  1423           "Trace level for JVMTI RedefineClasses")                          \
  1434           "Trace level for JVMTI RedefineClasses")                          \
       
  1435           range(0, 0xFFFFFFFF)                                              \
  1424                                                                             \
  1436                                                                             \
  1425   /* change to false by default sometime after Mustang */                   \
  1437   /* change to false by default sometime after Mustang */                   \
  1426   product(bool, VerifyMergedCPBytecodes, true,                              \
  1438   product(bool, VerifyMergedCPBytecodes, true,                              \
  1427           "Verify bytecodes after RedefineClasses constant pool merging")   \
  1439           "Verify bytecodes after RedefineClasses constant pool merging")   \
  1428                                                                             \
  1440                                                                             \
  2167   product(bool, AlwaysActAsServerClassMachine, false,                       \
  2179   product(bool, AlwaysActAsServerClassMachine, false,                       \
  2168           "Always act like a server-class machine")                         \
  2180           "Always act like a server-class machine")                         \
  2169                                                                             \
  2181                                                                             \
  2170   product_pd(uint64_t, MaxRAM,                                              \
  2182   product_pd(uint64_t, MaxRAM,                                              \
  2171           "Real memory size (in bytes) used to set maximum heap size")      \
  2183           "Real memory size (in bytes) used to set maximum heap size")      \
       
  2184           range(0, 0XFFFFFFFFFFFFFFFF)                                      \
  2172                                                                             \
  2185                                                                             \
  2173   product(size_t, ErgoHeapSizeLimit, 0,                                     \
  2186   product(size_t, ErgoHeapSizeLimit, 0,                                     \
  2174           "Maximum ergonomically set heap size (in bytes); zero means use " \
  2187           "Maximum ergonomically set heap size (in bytes); zero means use " \
  2175           "MaxRAM / MaxRAMFraction")                                        \
  2188           "MaxRAM / MaxRAMFraction")                                        \
  2176                                                                             \
  2189                                                                             \
  2675           "Print statistics about safepoint synchronization")               \
  2688           "Print statistics about safepoint synchronization")               \
  2676                                                                             \
  2689                                                                             \
  2677   product(intx, PrintSafepointStatisticsCount, 300,                         \
  2690   product(intx, PrintSafepointStatisticsCount, 300,                         \
  2678           "Total number of safepoint statistics collected "                 \
  2691           "Total number of safepoint statistics collected "                 \
  2679           "before printing them out")                                       \
  2692           "before printing them out")                                       \
       
  2693           range(1, max_intx)                                                \
  2680                                                                             \
  2694                                                                             \
  2681   product(intx, PrintSafepointStatisticsTimeout,  -1,                       \
  2695   product(intx, PrintSafepointStatisticsTimeout,  -1,                       \
  2682           "Print safepoint statistics only when safepoint takes "           \
  2696           "Print safepoint statistics only when safepoint takes "           \
  2683           "more than PrintSafepointSatisticsTimeout in millis")             \
  2697           "more than PrintSafepointSatisticsTimeout in millis")             \
       
  2698   LP64_ONLY(range(-1, max_intx/MICROUNITS))                                 \
       
  2699   NOT_LP64(range(-1, max_intx))                                             \
  2684                                                                             \
  2700                                                                             \
  2685   product(bool, TraceSafepointCleanupTime, false,                           \
  2701   product(bool, TraceSafepointCleanupTime, false,                           \
  2686           "Print the break down of clean up tasks performed during "        \
  2702           "Print the break down of clean up tasks performed during "        \
  2687           "safepoint")                                                      \
  2703           "safepoint")                                                      \
  2688                                                                             \
  2704                                                                             \
  2727           "the method is considered as hot by the flusher")                 \
  2743           "the method is considered as hot by the flusher")                 \
  2728                                                                             \
  2744                                                                             \
  2729   diagnostic(intx, MinPassesBeforeFlush, 10,                                \
  2745   diagnostic(intx, MinPassesBeforeFlush, 10,                                \
  2730           "Minimum number of sweeper passes before an nmethod "             \
  2746           "Minimum number of sweeper passes before an nmethod "             \
  2731           "can be flushed")                                                 \
  2747           "can be flushed")                                                 \
       
  2748           range(0, max_intx)                                                \
  2732                                                                             \
  2749                                                                             \
  2733   product(bool, UseCodeAging, true,                                         \
  2750   product(bool, UseCodeAging, true,                                         \
  2734           "Insert counter to detect warm methods")                          \
  2751           "Insert counter to detect warm methods")                          \
  2735                                                                             \
  2752                                                                             \
  2736   diagnostic(bool, StressCodeAging, false,                                  \
  2753   diagnostic(bool, StressCodeAging, false,                                  \
  3087           "Tracing various information while debugging deoptimization")     \
  3104           "Tracing various information while debugging deoptimization")     \
  3088                                                                             \
  3105                                                                             \
  3089   product(intx, SelfDestructTimer, 0,                                       \
  3106   product(intx, SelfDestructTimer, 0,                                       \
  3090           "Will cause VM to terminate after a given time (in minutes) "     \
  3107           "Will cause VM to terminate after a given time (in minutes) "     \
  3091           "(0 means off)")                                                  \
  3108           "(0 means off)")                                                  \
       
  3109           range(0, max_intx)                                                \
  3092                                                                             \
  3110                                                                             \
  3093   product(intx, MaxJavaStackTraceDepth, 1024,                               \
  3111   product(intx, MaxJavaStackTraceDepth, 1024,                               \
  3094           "The maximum number of lines in the stack trace for Java "        \
  3112           "The maximum number of lines in the stack trace for Java "        \
  3095           "exceptions (0 means all)")                                       \
  3113           "exceptions (0 means all)")                                       \
  3096                                                                             \
  3114           range(0, max_jint/2)                                              \
       
  3115                                                                             \
       
  3116   /* notice: the max range value here is max_jint, not max_intx  */         \
       
  3117   /* because of overflow issue                                   */         \
  3097   NOT_EMBEDDED(diagnostic(intx, GuaranteedSafepointInterval, 1000,          \
  3118   NOT_EMBEDDED(diagnostic(intx, GuaranteedSafepointInterval, 1000,          \
  3098           "Guarantee a safepoint (at least) every so many milliseconds "    \
  3119           "Guarantee a safepoint (at least) every so many milliseconds "    \
  3099           "(0 means none)"))                                                \
  3120           "(0 means none)"))                                                \
       
  3121   NOT_EMBEDDED(range(0, max_jint))                                          \
  3100                                                                             \
  3122                                                                             \
  3101   EMBEDDED_ONLY(product(intx, GuaranteedSafepointInterval, 0,               \
  3123   EMBEDDED_ONLY(product(intx, GuaranteedSafepointInterval, 0,               \
  3102           "Guarantee a safepoint (at least) every so many milliseconds "    \
  3124           "Guarantee a safepoint (at least) every so many milliseconds "    \
  3103           "(0 means none)"))                                                \
  3125           "(0 means none)"))                                                \
       
  3126   EMBEDDED_ONLY(range(0, max_jint))                                         \
  3104                                                                             \
  3127                                                                             \
  3105   product(intx, SafepointTimeoutDelay, 10000,                               \
  3128   product(intx, SafepointTimeoutDelay, 10000,                               \
  3106           "Delay in milliseconds for option SafepointTimeout")              \
  3129           "Delay in milliseconds for option SafepointTimeout")              \
       
  3130   LP64_ONLY(range(0, max_intx/MICROUNITS))                                  \
       
  3131   NOT_LP64(range(0, max_intx))                                              \
  3107                                                                             \
  3132                                                                             \
  3108   product(intx, NmethodSweepActivity, 10,                                   \
  3133   product(intx, NmethodSweepActivity, 10,                                   \
  3109           "Removes cold nmethods from code cache if > 0. Higher values "    \
  3134           "Removes cold nmethods from code cache if > 0. Higher values "    \
  3110           "result in more aggressive sweeping")                             \
  3135           "result in more aggressive sweeping")                             \
  3111           range(0, 2000)                                                    \
  3136           range(0, 2000)                                                    \
  3185           "Number of runtime stub nodes to show in profile")                \
  3210           "Number of runtime stub nodes to show in profile")                \
  3186                                                                             \
  3211                                                                             \
  3187   product(intx, ProfileIntervalsTicks, 100,                                 \
  3212   product(intx, ProfileIntervalsTicks, 100,                                 \
  3188           "Number of ticks between printing of interval profile "           \
  3213           "Number of ticks between printing of interval profile "           \
  3189           "(+ProfileIntervals)")                                            \
  3214           "(+ProfileIntervals)")                                            \
       
  3215           range(0, max_intx)                                                \
  3190                                                                             \
  3216                                                                             \
  3191   notproduct(intx, ScavengeALotInterval,     1,                             \
  3217   notproduct(intx, ScavengeALotInterval,     1,                             \
  3192           "Interval between which scavenge will occur with +ScavengeALot")  \
  3218           "Interval between which scavenge will occur with +ScavengeALot")  \
  3193                                                                             \
  3219                                                                             \
  3194   notproduct(intx, FullGCALotInterval,     1,                               \
  3220   notproduct(intx, FullGCALotInterval,     1,                               \
  3218           "Number of exits until ZombieALot kicks in")                      \
  3244           "Number of exits until ZombieALot kicks in")                      \
  3219                                                                             \
  3245                                                                             \
  3220   diagnostic(intx, MallocVerifyInterval,     0,                             \
  3246   diagnostic(intx, MallocVerifyInterval,     0,                             \
  3221           "If non-zero, verify C heap after every N calls to "              \
  3247           "If non-zero, verify C heap after every N calls to "              \
  3222           "malloc/realloc/free")                                            \
  3248           "malloc/realloc/free")                                            \
       
  3249           range(0, max_intx)                                                \
  3223                                                                             \
  3250                                                                             \
  3224   diagnostic(intx, MallocVerifyStart,     0,                                \
  3251   diagnostic(intx, MallocVerifyStart,     0,                                \
  3225           "If non-zero, start verifying C heap after Nth call to "          \
  3252           "If non-zero, start verifying C heap after Nth call to "          \
  3226           "malloc/realloc/free")                                            \
  3253           "malloc/realloc/free")                                            \
       
  3254           range(0, max_intx)                                                \
  3227                                                                             \
  3255                                                                             \
  3228   diagnostic(uintx, MallocMaxTestWords,     0,                              \
  3256   diagnostic(uintx, MallocMaxTestWords,     0,                              \
  3229           "If non-zero, maximum number of words that malloc/realloc can "   \
  3257           "If non-zero, maximum number of words that malloc/realloc can "   \
  3230           "allocate (for testing only)")                                    \
  3258           "allocate (for testing only)")                                    \
       
  3259           range(0, max_uintx)                                               \
  3231                                                                             \
  3260                                                                             \
  3232   product(intx, TypeProfileWidth,     2,                                    \
  3261   product(intx, TypeProfileWidth,     2,                                    \
  3233           "Number of receiver types to record in call/cast profile")        \
  3262           "Number of receiver types to record in call/cast profile")        \
  3234                                                                             \
  3263                                                                             \
  3235   develop(intx, BciProfileWidth,      2,                                    \
  3264   develop(intx, BciProfileWidth,      2,                                    \
  3457           "Delay in scheduling GC workers (in milliseconds)")               \
  3486           "Delay in scheduling GC workers (in milliseconds)")               \
  3458                                                                             \
  3487                                                                             \
  3459   product(intx, DeferThrSuspendLoopCount,     4000,                         \
  3488   product(intx, DeferThrSuspendLoopCount,     4000,                         \
  3460           "(Unstable) Number of times to iterate in safepoint loop "        \
  3489           "(Unstable) Number of times to iterate in safepoint loop "        \
  3461           "before blocking VM threads ")                                    \
  3490           "before blocking VM threads ")                                    \
       
  3491           range(-1, max_jint-1)                                             \
  3462                                                                             \
  3492                                                                             \
  3463   product(intx, DeferPollingPageLoopCount,     -1,                          \
  3493   product(intx, DeferPollingPageLoopCount,     -1,                          \
  3464           "(Unsafe,Unstable) Number of iterations in safepoint loop "       \
  3494           "(Unsafe,Unstable) Number of iterations in safepoint loop "       \
  3465           "before changing safepoint polling page to RO ")                  \
  3495           "before changing safepoint polling page to RO ")                  \
       
  3496           range(-1, max_jint-1)                                             \
  3466                                                                             \
  3497                                                                             \
  3467   product(intx, SafepointSpinBeforeYield, 2000, "(Unstable)")               \
  3498   product(intx, SafepointSpinBeforeYield, 2000, "(Unstable)")               \
  3468           range(0, max_intx)                                                \
  3499           range(0, max_intx)                                                \
  3469                                                                             \
  3500                                                                             \
  3470   product(bool, PSChunkLargeArrays, true,                                   \
  3501   product(bool, PSChunkLargeArrays, true,                                   \
  3475           "during parallel gc")                                             \
  3506           "during parallel gc")                                             \
  3476                                                                             \
  3507                                                                             \
  3477   /* stack parameters */                                                    \
  3508   /* stack parameters */                                                    \
  3478   product_pd(intx, StackYellowPages,                                        \
  3509   product_pd(intx, StackYellowPages,                                        \
  3479           "Number of yellow zone (recoverable overflows) pages")            \
  3510           "Number of yellow zone (recoverable overflows) pages")            \
  3480           range(1, max_intx)                                                \
  3511           range(MIN_STACK_YELLOW_PAGES, (DEFAULT_STACK_YELLOW_PAGES+5))     \
  3481                                                                             \
  3512                                                                             \
  3482   product_pd(intx, StackRedPages,                                           \
  3513   product_pd(intx, StackRedPages,                                           \
  3483           "Number of red zone (unrecoverable overflows) pages")             \
  3514           "Number of red zone (unrecoverable overflows) pages")             \
  3484           range(1, max_intx)                                                \
  3515           range(MIN_STACK_RED_PAGES, (DEFAULT_STACK_RED_PAGES+2))           \
  3485                                                                             \
  3516                                                                             \
  3486   /* greater stack shadow pages can't generate instruction to bang stack */ \
  3517   /* greater stack shadow pages can't generate instruction to bang stack */ \
  3487   product_pd(intx, StackShadowPages,                                        \
  3518   product_pd(intx, StackShadowPages,                                        \
  3488           "Number of shadow zone (for overflow checking) pages "            \
  3519           "Number of shadow zone (for overflow checking) pages "            \
  3489           "this should exceed the depth of the VM and native call stack")   \
  3520           "this should exceed the depth of the VM and native call stack")   \
  3490           range(1, 50)                                                      \
  3521           range(MIN_STACK_SHADOW_PAGES, (DEFAULT_STACK_SHADOW_PAGES+30))    \
  3491                                                                             \
  3522                                                                             \
  3492   product_pd(intx, ThreadStackSize,                                         \
  3523   product_pd(intx, ThreadStackSize,                                         \
  3493           "Thread Stack Size (in Kbytes)")                                  \
  3524           "Thread Stack Size (in Kbytes)")                                  \
       
  3525           range(0, max_intx-os::vm_page_size())                             \
  3494                                                                             \
  3526                                                                             \
  3495   product_pd(intx, VMThreadStackSize,                                       \
  3527   product_pd(intx, VMThreadStackSize,                                       \
  3496           "Non-Java Thread Stack Size (in Kbytes)")                         \
  3528           "Non-Java Thread Stack Size (in Kbytes)")                         \
       
  3529           range(0, max_intx/(1 * K))                                        \
  3497                                                                             \
  3530                                                                             \
  3498   product_pd(intx, CompilerThreadStackSize,                                 \
  3531   product_pd(intx, CompilerThreadStackSize,                                 \
  3499           "Compiler Thread Stack Size (in Kbytes)")                         \
  3532           "Compiler Thread Stack Size (in Kbytes)")                         \
  3500                                                                             \
  3533                                                                             \
  3501   develop_pd(size_t, JVMInvokeMethodSlack,                                  \
  3534   develop_pd(size_t, JVMInvokeMethodSlack,                                  \
  3502           "Stack space (bytes) required for JVM_InvokeMethod to complete")  \
  3535           "Stack space (bytes) required for JVM_InvokeMethod to complete")  \
  3503                                                                             \
  3536                                                                             \
  3504   /* code cache parameters                                    */            \
  3537   /* code cache parameters                                    */            \
  3505   /* ppc64/tiered compilation has large code-entry alignment. */            \
  3538   /* ppc64/tiered compilation has large code-entry alignment. */            \
  3506   develop(uintx, CodeCacheSegmentSize, 64 PPC64_ONLY(+64) NOT_PPC64(TIERED_ONLY(+64)),\
  3539   develop(uintx, CodeCacheSegmentSize,                                      \
       
  3540           64 PPC64_ONLY(+64) NOT_PPC64(TIERED_ONLY(+64)),                   \
  3507           "Code cache segment size (in bytes) - smallest unit of "          \
  3541           "Code cache segment size (in bytes) - smallest unit of "          \
  3508           "allocation")                                                     \
  3542           "allocation")                                                     \
  3509           range(1, 1024)                                                    \
  3543           range(1, 1024)                                                    \
  3510                                                                             \
  3544                                                                             \
  3511   develop_pd(intx, CodeEntryAlignment,                                      \
  3545   develop_pd(intx, CodeEntryAlignment,                                      \
  3668           "(-1 means no change)")                                           \
  3702           "(-1 means no change)")                                           \
  3669                                                                             \
  3703                                                                             \
  3670   product(intx, VMThreadPriority, -1,                                       \
  3704   product(intx, VMThreadPriority, -1,                                       \
  3671           "The native priority at which the VM thread should run "          \
  3705           "The native priority at which the VM thread should run "          \
  3672           "(-1 means no change)")                                           \
  3706           "(-1 means no change)")                                           \
       
  3707           range(-1, 127)                                                    \
  3673                                                                             \
  3708                                                                             \
  3674   product(bool, CompilerThreadHintNoPreempt, true,                          \
  3709   product(bool, CompilerThreadHintNoPreempt, true,                          \
  3675           "(Solaris only) Give compiler threads an extra quanta")           \
  3710           "(Solaris only) Give compiler threads an extra quanta")           \
  3676                                                                             \
  3711                                                                             \
  3677   product(bool, VMThreadHintNoPreempt, false,                               \
  3712   product(bool, VMThreadHintNoPreempt, false,                               \
  3678           "(Solaris only) Give VM thread an extra quanta")                  \
  3713           "(Solaris only) Give VM thread an extra quanta")                  \
  3679                                                                             \
  3714                                                                             \
  3680   product(intx, JavaPriority1_To_OSPriority, -1,                            \
  3715   product(intx, JavaPriority1_To_OSPriority, -1,                            \
  3681           "Map Java priorities to OS priorities")                           \
  3716           "Map Java priorities to OS priorities")                           \
       
  3717           range(-1, 127)                                                    \
  3682                                                                             \
  3718                                                                             \
  3683   product(intx, JavaPriority2_To_OSPriority, -1,                            \
  3719   product(intx, JavaPriority2_To_OSPriority, -1,                            \
  3684           "Map Java priorities to OS priorities")                           \
  3720           "Map Java priorities to OS priorities")                           \
       
  3721           range(-1, 127)                                                    \
  3685                                                                             \
  3722                                                                             \
  3686   product(intx, JavaPriority3_To_OSPriority, -1,                            \
  3723   product(intx, JavaPriority3_To_OSPriority, -1,                            \
  3687           "Map Java priorities to OS priorities")                           \
  3724           "Map Java priorities to OS priorities")                           \
       
  3725           range(-1, 127)                                                    \
  3688                                                                             \
  3726                                                                             \
  3689   product(intx, JavaPriority4_To_OSPriority, -1,                            \
  3727   product(intx, JavaPriority4_To_OSPriority, -1,                            \
  3690           "Map Java priorities to OS priorities")                           \
  3728           "Map Java priorities to OS priorities")                           \
       
  3729           range(-1, 127)                                                    \
  3691                                                                             \
  3730                                                                             \
  3692   product(intx, JavaPriority5_To_OSPriority, -1,                            \
  3731   product(intx, JavaPriority5_To_OSPriority, -1,                            \
  3693           "Map Java priorities to OS priorities")                           \
  3732           "Map Java priorities to OS priorities")                           \
       
  3733           range(-1, 127)                                                    \
  3694                                                                             \
  3734                                                                             \
  3695   product(intx, JavaPriority6_To_OSPriority, -1,                            \
  3735   product(intx, JavaPriority6_To_OSPriority, -1,                            \
  3696           "Map Java priorities to OS priorities")                           \
  3736           "Map Java priorities to OS priorities")                           \
       
  3737           range(-1, 127)                                                    \
  3697                                                                             \
  3738                                                                             \
  3698   product(intx, JavaPriority7_To_OSPriority, -1,                            \
  3739   product(intx, JavaPriority7_To_OSPriority, -1,                            \
  3699           "Map Java priorities to OS priorities")                           \
  3740           "Map Java priorities to OS priorities")                           \
       
  3741           range(-1, 127)                                                    \
  3700                                                                             \
  3742                                                                             \
  3701   product(intx, JavaPriority8_To_OSPriority, -1,                            \
  3743   product(intx, JavaPriority8_To_OSPriority, -1,                            \
  3702           "Map Java priorities to OS priorities")                           \
  3744           "Map Java priorities to OS priorities")                           \
       
  3745           range(-1, 127)                                                    \
  3703                                                                             \
  3746                                                                             \
  3704   product(intx, JavaPriority9_To_OSPriority, -1,                            \
  3747   product(intx, JavaPriority9_To_OSPriority, -1,                            \
  3705           "Map Java priorities to OS priorities")                           \
  3748           "Map Java priorities to OS priorities")                           \
       
  3749           range(-1, 127)                                                    \
  3706                                                                             \
  3750                                                                             \
  3707   product(intx, JavaPriority10_To_OSPriority,-1,                            \
  3751   product(intx, JavaPriority10_To_OSPriority,-1,                            \
  3708           "Map Java priorities to OS priorities")                           \
  3752           "Map Java priorities to OS priorities")                           \
       
  3753           range(-1, 127)                                                    \
  3709                                                                             \
  3754                                                                             \
  3710   experimental(bool, UseCriticalJavaThreadPriority, false,                  \
  3755   experimental(bool, UseCriticalJavaThreadPriority, false,                  \
  3711           "Java thread priority 10 maps to critical scheduling priority")   \
  3756           "Java thread priority 10 maps to critical scheduling priority")   \
  3712                                                                             \
  3757                                                                             \
  3713   experimental(bool, UseCriticalCompilerThreadPriority, false,              \
  3758   experimental(bool, UseCriticalCompilerThreadPriority, false,              \
  3884                                                                             \
  3929                                                                             \
  3885   /* Properties for Java libraries  */                                      \
  3930   /* Properties for Java libraries  */                                      \
  3886                                                                             \
  3931                                                                             \
  3887   product(size_t, MaxDirectMemorySize, 0,                                   \
  3932   product(size_t, MaxDirectMemorySize, 0,                                   \
  3888           "Maximum total size of NIO direct-buffer allocations")            \
  3933           "Maximum total size of NIO direct-buffer allocations")            \
       
  3934           range(0, (size_t)SIZE_MAX)                                        \
  3889                                                                             \
  3935                                                                             \
  3890   /* Flags used for temporary code during development  */                   \
  3936   /* Flags used for temporary code during development  */                   \
  3891                                                                             \
  3937                                                                             \
  3892   diagnostic(bool, UseNewCode, false,                                       \
  3938   diagnostic(bool, UseNewCode, false,                                       \
  3893           "Testing Only: Use the new version while testing")                \
  3939           "Testing Only: Use the new version while testing")                \
  3912           "The string %p in the file name (if present) "                    \
  3958           "The string %p in the file name (if present) "                    \
  3913           "will be replaced by pid")                                        \
  3959           "will be replaced by pid")                                        \
  3914                                                                             \
  3960                                                                             \
  3915   product(intx, PerfDataSamplingInterval, 50,                               \
  3961   product(intx, PerfDataSamplingInterval, 50,                               \
  3916           "Data sampling interval (in milliseconds)")                       \
  3962           "Data sampling interval (in milliseconds)")                       \
       
  3963           range(PeriodicTask::min_interval, max_jint)                       \
       
  3964           constraint(PerfDataSamplingIntervalFunc, AfterErgo)               \
  3917                                                                             \
  3965                                                                             \
  3918   develop(bool, PerfTraceDataCreation, false,                               \
  3966   develop(bool, PerfTraceDataCreation, false,                               \
  3919           "Trace creation of Performance Data Entries")                     \
  3967           "Trace creation of Performance Data Entries")                     \
  3920                                                                             \
  3968                                                                             \
  3921   develop(bool, PerfTraceMemOps, false,                                     \
  3969   develop(bool, PerfTraceMemOps, false,                                     \
  3925           "Store performance data in standard memory")                      \
  3973           "Store performance data in standard memory")                      \
  3926                                                                             \
  3974                                                                             \
  3927   product(intx, PerfDataMemorySize, 64*K,                                   \
  3975   product(intx, PerfDataMemorySize, 64*K,                                   \
  3928           "Size of performance data memory region. Will be rounded "        \
  3976           "Size of performance data memory region. Will be rounded "        \
  3929           "up to a multiple of the native os page size.")                   \
  3977           "up to a multiple of the native os page size.")                   \
       
  3978           range(128, 32*64*K)                                               \
  3930                                                                             \
  3979                                                                             \
  3931   product(intx, PerfMaxStringConstLength, 1024,                             \
  3980   product(intx, PerfMaxStringConstLength, 1024,                             \
  3932           "Maximum PerfStringConstant string length before truncation")     \
  3981           "Maximum PerfStringConstant string length before truncation")     \
       
  3982           range(32, 32*K)                                                   \
  3933                                                                             \
  3983                                                                             \
  3934   product(bool, PerfAllowAtExitRegistration, false,                         \
  3984   product(bool, PerfAllowAtExitRegistration, false,                         \
  3935           "Allow registration of atexit() methods")                         \
  3985           "Allow registration of atexit() methods")                         \
  3936                                                                             \
  3986                                                                             \
  3937   product(bool, PerfBypassFileSystemCheck, false,                           \
  3987   product(bool, PerfBypassFileSystemCheck, false,                           \
  3987                                                                             \
  4037                                                                             \
  3988   product(bool, PrintSharedDictionary, false,                               \
  4038   product(bool, PrintSharedDictionary, false,                               \
  3989           "If PrintSharedArchiveAndExit is true, also print the shared "    \
  4039           "If PrintSharedArchiveAndExit is true, also print the shared "    \
  3990           "dictionary")                                                     \
  4040           "dictionary")                                                     \
  3991                                                                             \
  4041                                                                             \
  3992   product(size_t, SharedReadWriteSize,  NOT_LP64(12*M) LP64_ONLY(16*M),     \
  4042   product(size_t, SharedReadWriteSize, NOT_LP64(12*M) LP64_ONLY(16*M),      \
  3993           "Size of read-write space for metadata (in bytes)")               \
  4043           "Size of read-write space for metadata (in bytes)")               \
  3994                                                                             \
  4044                                                                             \
  3995   product(size_t, SharedReadOnlySize,  NOT_LP64(12*M) LP64_ONLY(16*M),      \
  4045   product(size_t, SharedReadOnlySize, NOT_LP64(12*M) LP64_ONLY(16*M),       \
  3996           "Size of read-only space for metadata (in bytes)")                \
  4046           "Size of read-only space for metadata (in bytes)")                \
  3997                                                                             \
  4047                                                                             \
  3998   product(uintx, SharedMiscDataSize,    NOT_LP64(2*M) LP64_ONLY(4*M),       \
  4048   product(uintx, SharedMiscDataSize,    NOT_LP64(2*M) LP64_ONLY(4*M),       \
  3999           "Size of the shared miscellaneous data area (in bytes)")          \
  4049           "Size of the shared miscellaneous data area (in bytes)")          \
  4000                                                                             \
  4050                                                                             \
  4005           NOT_LP64(LINUX_ONLY(2*G) NOT_LINUX(0)),                           \
  4055           NOT_LP64(LINUX_ONLY(2*G) NOT_LINUX(0)),                           \
  4006           "Address to allocate shared memory region for class data")        \
  4056           "Address to allocate shared memory region for class data")        \
  4007                                                                             \
  4057                                                                             \
  4008   product(uintx, SharedSymbolTableBucketSize, 4,                            \
  4058   product(uintx, SharedSymbolTableBucketSize, 4,                            \
  4009           "Average number of symbols per bucket in shared table")           \
  4059           "Average number of symbols per bucket in shared table")           \
       
  4060           range(2, 246)                                                     \
  4010                                                                             \
  4061                                                                             \
  4011   diagnostic(bool, IgnoreUnverifiableClassesDuringDump, false,              \
  4062   diagnostic(bool, IgnoreUnverifiableClassesDuringDump, false,              \
  4012           "Do not quit -Xshare:dump even if we encounter unverifiable "     \
  4063           "Do not quit -Xshare:dump even if we encounter unverifiable "     \
  4013           "classes. Just exclude them from the shared dictionary.")         \
  4064           "classes. Just exclude them from the shared dictionary.")         \
  4014                                                                             \
  4065                                                                             \