< prev index next >

src/hotspot/share/runtime/globals.hpp

Print this page

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



























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

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



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

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




















1949   product(bool, DeoptimizeNMethodBarriersALot, false, DIAGNOSTIC,           \
1950                 "Make nmethod barriers deoptimise a lot.")                  \
1951                                                                             \
1952   develop(bool, VerifyCrossModifyFence,                                     \
1953           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
1954              "Mark all threads after a safepoint, and clear on a modify "   \
1955              "fence. Add cleanliness checks.")                              \
1956                                                                             \
1957   product(bool, UseObjectMonitorTable, false, DIAGNOSTIC,                   \
1958           "With Lightweight Locking mode, use a table to record inflated "  \
1959           "monitors rather than the first word of the object.")             \
1960                                                                             \
1961   product(int, LightweightFastLockingSpins, 13, DIAGNOSTIC,                 \
1962           "Specifies the number of times lightweight fast locking will "    \
1963           "attempt to CAS the markWord before inflating. Between each "     \
1964           "CAS it will spin for exponentially more time, resulting in "     \
1965           "a total number of spins on the order of O(2^value)")             \
1966           range(1, 30)                                                      \
1967                                                                             \
1968   product(uint, TrimNativeHeapInterval, 0,                                  \

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

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

1959           "On internal errors, include registers in error report.")         \
1960                                                                             \
1961   product(bool, UseSwitchProfiling, true, DIAGNOSTIC,                       \
1962           "leverage profiling for table/lookup switch")                     \
1963                                                                             \
1964   develop(bool, TraceMemoryWriteback, false,                                \
1965           "Trace memory writeback operations")                              \
1966                                                                             \
1967   JFR_ONLY(product(bool, FlightRecorder, false,                             \
1968           "(Deprecated) Enable Flight Recorder"))                           \
1969                                                                             \
1970   JFR_ONLY(product(ccstr, FlightRecorderOptions, nullptr,                   \
1971           "Flight Recorder options"))                                       \
1972                                                                             \
1973   JFR_ONLY(product(ccstr, StartFlightRecording, nullptr,                    \
1974           "Start flight recording with options"))                           \
1975                                                                             \
1976   product(bool, UseFastUnorderedTimeStamps, false, EXPERIMENTAL,            \
1977           "Use platform unstable time where supported for timestamps only") \
1978                                                                             \
1979   product(bool, EnableValhalla, true,                                       \
1980           "Enable experimental Valhalla features")                          \
1981                                                                             \
1982   product_pd(bool, InlineTypePassFieldsAsArgs,                              \
1983           "Pass each inline type field as an argument at calls")            \
1984                                                                             \
1985   product_pd(bool, InlineTypeReturnedAsFields,                              \
1986           "Return fields instead of an inline type reference")              \
1987                                                                             \
1988   develop(bool, StressCallingConvention, false,                             \
1989           "Stress the scalarized calling convention.")                      \
1990                                                                             \
1991   develop(bool, PreloadClasses, true,                                       \
1992           "Preloading all classes from the LoadableDescriptors attribute")  \
1993                                                                             \
1994   product(ccstrlist, ForceNonTearable, "", DIAGNOSTIC,                      \
1995           "List of inline classes which are forced to be atomic "           \
1996           "(whitespace and commas separate names, "                         \
1997           "and leading and trailing stars '*' are wildcards)")              \
1998                                                                             \
1999   product(bool, DeoptimizeNMethodBarriersALot, false, DIAGNOSTIC,           \
2000                 "Make nmethod barriers deoptimise a lot.")                  \
2001                                                                             \
2002   develop(bool, VerifyCrossModifyFence,                                     \
2003           false AARCH64_ONLY(DEBUG_ONLY(||true)),                           \
2004              "Mark all threads after a safepoint, and clear on a modify "   \
2005              "fence. Add cleanliness checks.")                              \
2006                                                                             \
2007   product(bool, UseObjectMonitorTable, false, DIAGNOSTIC,                   \
2008           "With Lightweight Locking mode, use a table to record inflated "  \
2009           "monitors rather than the first word of the object.")             \
2010                                                                             \
2011   product(int, LightweightFastLockingSpins, 13, DIAGNOSTIC,                 \
2012           "Specifies the number of times lightweight fast locking will "    \
2013           "attempt to CAS the markWord before inflating. Between each "     \
2014           "CAS it will spin for exponentially more time, resulting in "     \
2015           "a total number of spins on the order of O(2^value)")             \
2016           range(1, 30)                                                      \
2017                                                                             \
2018   product(uint, TrimNativeHeapInterval, 0,                                  \
< prev index next >