src/share/vm/opto/c2_globals.hpp

Print this page


   1 /*
   2  * Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   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
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *
  23  */
  24 




















  25 //
  26 // Defines all globals flags used by the server compiler.
  27 //
  28 
  29 #define C2_FLAGS(develop, develop_pd, product, product_pd, diagnostic, experimental, notproduct) \
  30                                                                             \
  31   notproduct(intx, CompileZapFirst, 0,                                      \
  32           "If +ZapDeadCompiledLocals, "                                     \
  33           "skip this many before compiling in zap calls")                   \
  34                                                                             \
  35   notproduct(intx, CompileZapLast, -1,                                      \
  36           "If +ZapDeadCompiledLocals, "                                     \
  37           "compile this many after skipping (incl. skip count, -1 = all)")  \
  38                                                                             \
  39   notproduct(intx, ZapDeadCompiledLocalsFirst, 0,                           \
  40           "If +ZapDeadCompiledLocals, "                                     \
  41           "skip this many before really doing it")                          \
  42                                                                             \
  43   notproduct(intx, ZapDeadCompiledLocalsLast, -1,                           \
  44           "If +ZapDeadCompiledLocals, "                                     \


 421   product(intx, ValueSearchLimit, 1000,                                     \
 422           "Recursion limit in PhaseMacroExpand::value_from_mem_phi")        \
 423                                                                             \
 424   product(intx, MaxLabelRootDepth, 1100,                                    \
 425           "Maximum times call Label_Root to prevent stack overflow")        \
 426                                                                             \
 427   diagnostic(intx, DominatorSearchLimit, 1000,                              \
 428           "Iterations limit in Node::dominates")                            \
 429                                                                             \
 430   product(bool, BlockLayoutByFrequency, true,                               \
 431           "Use edge frequencies to drive block ordering")                   \
 432                                                                             \
 433   product(intx, BlockLayoutMinDiamondPercentage, 20,                        \
 434           "Miniumum %% of a successor (predecessor) for which block layout "\
 435           "a will allow a fork (join) in a single chain")                   \
 436                                                                             \
 437   product(bool, BlockLayoutRotateLoops, true,                               \
 438           "Allow back branches to be fall throughs in the block layour")    \
 439 
 440 C2_FLAGS(DECLARE_DEVELOPER_FLAG, DECLARE_PD_DEVELOPER_FLAG, DECLARE_PRODUCT_FLAG, DECLARE_PD_PRODUCT_FLAG, DECLARE_DIAGNOSTIC_FLAG, DECLARE_EXPERIMENTAL_FLAG, DECLARE_NOTPRODUCT_FLAG)


   1 /*
   2  * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   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
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *
  23  */
  24 
  25 #ifndef SHARE_VM_OPTO_C2_GLOBALS_HPP
  26 #define SHARE_VM_OPTO_C2_GLOBALS_HPP
  27 
  28 #include "runtime/globals.hpp"
  29 #ifdef TARGET_ARCH_x86
  30 # include "c2_globals_x86.hpp"
  31 #endif
  32 #ifdef TARGET_ARCH_sparc
  33 # include "c2_globals_sparc.hpp"
  34 #endif
  35 #ifdef TARGET_OS_FAMILY_linux
  36 # include "c2_globals_linux.hpp"
  37 #endif
  38 #ifdef TARGET_OS_FAMILY_solaris
  39 # include "c2_globals_solaris.hpp"
  40 #endif
  41 #ifdef TARGET_OS_FAMILY_windows
  42 # include "c2_globals_windows.hpp"
  43 #endif
  44 
  45 //
  46 // Defines all globals flags used by the server compiler.
  47 //
  48 
  49 #define C2_FLAGS(develop, develop_pd, product, product_pd, diagnostic, experimental, notproduct) \
  50                                                                             \
  51   notproduct(intx, CompileZapFirst, 0,                                      \
  52           "If +ZapDeadCompiledLocals, "                                     \
  53           "skip this many before compiling in zap calls")                   \
  54                                                                             \
  55   notproduct(intx, CompileZapLast, -1,                                      \
  56           "If +ZapDeadCompiledLocals, "                                     \
  57           "compile this many after skipping (incl. skip count, -1 = all)")  \
  58                                                                             \
  59   notproduct(intx, ZapDeadCompiledLocalsFirst, 0,                           \
  60           "If +ZapDeadCompiledLocals, "                                     \
  61           "skip this many before really doing it")                          \
  62                                                                             \
  63   notproduct(intx, ZapDeadCompiledLocalsLast, -1,                           \
  64           "If +ZapDeadCompiledLocals, "                                     \


 441   product(intx, ValueSearchLimit, 1000,                                     \
 442           "Recursion limit in PhaseMacroExpand::value_from_mem_phi")        \
 443                                                                             \
 444   product(intx, MaxLabelRootDepth, 1100,                                    \
 445           "Maximum times call Label_Root to prevent stack overflow")        \
 446                                                                             \
 447   diagnostic(intx, DominatorSearchLimit, 1000,                              \
 448           "Iterations limit in Node::dominates")                            \
 449                                                                             \
 450   product(bool, BlockLayoutByFrequency, true,                               \
 451           "Use edge frequencies to drive block ordering")                   \
 452                                                                             \
 453   product(intx, BlockLayoutMinDiamondPercentage, 20,                        \
 454           "Miniumum %% of a successor (predecessor) for which block layout "\
 455           "a will allow a fork (join) in a single chain")                   \
 456                                                                             \
 457   product(bool, BlockLayoutRotateLoops, true,                               \
 458           "Allow back branches to be fall throughs in the block layour")    \
 459 
 460 C2_FLAGS(DECLARE_DEVELOPER_FLAG, DECLARE_PD_DEVELOPER_FLAG, DECLARE_PRODUCT_FLAG, DECLARE_PD_PRODUCT_FLAG, DECLARE_DIAGNOSTIC_FLAG, DECLARE_EXPERIMENTAL_FLAG, DECLARE_NOTPRODUCT_FLAG)
 461 
 462 #endif // SHARE_VM_OPTO_C2_GLOBALS_HPP