< prev index next >

src/hotspot/share/runtime/globals.hpp

Print this page

 788   product(bool, UseFastJNIAccessors, true,                                  \
 789           "Use optimized versions of Get<Primitive>Field")                  \
 790                                                                             \
 791   product(intx, MaxJNILocalCapacity, 65536,                                 \
 792           "Maximum allowable local JNI handle capacity to "                 \
 793           "EnsureLocalCapacity() and PushLocalFrame(), "                    \
 794           "where <= 0 is unlimited, default: 65536")                        \
 795           range(min_intx, max_intx)                                         \
 796                                                                             \
 797   product(bool, EagerXrunInit, false,                                       \
 798           "Eagerly initialize -Xrun libraries; allows startup profiling, "  \
 799           "but not all -Xrun libraries may support the state of the VM "    \
 800           "at this time")                                                   \
 801                                                                             \
 802   develop(uintx, PreallocatedOutOfMemoryErrorCount, 4,                      \
 803           "Number of OutOfMemoryErrors preallocated with backtrace")        \
 804                                                                             \
 805   product(bool, UseXMMForArrayCopy, false,                                  \
 806           "Use SSE2 MOVQ instruction for Arraycopy")                        \
 807                                                                             \
 808   develop(bool, PrintFieldLayout, false,                                    \
 809           "Print field layout for each class")                              \
 810                                                                             \
























 811   /* Need to limit the extent of the padding to reasonable size.          */\
 812   /* 8K is well beyond the reasonable HW cache line size, even with       */\
 813   /* aggressive prefetching, while still leaving the room for segregating */\
 814   /* among the distinct pages.                                            */\
 815   product(int, ContendedPaddingWidth, 128,                                  \
 816           "How many bytes to pad the fields/classes marked @Contended with")\
 817           range(0, 8192)                                                    \
 818           constraint(ContendedPaddingWidthConstraintFunc,AfterErgo)         \
 819                                                                             \
 820   product(bool, EnableContended, true,                                      \
 821           "Enable @Contended annotation support")                           \
 822                                                                             \
 823   product(bool, RestrictContended, true,                                    \
 824           "Restrict @Contended to trusted classes")                         \
 825                                                                             \
 826   product(int, DiagnoseSyncOnValueBasedClasses, 0, DIAGNOSTIC,              \
 827              "Detect and take action upon identifying synchronization on "  \
 828              "value based classes. Modes: "                                 \
 829              "0: off; "                                                     \
 830              "1: exit with fatal error; "                                   \

1754           "Create JMX Management Server")                                   \
1755                                                                             \
1756   product(bool, DisableAttachMechanism, false,                              \
1757           "Disable mechanism that allows tools to attach to this VM")       \
1758                                                                             \
1759   product(bool, StartAttachListener, false,                                 \
1760           "Always start Attach Listener at VM startup")                     \
1761                                                                             \
1762   product(bool, EnableDynamicAgentLoading, true,                            \
1763           "Allow tools to load agents with the attach mechanism")           \
1764                                                                             \
1765   product(bool, PrintConcurrentLocks, false, MANAGEABLE,                    \
1766           "Print java.util.concurrent locks in thread dump")                \
1767                                                                             \
1768   product(bool, PrintMethodHandleStubs, false, DIAGNOSTIC,                  \
1769           "Print generated stub code for method handles")                   \
1770                                                                             \
1771   product(bool, VerifyMethodHandles, trueInDebug, DIAGNOSTIC,               \
1772           "perform extra checks when constructing method handles")          \
1773                                                                             \



1774   product(bool, ShowHiddenFrames, false, DIAGNOSTIC,                        \
1775           "show method handle implementation frames (usually hidden)")      \
1776                                                                             \
1777   product(bool, ShowCarrierFrames, false, DIAGNOSTIC,                       \
1778           "show virtual threads' carrier frames in exceptions")             \
1779                                                                             \
1780   product(bool, TrustFinalNonStaticFields, false, EXPERIMENTAL,             \
1781           "trust final non-static declarations for constant folding")       \
1782                                                                             \
1783   product(bool, FoldStableValues, true, DIAGNOSTIC,                         \
1784           "Optimize loads from stable fields (marked w/ @Stable)")          \
1785                                                                             \
1786   product(int, UseBootstrapCallInfo, 1, DIAGNOSTIC,                         \
1787           "0: when resolving InDy or ConDy, force all BSM arguments to be " \
1788           "resolved before the bootstrap method is called; 1: when a BSM "  \
1789           "that may accept a BootstrapCallInfo is detected, use that API "  \
1790           "to pass BSM arguments, which allows the BSM to delay their "     \
1791           "resolution; 2+: stress test the BCI API by calling more BSMs "   \
1792           "via that API, instead of with the eagerly-resolved array.")      \
1793                                                                             \

1925           "On internal errors, include registers in error report.")         \
1926                                                                             \
1927   product(bool, UseSwitchProfiling, true, DIAGNOSTIC,                       \
1928           "leverage profiling for table/lookup switch")                     \
1929                                                                             \
1930   develop(bool, TraceMemoryWriteback, false,                                \
1931           "Trace memory writeback operations")                              \
1932                                                                             \
1933   JFR_ONLY(product(bool, FlightRecorder, false,                             \
1934           "(Deprecated) Enable Flight Recorder"))                           \
1935                                                                             \
1936   JFR_ONLY(product(ccstr, FlightRecorderOptions, nullptr,                   \
1937           "Flight Recorder options"))                                       \
1938                                                                             \
1939   JFR_ONLY(product(ccstr, StartFlightRecording, nullptr,                    \
1940           "Start flight recording with options"))                           \
1941                                                                             \
1942   product(bool, UseFastUnorderedTimeStamps, false, EXPERIMENTAL,            \
1943           "Use platform unstable time where supported for timestamps only") \
1944                                                                             \

















1945   product(bool, DeoptimizeNMethodBarriersALot, false, DIAGNOSTIC,           \
1946                 "Make nmethod barriers deoptimise a lot.")                  \
1947                                                                             \
1948   develop(bool, VerifyCrossModifyFence,                                     \
1949           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1950              "Mark all threads after a safepoint, and clear on a modify "   \
1951              "fence. Add cleanliness checks.")                              \
1952                                                                             \
1953   product(int, LockingMode, LM_LIGHTWEIGHT,                                 \
1954           "(Deprecated) Select locking mode: "                              \
1955           "0: (Deprecated) monitors only (LM_MONITOR), "                    \
1956           "1: (Deprecated) monitors & legacy stack-locking (LM_LEGACY), "   \
1957           "2: monitors & new lightweight locking (LM_LIGHTWEIGHT, default)") \
1958           range(0, 2)                                                       \
1959                                                                             \
1960   product(bool, UseObjectMonitorTable, false, DIAGNOSTIC,                   \
1961           "With Lightweight Locking mode, use a table to record inflated "  \
1962           "monitors rather than the first word of the object.")             \
1963                                                                             \
1964   product(int, LightweightFastLockingSpins, 13, DIAGNOSTIC,                 \

 788   product(bool, UseFastJNIAccessors, true,                                  \
 789           "Use optimized versions of Get<Primitive>Field")                  \
 790                                                                             \
 791   product(intx, MaxJNILocalCapacity, 65536,                                 \
 792           "Maximum allowable local JNI handle capacity to "                 \
 793           "EnsureLocalCapacity() and PushLocalFrame(), "                    \
 794           "where <= 0 is unlimited, default: 65536")                        \
 795           range(min_intx, max_intx)                                         \
 796                                                                             \
 797   product(bool, EagerXrunInit, false,                                       \
 798           "Eagerly initialize -Xrun libraries; allows startup profiling, "  \
 799           "but not all -Xrun libraries may support the state of the VM "    \
 800           "at this time")                                                   \
 801                                                                             \
 802   develop(uintx, PreallocatedOutOfMemoryErrorCount, 4,                      \
 803           "Number of OutOfMemoryErrors preallocated with backtrace")        \
 804                                                                             \
 805   product(bool, UseXMMForArrayCopy, false,                                  \
 806           "Use SSE2 MOVQ instruction for Arraycopy")                        \
 807                                                                             \
 808   product(bool, PrintFieldLayout, false, DIAGNOSTIC,                        \
 809           "Print field layout for each class")                              \
 810                                                                             \
 811   product(bool, PrintInlineLayout, false, DIAGNOSTIC,                       \
 812           "Print field layout for each inline type or class with inline fields") \
 813                                                                             \
 814   product(bool, PrintFlatArrayLayout, false, DIAGNOSTIC,                    \
 815           "Print array layout for each inline type array")                  \
 816                                                                             \
 817   product(bool, UseArrayFlattening, true,                                   \
 818           "Allow the VM to flatten arrays")                                 \
 819                                                                             \
 820   product(bool, UseFieldFlattening, true,                                   \
 821           "Allow the VM to flatten value fields")                           \
 822                                                                             \
 823   product(bool, UseNonAtomicValueFlattening, true,                          \
 824           "Allow the JVM to flatten some non-atomic null-free values")      \
 825                                                                             \
 826   product(bool, UseNullableValueFlattening, false,                          \
 827           "Allow the JVM to flatten some nullable values")                  \
 828                                                                             \
 829   product(bool, UseAtomicValueFlattening, false,                            \
 830           "Allow the JVM to flatten some atomic values")                    \
 831                                                                             \
 832   product(intx, FlatArrayElementMaxOops, 4,                                 \
 833           "Max nof embedded object references in an inline type to flatten, <0 no limit")  \
 834                                                                             \
 835   /* Need to limit the extent of the padding to reasonable size.          */\
 836   /* 8K is well beyond the reasonable HW cache line size, even with       */\
 837   /* aggressive prefetching, while still leaving the room for segregating */\
 838   /* among the distinct pages.                                            */\
 839   product(int, ContendedPaddingWidth, 128,                                  \
 840           "How many bytes to pad the fields/classes marked @Contended with")\
 841           range(0, 8192)                                                    \
 842           constraint(ContendedPaddingWidthConstraintFunc,AfterErgo)         \
 843                                                                             \
 844   product(bool, EnableContended, true,                                      \
 845           "Enable @Contended annotation support")                           \
 846                                                                             \
 847   product(bool, RestrictContended, true,                                    \
 848           "Restrict @Contended to trusted classes")                         \
 849                                                                             \
 850   product(int, DiagnoseSyncOnValueBasedClasses, 0, DIAGNOSTIC,              \
 851              "Detect and take action upon identifying synchronization on "  \
 852              "value based classes. Modes: "                                 \
 853              "0: off; "                                                     \
 854              "1: exit with fatal error; "                                   \

1778           "Create JMX Management Server")                                   \
1779                                                                             \
1780   product(bool, DisableAttachMechanism, false,                              \
1781           "Disable mechanism that allows tools to attach to this VM")       \
1782                                                                             \
1783   product(bool, StartAttachListener, false,                                 \
1784           "Always start Attach Listener at VM startup")                     \
1785                                                                             \
1786   product(bool, EnableDynamicAgentLoading, true,                            \
1787           "Allow tools to load agents with the attach mechanism")           \
1788                                                                             \
1789   product(bool, PrintConcurrentLocks, false, MANAGEABLE,                    \
1790           "Print java.util.concurrent locks in thread dump")                \
1791                                                                             \
1792   product(bool, PrintMethodHandleStubs, false, DIAGNOSTIC,                  \
1793           "Print generated stub code for method handles")                   \
1794                                                                             \
1795   product(bool, VerifyMethodHandles, trueInDebug, DIAGNOSTIC,               \
1796           "perform extra checks when constructing method handles")          \
1797                                                                             \
1798   product(bool, IgnoreAssertUnsetFields, false, DIAGNOSTIC,                           \
1799           "Ignore assert_unset_fields")                                     \
1800                                                                             \
1801   product(bool, ShowHiddenFrames, false, DIAGNOSTIC,                        \
1802           "show method handle implementation frames (usually hidden)")      \
1803                                                                             \
1804   product(bool, ShowCarrierFrames, false, DIAGNOSTIC,                       \
1805           "show virtual threads' carrier frames in exceptions")             \
1806                                                                             \
1807   product(bool, TrustFinalNonStaticFields, false, EXPERIMENTAL,             \
1808           "trust final non-static declarations for constant folding")       \
1809                                                                             \
1810   product(bool, FoldStableValues, true, DIAGNOSTIC,                         \
1811           "Optimize loads from stable fields (marked w/ @Stable)")          \
1812                                                                             \
1813   product(int, UseBootstrapCallInfo, 1, DIAGNOSTIC,                         \
1814           "0: when resolving InDy or ConDy, force all BSM arguments to be " \
1815           "resolved before the bootstrap method is called; 1: when a BSM "  \
1816           "that may accept a BootstrapCallInfo is detected, use that API "  \
1817           "to pass BSM arguments, which allows the BSM to delay their "     \
1818           "resolution; 2+: stress test the BCI API by calling more BSMs "   \
1819           "via that API, instead of with the eagerly-resolved array.")      \
1820                                                                             \

1952           "On internal errors, include registers in error report.")         \
1953                                                                             \
1954   product(bool, UseSwitchProfiling, true, DIAGNOSTIC,                       \
1955           "leverage profiling for table/lookup switch")                     \
1956                                                                             \
1957   develop(bool, TraceMemoryWriteback, false,                                \
1958           "Trace memory writeback operations")                              \
1959                                                                             \
1960   JFR_ONLY(product(bool, FlightRecorder, false,                             \
1961           "(Deprecated) Enable Flight Recorder"))                           \
1962                                                                             \
1963   JFR_ONLY(product(ccstr, FlightRecorderOptions, nullptr,                   \
1964           "Flight Recorder options"))                                       \
1965                                                                             \
1966   JFR_ONLY(product(ccstr, StartFlightRecording, nullptr,                    \
1967           "Start flight recording with options"))                           \
1968                                                                             \
1969   product(bool, UseFastUnorderedTimeStamps, false, EXPERIMENTAL,            \
1970           "Use platform unstable time where supported for timestamps only") \
1971                                                                             \
1972   product(bool, EnableValhalla, true,                                       \
1973           "Enable experimental Valhalla features")                          \
1974                                                                             \
1975   product_pd(bool, InlineTypePassFieldsAsArgs,                              \
1976           "Pass each inline type field as an argument at calls")            \
1977                                                                             \
1978   product_pd(bool, InlineTypeReturnedAsFields,                              \
1979           "Return fields instead of an inline type reference")              \
1980                                                                             \
1981   develop(bool, StressCallingConvention, false,                             \
1982           "Stress the scalarized calling convention.")                      \
1983                                                                             \
1984   product(ccstrlist, ForceNonTearable, "", DIAGNOSTIC,                      \
1985           "List of inline classes which are forced to be atomic "           \
1986           "(whitespace and commas separate names, "                         \
1987           "and leading and trailing stars '*' are wildcards)")              \
1988                                                                             \
1989   product(bool, DeoptimizeNMethodBarriersALot, false, DIAGNOSTIC,           \
1990                 "Make nmethod barriers deoptimise a lot.")                  \
1991                                                                             \
1992   develop(bool, VerifyCrossModifyFence,                                     \
1993           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1994              "Mark all threads after a safepoint, and clear on a modify "   \
1995              "fence. Add cleanliness checks.")                              \
1996                                                                             \
1997   product(int, LockingMode, LM_LIGHTWEIGHT,                                 \
1998           "(Deprecated) Select locking mode: "                              \
1999           "0: (Deprecated) monitors only (LM_MONITOR), "                    \
2000           "1: (Deprecated) monitors & legacy stack-locking (LM_LEGACY), "   \
2001           "2: monitors & new lightweight locking (LM_LIGHTWEIGHT, default)") \
2002           range(0, 2)                                                       \
2003                                                                             \
2004   product(bool, UseObjectMonitorTable, false, DIAGNOSTIC,                   \
2005           "With Lightweight Locking mode, use a table to record inflated "  \
2006           "monitors rather than the first word of the object.")             \
2007                                                                             \
2008   product(int, LightweightFastLockingSpins, 13, DIAGNOSTIC,                 \
< prev index next >