< prev index next >

src/hotspot/share/runtime/globals.hpp

Print this page

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
























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

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



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

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

















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

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

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

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