< prev index next >

src/hotspot/share/runtime/globals.hpp

Print this page

1009           "Print all VM flags after argument and ergonomic processing")     \
1010                                                                             \
1011   develop(bool, PrintFlagsWithComments, false,                              \
1012           "Print all VM flags with default values and descriptions and "    \
1013           "exit")                                                           \
1014                                                                             \
1015   product(bool, PrintFlagsRanges, false,                                    \
1016           "Print VM flags and their ranges")                                \
1017                                                                             \
1018   product(bool, SerializeVMOutput, true, DIAGNOSTIC,                        \
1019           "Use a mutex to serialize output to tty and LogFile")             \
1020                                                                             \
1021   product(bool, DisplayVMOutput, true, DIAGNOSTIC,                          \
1022           "Display all VM output on the tty, independently of LogVMOutput") \
1023                                                                             \
1024   product(bool, LogVMOutput, false, DIAGNOSTIC,                             \
1025           "Save VM output to LogFile")                                      \
1026                                                                             \
1027   product(ccstr, LogFile, nullptr, DIAGNOSTIC,                              \
1028           "If LogVMOutput or LogCompilation is on, save VM output to "      \
1029           "this file [default: ./hotspot_pid%p.log] (%p replaced with pid)")\
1030                                                                             \
1031   product(ccstr, ErrorFile, nullptr,                                        \
1032           "If an error occurs, save the error data to this file "           \
1033           "[default: ./hs_err_pid%p.log] (%p replaced with pid)")           \
1034                                                                             \
1035   product(bool, ExtensiveErrorReports,                                      \
1036           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
1037           "Error reports are more extensive.")                              \
1038                                                                             \
1039   product(bool, DisplayVMOutputToStderr, false,                             \
1040           "If DisplayVMOutput is true, display all VM output to stderr")    \
1041                                                                             \
1042   product(bool, DisplayVMOutputToStdout, false,                             \
1043           "If DisplayVMOutput is true, display all VM output to stdout")    \
1044                                                                             \
1045   product(bool, ErrorFileToStderr, false,                                   \
1046           "If true, error data is printed to stderr instead of a file")     \
1047                                                                             \
1048   product(bool, ErrorFileToStdout, false,                                   \
1049           "If true, error data is printed to stdout instead of a file")     \
1050                                                                             \
1051   develop(bool, VerifyHeavyMonitors, false,                                 \
1052           "Checks that no stack locking happens when using "                \
1053           "-XX:LockingMode=0 (LM_MONITOR)")                                 \

1133   product(bool, UseInterpreter, true,                                       \
1134           "Use interpreter for non-compiled methods")                       \
1135                                                                             \
1136   develop(bool, UseFastSignatureHandlers, true,                             \
1137           "Use fast signature handlers for native calls")                   \
1138                                                                             \
1139   product(bool, UseLoopCounter, true,                                       \
1140           "Increment invocation counter on backward branch")                \
1141                                                                             \
1142   product_pd(bool, UseOnStackReplacement,                                   \
1143           "Use on stack replacement, calls runtime if invoc. counter "      \
1144           "overflows in loop")                                              \
1145                                                                             \
1146   develop(bool, TraceOnStackReplacement, false,                             \
1147           "Trace on stack replacement")                                     \
1148                                                                             \
1149   product_pd(bool, PreferInterpreterNativeStubs,                            \
1150           "Use always interpreter stubs for native methods invoked via "    \
1151           "interpreter")                                                    \
1152                                                                             \
1153   develop(bool, CountBytecodes, false,                                      \
1154           "Count number of bytecodes executed")                             \
1155                                                                             \
1156   develop(bool, PrintBytecodeHistogram, false,                              \



1157           "Print histogram of the executed bytecodes")                      \
1158                                                                             \




1159   develop(bool, PrintBytecodePairHistogram, false,                          \
1160           "Print histogram of the executed bytecode pairs")                 \
1161                                                                             \
1162   product(bool, PrintSignatureHandlers, false, DIAGNOSTIC,                  \
1163           "Print code generated for native method signature handlers")      \
1164                                                                             \
1165   develop(bool, VerifyOops, false,                                          \
1166           "Do plausibility checks for oops")                                \
1167                                                                             \
1168   develop(bool, CheckUnhandledOops, false,                                  \
1169           "Check for unhandled oops in VM code")                            \
1170                                                                             \
1171   develop(bool, VerifyJNIFields, trueInDebug,                               \
1172           "Verify jfieldIDs for instance fields")                           \
1173                                                                             \
1174   develop(bool, VerifyFPU, false,                                           \
1175           "Verify FPU state (check for NaN's, etc.)")                       \
1176                                                                             \
1177   develop(bool, VerifyActivationFrameSize, false,                           \
1178           "Verify that activation frame didn't become smaller than its "    \
1179           "minimal size")                                                   \
1180                                                                             \
1181   develop(bool, TraceFrequencyInlining, false,                              \
1182           "Trace frequency based inlining")                                 \
1183                                                                             \
1184   develop_pd(bool, InlineIntrinsics,                                        \
1185           "Use intrinsics in Interpreter that can be statically resolved")  \
1186                                                                             \
1187   product_pd(bool, ProfileInterpreter,                                      \
1188           "Profile at the bytecode level during interpretation")            \
1189                                                                             \
1190   develop_pd(bool, ProfileTraps,                                            \
1191           "Profile deoptimization traps at the bytecode level")             \
1192                                                                             \
1193   product(intx, ProfileMaturityPercentage, 20,                              \
1194           "number of method invocations/branches (expressed as % of "       \
1195           "CompileThreshold) before using the method's profile")            \
1196           range(0, 100)                                                     \
1197                                                                             \



1198   product(bool, PrintMethodData, false, DIAGNOSTIC,                         \
1199           "Print the results of +ProfileInterpreter at end of run")         \
1200                                                                             \
1201   develop(bool, VerifyDataPointer, trueInDebug,                             \
1202           "Verify the method data pointer during interpreter profiling")    \
1203                                                                             \
1204   develop(bool, CrashGCForDumpingJavaThread, false,                         \
1205           "Manually make GC thread crash then dump java stack trace;  "     \
1206           "Test only")                                                      \
1207                                                                             \
1208   /* compilation */                                                         \
1209   product(bool, UseCompiler, true,                                          \
1210           "Use Just-In-Time compilation")                                   \
1211                                                                             \
1212   develop(intx, CounterHalfLifeTime,    30,                                 \
1213           "Half-life time of invocation counters (in seconds)")             \
1214                                                                             \
1215   product(bool, AlwaysCompileLoopMethods, false,                            \
1216           "When using recompilation, never interpret methods "              \
1217           "containing loops")                                               \

1720   product(bool, UsePerfData, true,                                          \
1721           "Flag to disable jvmstat instrumentation for performance testing "\
1722           "and problem isolation purposes")                                 \
1723                                                                             \
1724   product(bool, PerfDataSaveToFile, false,                                  \
1725           "Save PerfData memory to hsperfdata_<pid> file on exit")          \
1726                                                                             \
1727   product(ccstr, PerfDataSaveFile, nullptr,                                 \
1728           "Save PerfData memory to the specified absolute pathname. "       \
1729           "The string %p in the file name (if present) "                    \
1730           "will be replaced by pid")                                        \
1731                                                                             \
1732   product(int, PerfDataSamplingInterval, 50,                                \
1733           "Data sampling interval (in milliseconds)")                       \
1734           range(PeriodicTask::min_interval, max_jint)                       \
1735           constraint(PerfDataSamplingIntervalFunc, AfterErgo)               \
1736                                                                             \
1737   product(bool, PerfDisableSharedMem, false,                                \
1738           "Store performance data in standard memory")                      \
1739                                                                             \
1740   product(int, PerfDataMemorySize, 32*K,                                    \
1741           "Size of performance data memory region. Will be rounded "        \
1742           "up to a multiple of the native os page size.")                   \
1743           range(128, 32*64*K)                                               \
1744                                                                             \
1745   product(int, PerfMaxStringConstLength, 1024,                              \
1746           "Maximum PerfStringConstant string length before truncation")     \
1747           range(32, 32*K)                                                   \
1748                                                                             \
1749   product(bool, PerfAllowAtExitRegistration, false,                         \
1750           "Allow registration of atexit() methods")                         \
1751                                                                             \
1752   product(bool, PerfBypassFileSystemCheck, false,                           \
1753           "Bypass Win32 file system criteria checks (Windows Only)")        \
1754                                                                             \
1755   product(int, UnguardOnExecutionViolation, 0,                              \
1756           "Unguard page and retry on no-execute fault (Win32 only) "        \
1757           "0=off, 1=conservative, 2=aggressive")                            \
1758           range(0, 2)                                                       \
1759                                                                             \
1760   /* Serviceability Support */                                              \

1960                                                                             \
1961   develop(bool, VerifyCrossModifyFence,                                     \
1962           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1963              "Mark all threads after a safepoint, and clear on a modify "   \
1964              "fence. Add cleanliness checks.")                              \
1965                                                                             \
1966   product(int, LockingMode, LM_LIGHTWEIGHT,                                 \
1967           "Select locking mode: "                                           \
1968           "0: monitors only (LM_MONITOR), "                                 \
1969           "1: monitors & legacy stack-locking (LM_LEGACY), "                \
1970           "2: monitors & new lightweight locking (LM_LIGHTWEIGHT, default)") \
1971           range(0, 2)                                                       \
1972                                                                             \
1973   product(uint, TrimNativeHeapInterval, 0,                                  \
1974           "Interval, in ms, at which the JVM will trim the native heap if " \
1975           "the platform supports that. Lower values will reclaim memory "   \
1976           "more eagerly at the cost of higher overhead. A value of 0 "      \
1977           "(default) disables native heap trimming.")                       \
1978           range(0, UINT_MAX)                                                \
1979                                                                             \












1980   develop(bool, SimulateFullAddressSpace, false,                            \
1981           "Simulates a very populated, fragmented address space; no "       \
1982           "targeted reservations will succeed.")                            \
1983                                                                             \
1984   product(bool, ProfileExceptionHandlers, true,                             \
1985           "Profile exception handlers")                                     \
1986                                                                             \
1987   product(bool, AlwaysRecordEvolDependencies, true, EXPERIMENTAL,           \
1988                 "Unconditionally record nmethod dependencies on class "     \
1989                 "rewriting/transformation independently of the JVMTI "      \
1990                 "can_{retransform/redefine}_classes capabilities.")         \
1991                                                                             \



1992   product(bool, UseSecondarySupersCache, true, DIAGNOSTIC,                  \
1993                 "Use secondary supers cache during subtype checks.")        \
1994                                                                             \
1995   product(bool, UseSecondarySupersTable, false, DIAGNOSTIC,                 \
1996                 "Use hash table to lookup secondary supers.")               \
1997                                                                             \
1998   product(bool, VerifySecondarySupers, false, DIAGNOSTIC,                   \
1999           "Check that linear and hashed secondary lookups return the same result.") \
2000                                                                             \
2001   product(bool, StressSecondarySupers, false, DIAGNOSTIC,                   \
2002           "Use a terrible hash function in order to generate many collisions.") \
2003 

2004 // end of RUNTIME_FLAGS
2005 
2006 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
2007 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
2008 DECLARE_FLAGS(RUNTIME_FLAGS)
2009 DECLARE_FLAGS(RUNTIME_OS_FLAGS)
2010 
2011 #endif // SHARE_RUNTIME_GLOBALS_HPP

1009           "Print all VM flags after argument and ergonomic processing")     \
1010                                                                             \
1011   develop(bool, PrintFlagsWithComments, false,                              \
1012           "Print all VM flags with default values and descriptions and "    \
1013           "exit")                                                           \
1014                                                                             \
1015   product(bool, PrintFlagsRanges, false,                                    \
1016           "Print VM flags and their ranges")                                \
1017                                                                             \
1018   product(bool, SerializeVMOutput, true, DIAGNOSTIC,                        \
1019           "Use a mutex to serialize output to tty and LogFile")             \
1020                                                                             \
1021   product(bool, DisplayVMOutput, true, DIAGNOSTIC,                          \
1022           "Display all VM output on the tty, independently of LogVMOutput") \
1023                                                                             \
1024   product(bool, LogVMOutput, false, DIAGNOSTIC,                             \
1025           "Save VM output to LogFile")                                      \
1026                                                                             \
1027   product(ccstr, LogFile, nullptr, DIAGNOSTIC,                              \
1028           "If LogVMOutput or LogCompilation is on, save VM output to "      \
1029           "this file [default: ./hotspot_%p.log] (%p replaced with pidNNN)")\
1030                                                                             \
1031   product(ccstr, ErrorFile, nullptr,                                        \
1032           "If an error occurs, save the error data to this file "           \
1033           "[default: ./hs_err_%p.log] (%p replaced with pidNNN)")           \
1034                                                                             \
1035   product(bool, ExtensiveErrorReports,                                      \
1036           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
1037           "Error reports are more extensive.")                              \
1038                                                                             \
1039   product(bool, DisplayVMOutputToStderr, false,                             \
1040           "If DisplayVMOutput is true, display all VM output to stderr")    \
1041                                                                             \
1042   product(bool, DisplayVMOutputToStdout, false,                             \
1043           "If DisplayVMOutput is true, display all VM output to stdout")    \
1044                                                                             \
1045   product(bool, ErrorFileToStderr, false,                                   \
1046           "If true, error data is printed to stderr instead of a file")     \
1047                                                                             \
1048   product(bool, ErrorFileToStdout, false,                                   \
1049           "If true, error data is printed to stdout instead of a file")     \
1050                                                                             \
1051   develop(bool, VerifyHeavyMonitors, false,                                 \
1052           "Checks that no stack locking happens when using "                \
1053           "-XX:LockingMode=0 (LM_MONITOR)")                                 \

1133   product(bool, UseInterpreter, true,                                       \
1134           "Use interpreter for non-compiled methods")                       \
1135                                                                             \
1136   develop(bool, UseFastSignatureHandlers, true,                             \
1137           "Use fast signature handlers for native calls")                   \
1138                                                                             \
1139   product(bool, UseLoopCounter, true,                                       \
1140           "Increment invocation counter on backward branch")                \
1141                                                                             \
1142   product_pd(bool, UseOnStackReplacement,                                   \
1143           "Use on stack replacement, calls runtime if invoc. counter "      \
1144           "overflows in loop")                                              \
1145                                                                             \
1146   develop(bool, TraceOnStackReplacement, false,                             \
1147           "Trace on stack replacement")                                     \
1148                                                                             \
1149   product_pd(bool, PreferInterpreterNativeStubs,                            \
1150           "Use always interpreter stubs for native methods invoked via "    \
1151           "interpreter")                                                    \
1152                                                                             \
1153   product(bool, CountBytecodes, false, DIAGNOSTIC,                          \
1154           "Count number of bytecodes executed")                             \
1155                                                                             \
1156   product(bool, CountBytecodesPerThread, false, DIAGNOSTIC,                 \
1157           "Count number of bytecodes executed per thread")                  \
1158                                                                             \
1159   product(bool, PrintBytecodeHistogram, false, DIAGNOSTIC,                  \
1160           "Print histogram of the executed bytecodes")                      \
1161                                                                             \
1162   product(double, PrintBytecodeHistogramCutoff, 0.01,                       \
1163           "Print cutoff for histogram of the executed bytecodes")           \
1164           range(0.0, 100.0)                                                 \
1165                                                                             \
1166   develop(bool, PrintBytecodePairHistogram, false,                          \
1167           "Print histogram of the executed bytecode pairs")                 \
1168                                                                             \
1169   product(bool, PrintSignatureHandlers, false, DIAGNOSTIC,                  \
1170           "Print code generated for native method signature handlers")      \
1171                                                                             \
1172   develop(bool, VerifyOops, false,                                          \
1173           "Do plausibility checks for oops")                                \
1174                                                                             \
1175   develop(bool, CheckUnhandledOops, false,                                  \
1176           "Check for unhandled oops in VM code")                            \
1177                                                                             \
1178   develop(bool, VerifyJNIFields, trueInDebug,                               \
1179           "Verify jfieldIDs for instance fields")                           \
1180                                                                             \
1181   develop(bool, VerifyFPU, false,                                           \
1182           "Verify FPU state (check for NaN's, etc.)")                       \
1183                                                                             \
1184   develop(bool, VerifyActivationFrameSize, false,                           \
1185           "Verify that activation frame didn't become smaller than its "    \
1186           "minimal size")                                                   \
1187                                                                             \
1188   develop(bool, TraceFrequencyInlining, false,                              \
1189           "Trace frequency based inlining")                                 \
1190                                                                             \
1191   develop_pd(bool, InlineIntrinsics,                                        \
1192           "Use intrinsics in Interpreter that can be statically resolved")  \
1193                                                                             \
1194   product_pd(bool, ProfileInterpreter,                                      \
1195           "Profile at the bytecode level during interpretation")            \
1196                                                                             \
1197   develop_pd(bool, ProfileTraps,                                            \
1198           "Profile deoptimization traps at the bytecode level")             \
1199                                                                             \
1200   product(intx, ProfileMaturityPercentage, 20,                              \
1201           "number of method invocations/branches (expressed as % of "       \
1202           "CompileThreshold) before using the method's profile")            \
1203           range(0, 100)                                                     \
1204                                                                             \
1205   product(bool, ForceProfiling, false, DIAGNOSTIC,                          \
1206           "Eagerly allocate MDOs")                                          \
1207                                                                             \
1208   product(bool, PrintMethodData, false, DIAGNOSTIC,                         \
1209           "Print the results of +ProfileInterpreter at end of run")         \
1210                                                                             \
1211   develop(bool, VerifyDataPointer, trueInDebug,                             \
1212           "Verify the method data pointer during interpreter profiling")    \
1213                                                                             \
1214   develop(bool, CrashGCForDumpingJavaThread, false,                         \
1215           "Manually make GC thread crash then dump java stack trace;  "     \
1216           "Test only")                                                      \
1217                                                                             \
1218   /* compilation */                                                         \
1219   product(bool, UseCompiler, true,                                          \
1220           "Use Just-In-Time compilation")                                   \
1221                                                                             \
1222   develop(intx, CounterHalfLifeTime,    30,                                 \
1223           "Half-life time of invocation counters (in seconds)")             \
1224                                                                             \
1225   product(bool, AlwaysCompileLoopMethods, false,                            \
1226           "When using recompilation, never interpret methods "              \
1227           "containing loops")                                               \

1730   product(bool, UsePerfData, true,                                          \
1731           "Flag to disable jvmstat instrumentation for performance testing "\
1732           "and problem isolation purposes")                                 \
1733                                                                             \
1734   product(bool, PerfDataSaveToFile, false,                                  \
1735           "Save PerfData memory to hsperfdata_<pid> file on exit")          \
1736                                                                             \
1737   product(ccstr, PerfDataSaveFile, nullptr,                                 \
1738           "Save PerfData memory to the specified absolute pathname. "       \
1739           "The string %p in the file name (if present) "                    \
1740           "will be replaced by pid")                                        \
1741                                                                             \
1742   product(int, PerfDataSamplingInterval, 50,                                \
1743           "Data sampling interval (in milliseconds)")                       \
1744           range(PeriodicTask::min_interval, max_jint)                       \
1745           constraint(PerfDataSamplingIntervalFunc, AfterErgo)               \
1746                                                                             \
1747   product(bool, PerfDisableSharedMem, false,                                \
1748           "Store performance data in standard memory")                      \
1749                                                                             \
1750   product(int, PerfDataMemorySize, 64*K,                                    \
1751           "Size of performance data memory region. Will be rounded "        \
1752           "up to a multiple of the native os page size.")                   \
1753           range(128, 32*64*K)                                               \
1754                                                                             \
1755   product(int, PerfMaxStringConstLength, 1024,                              \
1756           "Maximum PerfStringConstant string length before truncation")     \
1757           range(32, 32*K)                                                   \
1758                                                                             \
1759   product(bool, PerfAllowAtExitRegistration, false,                         \
1760           "Allow registration of atexit() methods")                         \
1761                                                                             \
1762   product(bool, PerfBypassFileSystemCheck, false,                           \
1763           "Bypass Win32 file system criteria checks (Windows Only)")        \
1764                                                                             \
1765   product(int, UnguardOnExecutionViolation, 0,                              \
1766           "Unguard page and retry on no-execute fault (Win32 only) "        \
1767           "0=off, 1=conservative, 2=aggressive")                            \
1768           range(0, 2)                                                       \
1769                                                                             \
1770   /* Serviceability Support */                                              \

1970                                                                             \
1971   develop(bool, VerifyCrossModifyFence,                                     \
1972           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1973              "Mark all threads after a safepoint, and clear on a modify "   \
1974              "fence. Add cleanliness checks.")                              \
1975                                                                             \
1976   product(int, LockingMode, LM_LIGHTWEIGHT,                                 \
1977           "Select locking mode: "                                           \
1978           "0: monitors only (LM_MONITOR), "                                 \
1979           "1: monitors & legacy stack-locking (LM_LEGACY), "                \
1980           "2: monitors & new lightweight locking (LM_LIGHTWEIGHT, default)") \
1981           range(0, 2)                                                       \
1982                                                                             \
1983   product(uint, TrimNativeHeapInterval, 0,                                  \
1984           "Interval, in ms, at which the JVM will trim the native heap if " \
1985           "the platform supports that. Lower values will reclaim memory "   \
1986           "more eagerly at the cost of higher overhead. A value of 0 "      \
1987           "(default) disables native heap trimming.")                       \
1988           range(0, UINT_MAX)                                                \
1989                                                                             \
1990   product(bool, ProfileVMLocks, false, DIAGNOSTIC,                          \
1991           "Profile VM locks usage on main thread")                          \
1992                                                                             \
1993   product(bool, ProfileVMCalls, false, DIAGNOSTIC,                          \
1994           "Profile VM calls on main thread")                                \
1995                                                                             \
1996   product(bool, ProfileVMOps, true, DIAGNOSTIC,                             \
1997           "Profile VM operations on main thread")                           \
1998                                                                             \
1999   product(bool, ProfileRuntimeCalls, false, DIAGNOSTIC,                     \
2000           "Profile calls into VM runtime on main thread")                   \
2001                                                                             \
2002   develop(bool, SimulateFullAddressSpace, false,                            \
2003           "Simulates a very populated, fragmented address space; no "       \
2004           "targeted reservations will succeed.")                            \
2005                                                                             \
2006   product(bool, ProfileExceptionHandlers, true,                             \
2007           "Profile exception handlers")                                     \
2008                                                                             \
2009   product(bool, AlwaysRecordEvolDependencies, true, EXPERIMENTAL,           \
2010                 "Unconditionally record nmethod dependencies on class "     \
2011                 "rewriting/transformation independently of the JVMTI "      \
2012                 "can_{retransform/redefine}_classes capabilities.")         \
2013                                                                             \
2014   product(bool, TraceThreadTime, false,                                     \
2015           "Enable tracing of thread time in Perf counters")                 \
2016                                                                             \
2017   product(bool, UseSecondarySupersCache, true, DIAGNOSTIC,                  \
2018                 "Use secondary supers cache during subtype checks.")        \
2019                                                                             \
2020   product(bool, UseSecondarySupersTable, false, DIAGNOSTIC,                 \
2021                 "Use hash table to lookup secondary supers.")               \
2022                                                                             \
2023   product(bool, VerifySecondarySupers, false, DIAGNOSTIC,                   \
2024           "Check that linear and hashed secondary lookups return the same result.") \
2025                                                                             \
2026   product(bool, StressSecondarySupers, false, DIAGNOSTIC,                   \
2027           "Use a terrible hash function in order to generate many collisions.") \
2028 
2029 
2030 // end of RUNTIME_FLAGS
2031 
2032 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
2033 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
2034 DECLARE_FLAGS(RUNTIME_FLAGS)
2035 DECLARE_FLAGS(RUNTIME_OS_FLAGS)
2036 
2037 #endif // SHARE_RUNTIME_GLOBALS_HPP
< prev index next >