Mercurial > hg > graal-jvmci-8
comparison src/share/vm/runtime/globals.hpp @ 14909:4ca6dc0799b6
Backout jdk9 merge
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Tue, 01 Apr 2014 13:57:07 +0200 |
parents | d8041d695d19 |
children | 8638307944be |
comparison
equal
deleted
inserted
replaced
14908:8db6e76cb658 | 14909:4ca6dc0799b6 |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
59 # include "globals_solaris.hpp" | 59 # include "globals_solaris.hpp" |
60 #endif | 60 #endif |
61 #ifdef TARGET_OS_FAMILY_windows | 61 #ifdef TARGET_OS_FAMILY_windows |
62 # include "globals_windows.hpp" | 62 # include "globals_windows.hpp" |
63 #endif | 63 #endif |
64 #ifdef TARGET_OS_FAMILY_aix | |
65 # include "globals_aix.hpp" | |
66 #endif | |
67 #ifdef TARGET_OS_FAMILY_bsd | 64 #ifdef TARGET_OS_FAMILY_bsd |
68 # include "globals_bsd.hpp" | 65 # include "globals_bsd.hpp" |
69 #endif | 66 #endif |
70 #ifdef TARGET_OS_ARCH_linux_x86 | 67 #ifdef TARGET_OS_ARCH_linux_x86 |
71 # include "globals_linux_x86.hpp" | 68 # include "globals_linux_x86.hpp" |
88 #ifdef TARGET_OS_ARCH_linux_arm | 85 #ifdef TARGET_OS_ARCH_linux_arm |
89 # include "globals_linux_arm.hpp" | 86 # include "globals_linux_arm.hpp" |
90 #endif | 87 #endif |
91 #ifdef TARGET_OS_ARCH_linux_ppc | 88 #ifdef TARGET_OS_ARCH_linux_ppc |
92 # include "globals_linux_ppc.hpp" | 89 # include "globals_linux_ppc.hpp" |
93 #endif | |
94 #ifdef TARGET_OS_ARCH_aix_ppc | |
95 # include "globals_aix_ppc.hpp" | |
96 #endif | 90 #endif |
97 #ifdef TARGET_OS_ARCH_bsd_x86 | 91 #ifdef TARGET_OS_ARCH_bsd_x86 |
98 # include "globals_bsd_x86.hpp" | 92 # include "globals_bsd_x86.hpp" |
99 #endif | 93 #endif |
100 #ifdef TARGET_OS_ARCH_bsd_zero | 94 #ifdef TARGET_OS_ARCH_bsd_zero |
119 #ifdef TARGET_OS_FAMILY_solaris | 113 #ifdef TARGET_OS_FAMILY_solaris |
120 # include "c1_globals_solaris.hpp" | 114 # include "c1_globals_solaris.hpp" |
121 #endif | 115 #endif |
122 #ifdef TARGET_OS_FAMILY_windows | 116 #ifdef TARGET_OS_FAMILY_windows |
123 # include "c1_globals_windows.hpp" | 117 # include "c1_globals_windows.hpp" |
124 #endif | |
125 #ifdef TARGET_OS_FAMILY_aix | |
126 # include "c1_globals_aix.hpp" | |
127 #endif | 118 #endif |
128 #ifdef TARGET_OS_FAMILY_bsd | 119 #ifdef TARGET_OS_FAMILY_bsd |
129 # include "c1_globals_bsd.hpp" | 120 # include "c1_globals_bsd.hpp" |
130 #endif | 121 #endif |
131 #endif | 122 #endif |
151 # include "c2_globals_sparc.hpp" | 142 # include "c2_globals_sparc.hpp" |
152 #endif | 143 #endif |
153 #ifdef TARGET_ARCH_arm | 144 #ifdef TARGET_ARCH_arm |
154 # include "c2_globals_arm.hpp" | 145 # include "c2_globals_arm.hpp" |
155 #endif | 146 #endif |
156 #ifdef TARGET_ARCH_ppc | |
157 # include "c2_globals_ppc.hpp" | |
158 #endif | |
159 #ifdef TARGET_OS_FAMILY_linux | 147 #ifdef TARGET_OS_FAMILY_linux |
160 # include "c2_globals_linux.hpp" | 148 # include "c2_globals_linux.hpp" |
161 #endif | 149 #endif |
162 #ifdef TARGET_OS_FAMILY_solaris | 150 #ifdef TARGET_OS_FAMILY_solaris |
163 # include "c2_globals_solaris.hpp" | 151 # include "c2_globals_solaris.hpp" |
164 #endif | 152 #endif |
165 #ifdef TARGET_OS_FAMILY_windows | 153 #ifdef TARGET_OS_FAMILY_windows |
166 # include "c2_globals_windows.hpp" | 154 # include "c2_globals_windows.hpp" |
167 #endif | |
168 #ifdef TARGET_OS_FAMILY_aix | |
169 # include "c2_globals_aix.hpp" | |
170 #endif | 155 #endif |
171 #ifdef TARGET_OS_FAMILY_bsd | 156 #ifdef TARGET_OS_FAMILY_bsd |
172 # include "c2_globals_bsd.hpp" | 157 # include "c2_globals_bsd.hpp" |
173 #endif | 158 #endif |
174 #endif | 159 #endif |
194 define_pd_global(intx, BackEdgeThreshold, 0); | 179 define_pd_global(intx, BackEdgeThreshold, 0); |
195 | 180 |
196 define_pd_global(intx, OnStackReplacePercentage, 0); | 181 define_pd_global(intx, OnStackReplacePercentage, 0); |
197 define_pd_global(bool, ResizeTLAB, false); | 182 define_pd_global(bool, ResizeTLAB, false); |
198 define_pd_global(intx, FreqInlineSize, 0); | 183 define_pd_global(intx, FreqInlineSize, 0); |
184 define_pd_global(intx, InlineSmallCode, 0); | |
199 define_pd_global(intx, NewSizeThreadIncrease, 4*K); | 185 define_pd_global(intx, NewSizeThreadIncrease, 4*K); |
200 define_pd_global(intx, InlineClassNatives, true); | 186 define_pd_global(intx, InlineClassNatives, true); |
201 define_pd_global(intx, InlineUnsafeOps, true); | 187 define_pd_global(intx, InlineUnsafeOps, true); |
202 define_pd_global(intx, InitialCodeCacheSize, 160*K); | 188 define_pd_global(intx, InitialCodeCacheSize, 160*K); |
203 define_pd_global(intx, ReservedCodeCacheSize, 32*M); | 189 define_pd_global(intx, ReservedCodeCacheSize, 32*M); |
268 static Flag* flags; | 254 static Flag* flags; |
269 | 255 |
270 // number of flags | 256 // number of flags |
271 static size_t numFlags; | 257 static size_t numFlags; |
272 | 258 |
273 static Flag* find_flag(const char* name, size_t length, bool allow_locked = false, bool return_flag = false); | 259 static Flag* find_flag(const char* name, size_t length, bool allow_locked = false); |
274 static Flag* fuzzy_match(const char* name, size_t length, bool allow_locked = false); | 260 static Flag* fuzzy_match(const char* name, size_t length, bool allow_locked = false); |
275 | 261 |
276 void check_writable(); | 262 void check_writable(); |
277 | 263 |
278 bool is_bool() const; | 264 bool is_bool() const; |
403 static bool doubleAtPut(char* name, size_t len, double* value, Flag::Flags origin); | 389 static bool doubleAtPut(char* name, size_t len, double* value, Flag::Flags origin); |
404 static bool doubleAtPut(char* name, double* value, Flag::Flags origin) { return doubleAtPut(name, strlen(name), value, origin); } | 390 static bool doubleAtPut(char* name, double* value, Flag::Flags origin) { return doubleAtPut(name, strlen(name), value, origin); } |
405 | 391 |
406 static bool ccstrAt(char* name, size_t len, ccstr* value); | 392 static bool ccstrAt(char* name, size_t len, ccstr* value); |
407 static bool ccstrAt(char* name, ccstr* value) { return ccstrAt(name, strlen(name), value); } | 393 static bool ccstrAt(char* name, ccstr* value) { return ccstrAt(name, strlen(name), value); } |
408 // Contract: Flag will make private copy of the incoming value. | |
409 // Outgoing value is always malloc-ed, and caller MUST call free. | |
410 static bool ccstrAtPut(char* name, size_t len, ccstr* value, Flag::Flags origin); | 394 static bool ccstrAtPut(char* name, size_t len, ccstr* value, Flag::Flags origin); |
411 static bool ccstrAtPut(char* name, ccstr* value, Flag::Flags origin) { return ccstrAtPut(name, strlen(name), value, origin); } | 395 static bool ccstrAtPut(char* name, ccstr* value, Flag::Flags origin) { return ccstrAtPut(name, strlen(name), value, origin); } |
412 | 396 |
413 // Returns false if name is not a command line flag. | 397 // Returns false if name is not a command line flag. |
414 static bool wasSetOnCmdline(const char* name, bool* value); | 398 static bool wasSetOnCmdline(const char* name, bool* value); |
592 \ | 576 \ |
593 product(bool, ForceNUMA, false, \ | 577 product(bool, ForceNUMA, false, \ |
594 "Force NUMA optimizations on single-node/UMA systems") \ | 578 "Force NUMA optimizations on single-node/UMA systems") \ |
595 \ | 579 \ |
596 product(uintx, NUMAChunkResizeWeight, 20, \ | 580 product(uintx, NUMAChunkResizeWeight, 20, \ |
597 "Percentage (0-100) used to weight the current sample when " \ | 581 "Percentage (0-100) used to weigh the current sample when " \ |
598 "computing exponentially decaying average for " \ | 582 "computing exponentially decaying average for " \ |
599 "AdaptiveNUMAChunkSizing") \ | 583 "AdaptiveNUMAChunkSizing") \ |
600 \ | 584 \ |
601 product(uintx, NUMASpaceResizeRate, 1*G, \ | 585 product(uintx, NUMASpaceResizeRate, 1*G, \ |
602 "Do not reallocate more than this amount per collection") \ | 586 "Do not reallocate more than this amount per collection") \ |
1289 notproduct(bool, TraceRuntimeCalls, false, \ | 1273 notproduct(bool, TraceRuntimeCalls, false, \ |
1290 "Trace run-time calls") \ | 1274 "Trace run-time calls") \ |
1291 \ | 1275 \ |
1292 develop(bool, TraceJNICalls, false, \ | 1276 develop(bool, TraceJNICalls, false, \ |
1293 "Trace JNI calls") \ | 1277 "Trace JNI calls") \ |
1294 \ | |
1295 develop(bool, StressRewriter, false, \ | |
1296 "Stress linktime bytecode rewriting") \ | |
1297 \ | 1278 \ |
1298 notproduct(bool, TraceJVMCalls, false, \ | 1279 notproduct(bool, TraceJVMCalls, false, \ |
1299 "Trace JVM calls") \ | 1280 "Trace JVM calls") \ |
1300 \ | 1281 \ |
1301 product(ccstr, TraceJVMTI, NULL, \ | 1282 product(ccstr, TraceJVMTI, NULL, \ |
1535 product(uintx, TargetPLABWastePct, 10, \ | 1516 product(uintx, TargetPLABWastePct, 10, \ |
1536 "Target wasted space in last buffer as percent of overall " \ | 1517 "Target wasted space in last buffer as percent of overall " \ |
1537 "allocation") \ | 1518 "allocation") \ |
1538 \ | 1519 \ |
1539 product(uintx, PLABWeight, 75, \ | 1520 product(uintx, PLABWeight, 75, \ |
1540 "Percentage (0-100) used to weight the current sample when " \ | 1521 "Percentage (0-100) used to weigh the current sample when " \ |
1541 "computing exponentially decaying average for ResizePLAB") \ | 1522 "computing exponentially decaying average for ResizePLAB") \ |
1542 \ | 1523 \ |
1543 product(bool, ResizePLAB, true, \ | 1524 product(bool, ResizePLAB, true, \ |
1544 "Dynamically resize (survivor space) promotion LAB's") \ | 1525 "Dynamically resize (survivor space) promotion LAB's") \ |
1545 \ | 1526 \ |
1644 product(uintx, CMSIncrementalOffset, 0, \ | 1625 product(uintx, CMSIncrementalOffset, 0, \ |
1645 "Percentage (0-100) by which the CMS incremental mode duty cycle "\ | 1626 "Percentage (0-100) by which the CMS incremental mode duty cycle "\ |
1646 "is shifted to the right within the period between young GCs") \ | 1627 "is shifted to the right within the period between young GCs") \ |
1647 \ | 1628 \ |
1648 product(uintx, CMSExpAvgFactor, 50, \ | 1629 product(uintx, CMSExpAvgFactor, 50, \ |
1649 "Percentage (0-100) used to weight the current sample when " \ | 1630 "Percentage (0-100) used to weigh the current sample when " \ |
1650 "computing exponential averages for CMS statistics") \ | 1631 "computing exponential averages for CMS statistics") \ |
1651 \ | 1632 \ |
1652 product(uintx, CMS_FLSWeight, 75, \ | 1633 product(uintx, CMS_FLSWeight, 75, \ |
1653 "Percentage (0-100) used to weight the current sample when " \ | 1634 "Percentage (0-100) used to weigh the current sample when " \ |
1654 "computing exponentially decaying averages for CMS FLS " \ | 1635 "computing exponentially decaying averages for CMS FLS " \ |
1655 "statistics") \ | 1636 "statistics") \ |
1656 \ | 1637 \ |
1657 product(uintx, CMS_FLSPadding, 1, \ | 1638 product(uintx, CMS_FLSPadding, 1, \ |
1658 "The multiple of deviation from mean to use for buffering " \ | 1639 "The multiple of deviation from mean to use for buffering " \ |
1760 notproduct(uintx, CMSMarkStackOverflowInterval, 1000, \ | 1741 notproduct(uintx, CMSMarkStackOverflowInterval, 1000, \ |
1761 "An \"interval\" counter that determines how frequently " \ | 1742 "An \"interval\" counter that determines how frequently " \ |
1762 "to simulate overflow; a smaller number increases frequency") \ | 1743 "to simulate overflow; a smaller number increases frequency") \ |
1763 \ | 1744 \ |
1764 product(uintx, CMSMaxAbortablePrecleanLoops, 0, \ | 1745 product(uintx, CMSMaxAbortablePrecleanLoops, 0, \ |
1746 "(Temporary, subject to experimentation) " \ | |
1765 "Maximum number of abortable preclean iterations, if > 0") \ | 1747 "Maximum number of abortable preclean iterations, if > 0") \ |
1766 \ | 1748 \ |
1767 product(intx, CMSMaxAbortablePrecleanTime, 5000, \ | 1749 product(intx, CMSMaxAbortablePrecleanTime, 5000, \ |
1750 "(Temporary, subject to experimentation) " \ | |
1768 "Maximum time in abortable preclean (in milliseconds)") \ | 1751 "Maximum time in abortable preclean (in milliseconds)") \ |
1769 \ | 1752 \ |
1770 product(uintx, CMSAbortablePrecleanMinWorkPerIteration, 100, \ | 1753 product(uintx, CMSAbortablePrecleanMinWorkPerIteration, 100, \ |
1754 "(Temporary, subject to experimentation) " \ | |
1771 "Nominal minimum work per abortable preclean iteration") \ | 1755 "Nominal minimum work per abortable preclean iteration") \ |
1772 \ | 1756 \ |
1773 manageable(intx, CMSAbortablePrecleanWaitMillis, 100, \ | 1757 manageable(intx, CMSAbortablePrecleanWaitMillis, 100, \ |
1758 "(Temporary, subject to experimentation) " \ | |
1774 "Time that we sleep between iterations when not given " \ | 1759 "Time that we sleep between iterations when not given " \ |
1775 "enough work per iteration") \ | 1760 "enough work per iteration") \ |
1776 \ | 1761 \ |
1777 product(uintx, CMSRescanMultiple, 32, \ | 1762 product(uintx, CMSRescanMultiple, 32, \ |
1778 "Size (in cards) of CMS parallel rescan task") \ | 1763 "Size (in cards) of CMS parallel rescan task") \ |
1984 "Number of promotion failures occurring at ParGCAllocBuffer " \ | 1969 "Number of promotion failures occurring at ParGCAllocBuffer " \ |
1985 "refill attempts (ParNew) or promotion attempts " \ | 1970 "refill attempts (ParNew) or promotion attempts " \ |
1986 "(other young collectors)") \ | 1971 "(other young collectors)") \ |
1987 \ | 1972 \ |
1988 develop(uintx, PromotionFailureALotInterval, 5, \ | 1973 develop(uintx, PromotionFailureALotInterval, 5, \ |
1989 "Total collections between promotion failures a lot") \ | 1974 "Total collections between promotion failures alot") \ |
1990 \ | 1975 \ |
1991 experimental(uintx, WorkStealingSleepMillis, 1, \ | 1976 experimental(uintx, WorkStealingSleepMillis, 1, \ |
1992 "Sleep time when sleep is used for yields") \ | 1977 "Sleep time when sleep is used for yields") \ |
1993 \ | 1978 \ |
1994 experimental(uintx, WorkStealingYieldsBeforeSleep, 5000, \ | 1979 experimental(uintx, WorkStealingYieldsBeforeSleep, 5000, \ |
1995 "Number of yields before a sleep is done during work stealing") \ | 1980 "Number of yields before a sleep is done during workstealing") \ |
1996 \ | 1981 \ |
1997 experimental(uintx, WorkStealingHardSpins, 4096, \ | 1982 experimental(uintx, WorkStealingHardSpins, 4096, \ |
1998 "Number of iterations in a spin loop between checks on " \ | 1983 "Number of iterations in a spin loop between checks on " \ |
1999 "time out of hard spin") \ | 1984 "time out of hard spin") \ |
2000 \ | 1985 \ |
2068 product(uintx, DefaultMaxRAMFraction, 4, \ | 2053 product(uintx, DefaultMaxRAMFraction, 4, \ |
2069 "Maximum fraction (1/n) of real memory used for maximum heap " \ | 2054 "Maximum fraction (1/n) of real memory used for maximum heap " \ |
2070 "size; deprecated: to be renamed to MaxRAMFraction") \ | 2055 "size; deprecated: to be renamed to MaxRAMFraction") \ |
2071 \ | 2056 \ |
2072 product(uintx, MinRAMFraction, 2, \ | 2057 product(uintx, MinRAMFraction, 2, \ |
2073 "Minimum fraction (1/n) of real memory used for maximum heap " \ | 2058 "Minimum fraction (1/n) of real memory used for maxmimum heap " \ |
2074 "size on systems with small physical memory size") \ | 2059 "size on systems with small physical memory size") \ |
2075 \ | 2060 \ |
2076 product(uintx, InitialRAMFraction, 64, \ | 2061 product(uintx, InitialRAMFraction, 64, \ |
2077 "Fraction (1/n) of real memory used for initial heap size") \ | 2062 "Fraction (1/n) of real memory used for initial heap size") \ |
2078 \ | 2063 \ |
2517 "Generate range checks for array accesses") \ | 2502 "Generate range checks for array accesses") \ |
2518 \ | 2503 \ |
2519 develop_pd(bool, ImplicitNullChecks, \ | 2504 develop_pd(bool, ImplicitNullChecks, \ |
2520 "Generate code for implicit null checks") \ | 2505 "Generate code for implicit null checks") \ |
2521 \ | 2506 \ |
2522 product_pd(bool, TrapBasedNullChecks, \ | |
2523 "Generate code for null checks that uses a cmp and trap " \ | |
2524 "instruction raising SIGTRAP. This is only used if an access to" \ | |
2525 "null (+offset) will not raise a SIGSEGV, i.e.," \ | |
2526 "ImplicitNullChecks don't work (PPC64).") \ | |
2527 \ | |
2528 product(bool, PrintSafepointStatistics, false, \ | 2507 product(bool, PrintSafepointStatistics, false, \ |
2529 "Print statistics about safepoint synchronization") \ | 2508 "Print statistics about safepoint synchronization") \ |
2530 \ | 2509 \ |
2531 product(intx, PrintSafepointStatisticsCount, 300, \ | 2510 product(intx, PrintSafepointStatisticsCount, 300, \ |
2532 "Total number of safepoint statistics collected " \ | 2511 "Total number of safepoint statistics collected " \ |
2567 develop(bool, TraceMethodReplacement, false, \ | 2546 develop(bool, TraceMethodReplacement, false, \ |
2568 "Print when methods are replaced do to recompilation") \ | 2547 "Print when methods are replaced do to recompilation") \ |
2569 \ | 2548 \ |
2570 develop(bool, PrintMethodFlushing, false, \ | 2549 develop(bool, PrintMethodFlushing, false, \ |
2571 "Print the nmethods being flushed") \ | 2550 "Print the nmethods being flushed") \ |
2572 \ | |
2573 diagnostic(bool, PrintMethodFlushingStatistics, false, \ | |
2574 "print statistics about method flushing") \ | |
2575 \ | 2551 \ |
2576 develop(bool, UseRelocIndex, false, \ | 2552 develop(bool, UseRelocIndex, false, \ |
2577 "Use an index to speed random access to relocations") \ | 2553 "Use an index to speed random access to relocations") \ |
2578 \ | 2554 \ |
2579 develop(bool, StressCodeBuffers, false, \ | 2555 develop(bool, StressCodeBuffers, false, \ |
2833 "Inline intrinsics that can be statically resolved") \ | 2809 "Inline intrinsics that can be statically resolved") \ |
2834 \ | 2810 \ |
2835 product_pd(bool, ProfileInterpreter, \ | 2811 product_pd(bool, ProfileInterpreter, \ |
2836 "Profile at the bytecode level during interpretation") \ | 2812 "Profile at the bytecode level during interpretation") \ |
2837 \ | 2813 \ |
2838 develop(bool, TraceProfileInterpreter, false, \ | |
2839 "Trace profiling at the bytecode level during interpretation. " \ | |
2840 "This outputs the profiling information collected to improve " \ | |
2841 "jit compilation.") \ | |
2842 \ | |
2843 develop_pd(bool, ProfileTraps, \ | 2814 develop_pd(bool, ProfileTraps, \ |
2844 "Profile deoptimization traps at the bytecode level") \ | 2815 "Profile deoptimization traps at the bytecode level") \ |
2845 \ | 2816 \ |
2846 product(intx, ProfileMaturityPercentage, 20, \ | 2817 product(intx, ProfileMaturityPercentage, 20, \ |
2847 "number of method invocations/branches (expressed as % of " \ | 2818 "number of method invocations/branches (expressed as % of " \ |
3100 "Per-BCI limit on repeated recompilation (-1=>'Inf')") \ | 3071 "Per-BCI limit on repeated recompilation (-1=>'Inf')") \ |
3101 \ | 3072 \ |
3102 product(intx, PerMethodTrapLimit, 100, \ | 3073 product(intx, PerMethodTrapLimit, 100, \ |
3103 "Limit on traps (of one kind) in a method (includes inlines)") \ | 3074 "Limit on traps (of one kind) in a method (includes inlines)") \ |
3104 \ | 3075 \ |
3105 experimental(intx, PerMethodSpecTrapLimit, 5000, \ | |
3106 "Limit on speculative traps (of one kind) in a method (includes inlines)") \ | |
3107 \ | |
3108 product(intx, PerBytecodeTrapLimit, 4, \ | 3076 product(intx, PerBytecodeTrapLimit, 4, \ |
3109 "Limit on traps (of one kind) at a particular BCI") \ | 3077 "Limit on traps (of one kind) at a particular BCI") \ |
3110 \ | |
3111 experimental(intx, SpecTrapLimitExtraEntries, 3, \ | |
3112 "Extra method data trap entries for speculation") \ | |
3113 \ | 3078 \ |
3114 develop(intx, InlineFrequencyRatio, 20, \ | 3079 develop(intx, InlineFrequencyRatio, 20, \ |
3115 "Ratio of call site execution to caller method invocation") \ | 3080 "Ratio of call site execution to caller method invocation") \ |
3116 \ | 3081 \ |
3117 develop_pd(intx, InlineFrequencyCount, \ | 3082 develop_pd(intx, InlineFrequencyCount, \ |
3187 \ | 3152 \ |
3188 product(uintx, CompressedClassSpaceSize, 1*G, \ | 3153 product(uintx, CompressedClassSpaceSize, 1*G, \ |
3189 "Maximum size of class area in Metaspace when compressed " \ | 3154 "Maximum size of class area in Metaspace when compressed " \ |
3190 "class pointers are used") \ | 3155 "class pointers are used") \ |
3191 \ | 3156 \ |
3192 manageable(uintx, MinHeapFreeRatio, 40, \ | 3157 product(uintx, MinHeapFreeRatio, 40, \ |
3193 "The minimum percentage of heap free after GC to avoid expansion."\ | 3158 "The minimum percentage of heap free after GC to avoid expansion."\ |
3194 " For most GCs this applies to the old generation. In G1 and" \ | 3159 " For most GCs this applies to the old generation. In G1 it" \ |
3195 " ParallelGC it applies to the whole heap.") \ | 3160 " applies to the whole heap. Not supported by ParallelGC.") \ |
3196 \ | 3161 \ |
3197 manageable(uintx, MaxHeapFreeRatio, 70, \ | 3162 product(uintx, MaxHeapFreeRatio, 70, \ |
3198 "The maximum percentage of heap free after GC to avoid shrinking."\ | 3163 "The maximum percentage of heap free after GC to avoid shrinking."\ |
3199 " For most GCs this applies to the old generation. In G1 and" \ | 3164 " For most GCs this applies to the old generation. In G1 it" \ |
3200 " ParallelGC it applies to the whole heap.") \ | 3165 " applies to the whole heap. Not supported by ParallelGC.") \ |
3201 \ | 3166 \ |
3202 product(intx, SoftRefLRUPolicyMSPerMB, 1000, \ | 3167 product(intx, SoftRefLRUPolicyMSPerMB, 1000, \ |
3203 "Number of milliseconds per MB of free space in the heap") \ | 3168 "Number of milliseconds per MB of free space in the heap") \ |
3204 \ | 3169 \ |
3205 product(uintx, MinHeapDeltaBytes, ScaleForWordSize(128*K), \ | 3170 product(uintx, MinHeapDeltaBytes, ScaleForWordSize(128*K), \ |
3314 "Thread safety margin is used on fixed-stack LinuxThreads (on " \ | 3279 "Thread safety margin is used on fixed-stack LinuxThreads (on " \ |
3315 "Linux/x86 only) to prevent heap-stack collision. Set to 0 to " \ | 3280 "Linux/x86 only) to prevent heap-stack collision. Set to 0 to " \ |
3316 "disable this feature") \ | 3281 "disable this feature") \ |
3317 \ | 3282 \ |
3318 /* code cache parameters */ \ | 3283 /* code cache parameters */ \ |
3319 /* ppc64 has large code-entry alignment. */ \ | 3284 develop(uintx, CodeCacheSegmentSize, 64, \ |
3320 develop(uintx, CodeCacheSegmentSize, 64 PPC64_ONLY(+64), \ | |
3321 "Code cache segment size (in bytes) - smallest unit of " \ | 3285 "Code cache segment size (in bytes) - smallest unit of " \ |
3322 "allocation") \ | 3286 "allocation") \ |
3323 \ | 3287 \ |
3324 develop_pd(intx, CodeEntryAlignment, \ | 3288 develop_pd(intx, CodeEntryAlignment, \ |
3325 "Code entry alignment for generated code (in bytes)") \ | 3289 "Code entry alignment for generated code (in bytes)") \ |
3364 \ | 3328 \ |
3365 /* compiler interface */ \ | 3329 /* compiler interface */ \ |
3366 develop(intx, CIStart, 0, \ | 3330 develop(intx, CIStart, 0, \ |
3367 "The id of the first compilation to permit") \ | 3331 "The id of the first compilation to permit") \ |
3368 \ | 3332 \ |
3369 develop(intx, CIStop, max_jint, \ | 3333 develop(intx, CIStop, -1, \ |
3370 "The id of the last compilation to permit") \ | 3334 "The id of the last compilation to permit") \ |
3371 \ | 3335 \ |
3372 develop(intx, CIStartOSR, 0, \ | 3336 develop(intx, CIStartOSR, 0, \ |
3373 "The id of the first osr compilation to permit " \ | 3337 "The id of the first osr compilation to permit " \ |
3374 "(CICountOSR must be on)") \ | 3338 "(CICountOSR must be on)") \ |
3375 \ | 3339 \ |
3376 develop(intx, CIStopOSR, max_jint, \ | 3340 develop(intx, CIStopOSR, -1, \ |
3377 "The id of the last osr compilation to permit " \ | 3341 "The id of the last osr compilation to permit " \ |
3378 "(CICountOSR must be on)") \ | 3342 "(CICountOSR must be on)") \ |
3379 \ | 3343 \ |
3380 develop(intx, CIBreakAtOSR, -1, \ | 3344 develop(intx, CIBreakAtOSR, -1, \ |
3381 "The id of osr compilation to break at") \ | 3345 "The id of osr compilation to break at") \ |
3382 \ | 3346 \ |
3383 develop(intx, CIBreakAt, -1, \ | 3347 develop(intx, CIBreakAt, -1, \ |
3384 "The id of compilation to break at") \ | 3348 "The id of compilation to break at") \ |
3385 \ | 3349 \ |
3386 product(ccstrlist, CompileOnly, "", \ | 3350 product(ccstrlist, CompileOnly, "", \ |
3387 "List of methods (pkg/class.name) to restrict compilation to") \ | 3351 "List of methods (pkg/class.name) to restrict compilation to") \ |
3388 \ | 3352 \ |
3396 "Enable replay of compilations from ReplayDataFile") \ | 3360 "Enable replay of compilations from ReplayDataFile") \ |
3397 \ | 3361 \ |
3398 product(ccstr, ReplayDataFile, NULL, \ | 3362 product(ccstr, ReplayDataFile, NULL, \ |
3399 "File containing compilation replay information" \ | 3363 "File containing compilation replay information" \ |
3400 "[default: ./replay_pid%p.log] (%p replaced with pid)") \ | 3364 "[default: ./replay_pid%p.log] (%p replaced with pid)") \ |
3401 \ | |
3402 product(ccstr, InlineDataFile, NULL, \ | |
3403 "File containing inlining replay information" \ | |
3404 "[default: ./inline_pid%p.log] (%p replaced with pid)") \ | |
3405 \ | 3365 \ |
3406 develop(intx, ReplaySuppressInitializers, 2, \ | 3366 develop(intx, ReplaySuppressInitializers, 2, \ |
3407 "Control handling of class initialization during replay: " \ | 3367 "Control handling of class initialization during replay: " \ |
3408 "0 - don't do anything special; " \ | 3368 "0 - don't do anything special; " \ |
3409 "1 - treat all class initializers as empty; " \ | 3369 "1 - treat all class initializers as empty; " \ |
3692 /* Properties for Java libraries */ \ | 3652 /* Properties for Java libraries */ \ |
3693 \ | 3653 \ |
3694 product(uintx, MaxDirectMemorySize, 0, \ | 3654 product(uintx, MaxDirectMemorySize, 0, \ |
3695 "Maximum total size of NIO direct-buffer allocations") \ | 3655 "Maximum total size of NIO direct-buffer allocations") \ |
3696 \ | 3656 \ |
3697 /* Flags used for temporary code during development */ \ | 3657 /* temporary developer defined flags */ \ |
3698 \ | 3658 \ |
3699 diagnostic(bool, UseNewCode, false, \ | 3659 diagnostic(bool, UseNewCode, false, \ |
3700 "Testing Only: Use the new version while testing") \ | 3660 "Testing Only: Use the new version while testing") \ |
3701 \ | 3661 \ |
3702 diagnostic(bool, UseNewCode2, false, \ | 3662 diagnostic(bool, UseNewCode2, false, \ |