< prev index next >

src/hotspot/share/runtime/globals.hpp

Print this page

1029           "Print all VM flags after argument and ergonomic processing")     \
1030                                                                             \
1031   notproduct(bool, PrintFlagsWithComments, false,                           \
1032           "Print all VM flags with default values and descriptions and "    \
1033           "exit")                                                           \
1034                                                                             \
1035   product(bool, PrintFlagsRanges, false,                                    \
1036           "Print VM flags and their ranges")                                \
1037                                                                             \
1038   product(bool, SerializeVMOutput, true, DIAGNOSTIC,                        \
1039           "Use a mutex to serialize output to tty and LogFile")             \
1040                                                                             \
1041   product(bool, DisplayVMOutput, true, DIAGNOSTIC,                          \
1042           "Display all VM output on the tty, independently of LogVMOutput") \
1043                                                                             \
1044   product(bool, LogVMOutput, false, DIAGNOSTIC,                             \
1045           "Save VM output to LogFile")                                      \
1046                                                                             \
1047   product(ccstr, LogFile, nullptr, DIAGNOSTIC,                              \
1048           "If LogVMOutput or LogCompilation is on, save VM output to "      \
1049           "this file [default: ./hotspot_pid%p.log] (%p replaced with pid)")\
1050                                                                             \
1051   product(ccstr, ErrorFile, nullptr,                                        \
1052           "If an error occurs, save the error data to this file "           \
1053           "[default: ./hs_err_pid%p.log] (%p replaced with pid)")           \
1054                                                                             \
1055   product(bool, ExtensiveErrorReports,                                      \
1056           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
1057           "Error reports are more extensive.")                              \
1058                                                                             \
1059   product(bool, DisplayVMOutputToStderr, false,                             \
1060           "If DisplayVMOutput is true, display all VM output to stderr")    \
1061                                                                             \
1062   product(bool, DisplayVMOutputToStdout, false,                             \
1063           "If DisplayVMOutput is true, display all VM output to stdout")    \
1064                                                                             \
1065   product(bool, ErrorFileToStderr, false,                                   \
1066           "If true, error data is printed to stderr instead of a file")     \
1067                                                                             \
1068   product(bool, ErrorFileToStdout, false,                                   \
1069           "If true, error data is printed to stdout instead of a file")     \
1070                                                                             \
1071   develop(bool, VerifyHeavyMonitors, false,                                 \
1072           "Checks that no stack locking happens when using "                \
1073           "-XX:LockingMode=0 (LM_MONITOR)")                                 \

1153   product(bool, UseInterpreter, true,                                       \
1154           "Use interpreter for non-compiled methods")                       \
1155                                                                             \
1156   develop(bool, UseFastSignatureHandlers, true,                             \
1157           "Use fast signature handlers for native calls")                   \
1158                                                                             \
1159   product(bool, UseLoopCounter, true,                                       \
1160           "Increment invocation counter on backward branch")                \
1161                                                                             \
1162   product_pd(bool, UseOnStackReplacement,                                   \
1163           "Use on stack replacement, calls runtime if invoc. counter "      \
1164           "overflows in loop")                                              \
1165                                                                             \
1166   notproduct(bool, TraceOnStackReplacement, false,                          \
1167           "Trace on stack replacement")                                     \
1168                                                                             \
1169   product_pd(bool, PreferInterpreterNativeStubs,                            \
1170           "Use always interpreter stubs for native methods invoked via "    \
1171           "interpreter")                                                    \
1172                                                                             \
1173   develop(bool, CountBytecodes, false,                                      \
1174           "Count number of bytecodes executed")                             \
1175                                                                             \
1176   develop(bool, PrintBytecodeHistogram, false,                              \



1177           "Print histogram of the executed bytecodes")                      \
1178                                                                             \




1179   develop(bool, PrintBytecodePairHistogram, false,                          \
1180           "Print histogram of the executed bytecode pairs")                 \
1181                                                                             \
1182   product(bool, PrintSignatureHandlers, false, DIAGNOSTIC,                  \
1183           "Print code generated for native method signature handlers")      \
1184                                                                             \
1185   develop(bool, VerifyOops, false,                                          \
1186           "Do plausibility checks for oops")                                \
1187                                                                             \
1188   develop(bool, CheckUnhandledOops, false,                                  \
1189           "Check for unhandled oops in VM code")                            \
1190                                                                             \
1191   develop(bool, VerifyJNIFields, trueInDebug,                               \
1192           "Verify jfieldIDs for instance fields")                           \
1193                                                                             \
1194   develop(bool, VerifyFPU, false,                                           \
1195           "Verify FPU state (check for NaN's, etc.)")                       \
1196                                                                             \
1197   develop(bool, VerifyActivationFrameSize, false,                           \
1198           "Verify that activation frame didn't become smaller than its "    \
1199           "minimal size")                                                   \
1200                                                                             \
1201   develop(bool, TraceFrequencyInlining, false,                              \
1202           "Trace frequency based inlining")                                 \
1203                                                                             \
1204   develop_pd(bool, InlineIntrinsics,                                        \
1205           "Use intrinsics in Interpreter that can be statically resolved")  \
1206                                                                             \
1207   product_pd(bool, ProfileInterpreter,                                      \
1208           "Profile at the bytecode level during interpretation")            \
1209                                                                             \
1210   develop_pd(bool, ProfileTraps,                                            \
1211           "Profile deoptimization traps at the bytecode level")             \
1212                                                                             \
1213   product(intx, ProfileMaturityPercentage, 20,                              \
1214           "number of method invocations/branches (expressed as % of "       \
1215           "CompileThreshold) before using the method's profile")            \
1216           range(0, 100)                                                     \
1217                                                                             \



1218   product(bool, PrintMethodData, false, DIAGNOSTIC,                         \
1219           "Print the results of +ProfileInterpreter at end of run")         \
1220                                                                             \
1221   develop(bool, VerifyDataPointer, trueInDebug,                             \
1222           "Verify the method data pointer during interpreter profiling")    \
1223                                                                             \
1224   notproduct(bool, CrashGCForDumpingJavaThread, false,                      \
1225           "Manually make GC thread crash then dump java stack trace;  "     \
1226           "Test only")                                                      \
1227                                                                             \
1228   /* compilation */                                                         \
1229   product(bool, UseCompiler, true,                                          \
1230           "Use Just-In-Time compilation")                                   \
1231                                                                             \
1232   develop(intx, CounterHalfLifeTime,    30,                                 \
1233           "Half-life time of invocation counters (in seconds)")             \
1234                                                                             \
1235   product(bool, AlwaysCompileLoopMethods, false,                            \
1236           "When using recompilation, never interpret methods "              \
1237           "containing loops")                                               \

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

1977                                                                             \
1978   develop(bool, VerifyCrossModifyFence,                                     \
1979           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1980              "Mark all threads after a safepoint, and clear on a modify "   \
1981              "fence. Add cleanliness checks.")                              \
1982                                                                             \
1983   product(int, LockingMode, LM_LEGACY,                                      \
1984           "Select locking mode: "                                           \
1985           "0: monitors only (LM_MONITOR), "                                 \
1986           "1: monitors & legacy stack-locking (LM_LEGACY, default), "       \
1987           "2: monitors & new lightweight locking (LM_LIGHTWEIGHT)")         \
1988           range(0, 2)                                                       \
1989                                                                             \
1990   product(uint, TrimNativeHeapInterval, 0, EXPERIMENTAL,                    \
1991           "Interval, in ms, at which the JVM will trim the native heap if " \
1992           "the platform supports that. Lower values will reclaim memory "   \
1993           "more eagerly at the cost of higher overhead. A value of 0 "      \
1994           "(default) disables native heap trimming.")                       \
1995           range(0, UINT_MAX)                                                \
1996                                                                             \












1997   develop(bool, SimulateFullAddressSpace, false,                            \
1998           "Simulates a very populated, fragmented address space; no "       \
1999           "targeted reservations will succeed.")                            \
2000                                                                             \
2001   product(bool, ProfileExceptionHandlers, true,                             \
2002           "Profile exception handlers")                                     \
2003                                                                             \
2004   product(bool, AlwaysRecordEvolDependencies, true, EXPERIMENTAL,           \
2005                 "Unconditionally record nmethod dependencies on class "     \
2006                 "rewriting/transformation independently of the JVMTI "      \
2007                 "can_{retransform/redefine}_classes capabilities.")         \
2008 
2009 // end of RUNTIME_FLAGS
2010 
2011 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
2012 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
2013 DECLARE_FLAGS(RUNTIME_FLAGS)
2014 DECLARE_FLAGS(RUNTIME_OS_FLAGS)
2015 
2016 #endif // SHARE_RUNTIME_GLOBALS_HPP

1029           "Print all VM flags after argument and ergonomic processing")     \
1030                                                                             \
1031   notproduct(bool, PrintFlagsWithComments, false,                           \
1032           "Print all VM flags with default values and descriptions and "    \
1033           "exit")                                                           \
1034                                                                             \
1035   product(bool, PrintFlagsRanges, false,                                    \
1036           "Print VM flags and their ranges")                                \
1037                                                                             \
1038   product(bool, SerializeVMOutput, true, DIAGNOSTIC,                        \
1039           "Use a mutex to serialize output to tty and LogFile")             \
1040                                                                             \
1041   product(bool, DisplayVMOutput, true, DIAGNOSTIC,                          \
1042           "Display all VM output on the tty, independently of LogVMOutput") \
1043                                                                             \
1044   product(bool, LogVMOutput, false, DIAGNOSTIC,                             \
1045           "Save VM output to LogFile")                                      \
1046                                                                             \
1047   product(ccstr, LogFile, nullptr, DIAGNOSTIC,                              \
1048           "If LogVMOutput or LogCompilation is on, save VM output to "      \
1049           "this file [default: ./hotspot_%p.log] (%p replaced with pidNNN)")\
1050                                                                             \
1051   product(ccstr, ErrorFile, nullptr,                                        \
1052           "If an error occurs, save the error data to this file "           \
1053           "[default: ./hs_err_%p.log] (%p replaced with pidNNN)")           \
1054                                                                             \
1055   product(bool, ExtensiveErrorReports,                                      \
1056           PRODUCT_ONLY(false) NOT_PRODUCT(true),                            \
1057           "Error reports are more extensive.")                              \
1058                                                                             \
1059   product(bool, DisplayVMOutputToStderr, false,                             \
1060           "If DisplayVMOutput is true, display all VM output to stderr")    \
1061                                                                             \
1062   product(bool, DisplayVMOutputToStdout, false,                             \
1063           "If DisplayVMOutput is true, display all VM output to stdout")    \
1064                                                                             \
1065   product(bool, ErrorFileToStderr, false,                                   \
1066           "If true, error data is printed to stderr instead of a file")     \
1067                                                                             \
1068   product(bool, ErrorFileToStdout, false,                                   \
1069           "If true, error data is printed to stdout instead of a file")     \
1070                                                                             \
1071   develop(bool, VerifyHeavyMonitors, false,                                 \
1072           "Checks that no stack locking happens when using "                \
1073           "-XX:LockingMode=0 (LM_MONITOR)")                                 \

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

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

1987                                                                             \
1988   develop(bool, VerifyCrossModifyFence,                                     \
1989           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1990              "Mark all threads after a safepoint, and clear on a modify "   \
1991              "fence. Add cleanliness checks.")                              \
1992                                                                             \
1993   product(int, LockingMode, LM_LEGACY,                                      \
1994           "Select locking mode: "                                           \
1995           "0: monitors only (LM_MONITOR), "                                 \
1996           "1: monitors & legacy stack-locking (LM_LEGACY, default), "       \
1997           "2: monitors & new lightweight locking (LM_LIGHTWEIGHT)")         \
1998           range(0, 2)                                                       \
1999                                                                             \
2000   product(uint, TrimNativeHeapInterval, 0, EXPERIMENTAL,                    \
2001           "Interval, in ms, at which the JVM will trim the native heap if " \
2002           "the platform supports that. Lower values will reclaim memory "   \
2003           "more eagerly at the cost of higher overhead. A value of 0 "      \
2004           "(default) disables native heap trimming.")                       \
2005           range(0, UINT_MAX)                                                \
2006                                                                             \
2007   product(bool, ProfileVMLocks, false, DIAGNOSTIC,                          \
2008           "Profile VM locks usage on main thread")                          \
2009                                                                             \
2010   product(bool, ProfileVMCalls, false, DIAGNOSTIC,                          \
2011           "Profile VM calls on main thread")                                \
2012                                                                             \
2013   product(bool, ProfileVMOps, true, DIAGNOSTIC,                             \
2014           "Profile VM operations on main thread")                           \
2015                                                                             \
2016   product(bool, ProfileRuntimeCalls, false, DIAGNOSTIC,                     \
2017           "Profile calls into VM runtime on main thread")                   \
2018                                                                             \
2019   develop(bool, SimulateFullAddressSpace, false,                            \
2020           "Simulates a very populated, fragmented address space; no "       \
2021           "targeted reservations will succeed.")                            \
2022                                                                             \
2023   product(bool, ProfileExceptionHandlers, true,                             \
2024           "Profile exception handlers")                                     \
2025                                                                             \
2026   product(bool, AlwaysRecordEvolDependencies, true, EXPERIMENTAL,           \
2027                 "Unconditionally record nmethod dependencies on class "     \
2028                 "rewriting/transformation independently of the JVMTI "      \
2029                 "can_{retransform/redefine}_classes capabilities.")         \
2030 
2031 // end of RUNTIME_FLAGS
2032 
2033 DECLARE_FLAGS(LP64_RUNTIME_FLAGS)
2034 DECLARE_ARCH_FLAGS(ARCH_FLAGS)
2035 DECLARE_FLAGS(RUNTIME_FLAGS)
2036 DECLARE_FLAGS(RUNTIME_OS_FLAGS)
2037 
2038 #endif // SHARE_RUNTIME_GLOBALS_HPP
< prev index next >