< prev index next >

src/share/vm/opto/c2_globals.hpp

Print this page




 578                                                                             \
 579   product(intx, MaxLabelRootDepth, 1100,                                    \
 580           "Maximum times call Label_Root to prevent stack overflow")        \
 581           range(100, max_jint)                                              \
 582                                                                             \
 583   diagnostic(intx, DominatorSearchLimit, 1000,                              \
 584           "Iterations limit in Node::dominates")                            \
 585           range(0, max_jint)                                                \
 586                                                                             \
 587   product(bool, BlockLayoutByFrequency, true,                               \
 588           "Use edge frequencies to drive block ordering")                   \
 589                                                                             \
 590   product(intx, BlockLayoutMinDiamondPercentage, 20,                        \
 591           "Miniumum %% of a successor (predecessor) for which block "       \
 592           "layout a will allow a fork (join) in a single chain")            \
 593           range(0, 100)                                                     \
 594                                                                             \
 595   product(bool, BlockLayoutRotateLoops, true,                               \
 596           "Allow back branches to be fall throughs in the block layour")    \
 597                                                                             \
 598   develop(bool, InlineReflectionGetCallerClass, true,                       \
 599           "inline sun.reflect.Reflection.getCallerClass(), known to be "    \
 600           "part of base library DLL")                                       \
 601                                                                             \
 602   develop(bool, InlineObjectCopy, true,                                     \
 603           "inline Object.clone and Arrays.copyOf[Range] intrinsics")        \
 604                                                                             \
 605   develop(bool, SpecialStringCompareTo, true,                               \
 606           "special version of string compareTo")                            \
 607                                                                             \
 608   develop(bool, SpecialStringIndexOf, true,                                 \
 609           "special version of string indexOf")                              \
 610                                                                             \
 611   develop(bool, SpecialStringEquals, true,                                  \
 612           "special version of string equals")                               \
 613                                                                             \
 614   develop(bool, SpecialArraysEquals, true,                                  \
 615           "special version of Arrays.equals(char[],char[])")                \
 616                                                                             \
 617   product(bool, SpecialEncodeISOArray, true,                                \
 618           "special version of ISO_8859_1$Encoder.encodeISOArray")           \
 619                                                                             \
 620   develop(bool, BailoutToInterpreterForThrows, false,                       \
 621           "Compiled methods which throws/catches exceptions will be "       \
 622           "deopt and intp.")                                                \
 623                                                                             \
 624   develop(bool, ConvertCmpD2CmpF, true,                                     \
 625           "Convert cmpD to cmpF when one input is constant in float range") \
 626                                                                             \
 627   develop(bool, ConvertFloat2IntClipping, true,                             \
 628           "Convert float2int clipping idiom to integer clipping")           \
 629                                                                             \
 630   develop(bool, Use24BitFPMode, true,                                       \
 631           "Set 24-bit FPU mode on a per-compile basis ")                    \
 632                                                                             \
 633   develop(bool, Use24BitFP, true,                                           \
 634           "use FP instructions that produce 24-bit precise results")        \
 635                                                                             \
 636   develop(bool, MonomorphicArrayCheck, true,                                \
 637           "Uncommon-trap array store checks that require full type check")  \


 699           "2 for class split, 3 for unique instances")                      \
 700           range(0, 3)                                                       \
 701           constraint(AliasLevelConstraintFunc,AfterErgo)                    \
 702                                                                             \
 703   develop(bool, VerifyAliases, false,                                       \
 704           "perform extra checks on the results of alias analysis")          \
 705                                                                             \
 706   product(bool, IncrementalInline, true,                                    \
 707           "do post parse inlining")                                         \
 708                                                                             \
 709   develop(bool, AlwaysIncrementalInline, false,                             \
 710           "do all inlining incrementally")                                  \
 711                                                                             \
 712   product(intx, LiveNodeCountInliningCutoff, 40000,                         \
 713           "max number of live nodes in a method")                           \
 714           range(0, max_juint / 8)                                           \
 715                                                                             \
 716   diagnostic(bool, OptimizeExpensiveOps, true,                              \
 717           "Find best control for expensive operations")                     \
 718                                                                             \
 719   product(bool, UseMathExactIntrinsics, true,                               \
 720           "Enables intrinsification of various java.lang.Math functions")   \
 721                                                                             \
 722   product(bool, UseMultiplyToLenIntrinsic, false,                           \
 723           "Enables intrinsification of BigInteger.multiplyToLen()")         \
 724                                                                             \
 725   product(bool, UseSquareToLenIntrinsic, false,                             \
 726           "Enables intrinsification of BigInteger.squareToLen()")           \
 727                                                                             \
 728   product(bool, UseMulAddIntrinsic, false,                                  \
 729           "Enables intrinsification of BigInteger.mulAdd()")                \
 730                                                                             \
 731   product(bool, UseMontgomeryMultiplyIntrinsic, false,                      \
 732           "Enables intrinsification of BigInteger.montgomeryMultiply()")    \
 733                                                                             \
 734   product(bool, UseMontgomerySquareIntrinsic, false,                        \
 735           "Enables intrinsification of BigInteger.montgomerySquare()")      \
 736                                                                             \
 737   product(bool, UseTypeSpeculation, true,                                   \
 738           "Speculatively propagate types from profiles")                    \
 739                                                                             \
 740   diagnostic(bool, UseInlineDepthForSpeculativeTypes, true,                 \
 741           "Carry inline depth of profile point with speculative type "      \
 742           "and give priority to profiling from lower inline depth")         \
 743                                                                             \
 744   product_pd(bool, TrapBasedRangeChecks,                                    \
 745           "Generate code for range checks that uses a cmp and trap "        \
 746           "instruction raising SIGTRAP. Used on PPC64.")                    \
 747                                                                             \
 748   product(intx, ArrayCopyLoadStoreMaxElem, 8,                               \
 749           "Maximum number of arraycopy elements inlined as a sequence of"   \
 750           "loads/stores")                                                   \
 751           range(0, max_intx)                                                \
 752                                                                             \
 753   develop(bool, StressArrayCopyMacroNode, false,                            \
 754           "Perform ArrayCopy load/store replacement during IGVN only")      \


 578                                                                             \
 579   product(intx, MaxLabelRootDepth, 1100,                                    \
 580           "Maximum times call Label_Root to prevent stack overflow")        \
 581           range(100, max_jint)                                              \
 582                                                                             \
 583   diagnostic(intx, DominatorSearchLimit, 1000,                              \
 584           "Iterations limit in Node::dominates")                            \
 585           range(0, max_jint)                                                \
 586                                                                             \
 587   product(bool, BlockLayoutByFrequency, true,                               \
 588           "Use edge frequencies to drive block ordering")                   \
 589                                                                             \
 590   product(intx, BlockLayoutMinDiamondPercentage, 20,                        \
 591           "Miniumum %% of a successor (predecessor) for which block "       \
 592           "layout a will allow a fork (join) in a single chain")            \
 593           range(0, 100)                                                     \
 594                                                                             \
 595   product(bool, BlockLayoutRotateLoops, true,                               \
 596           "Allow back branches to be fall throughs in the block layour")    \
 597                                                                             \
 598   diagnostic(bool, InlineReflectionGetCallerClass, true,                    \
 599           "inline sun.reflect.Reflection.getCallerClass(), known to be "    \
 600           "part of base library DLL")                                       \
 601                                                                             \
 602   diagnostic(bool, InlineObjectCopy, true,                                  \
 603           "inline Object.clone and Arrays.copyOf[Range] intrinsics")        \
 604                                                                             \
 605   diagnostic(bool, SpecialStringCompareTo, true,                            \
 606           "special version of string compareTo")                            \
 607                                                                             \
 608   diagnostic(bool, SpecialStringIndexOf, true,                              \
 609           "special version of string indexOf")                              \
 610                                                                             \
 611   diagnostic(bool, SpecialStringEquals, true,                               \
 612           "special version of string equals")                               \
 613                                                                             \
 614   diagnostic(bool, SpecialArraysEquals, true,                               \
 615           "special version of Arrays.equals(char[],char[])")                \
 616                                                                             \
 617   diagnostic(bool, SpecialEncodeISOArray, true,                             \
 618           "special version of ISO_8859_1$Encoder.encodeISOArray")           \
 619                                                                             \
 620   develop(bool, BailoutToInterpreterForThrows, false,                       \
 621           "Compiled methods which throws/catches exceptions will be "       \
 622           "deopt and intp.")                                                \
 623                                                                             \
 624   develop(bool, ConvertCmpD2CmpF, true,                                     \
 625           "Convert cmpD to cmpF when one input is constant in float range") \
 626                                                                             \
 627   develop(bool, ConvertFloat2IntClipping, true,                             \
 628           "Convert float2int clipping idiom to integer clipping")           \
 629                                                                             \
 630   develop(bool, Use24BitFPMode, true,                                       \
 631           "Set 24-bit FPU mode on a per-compile basis ")                    \
 632                                                                             \
 633   develop(bool, Use24BitFP, true,                                           \
 634           "use FP instructions that produce 24-bit precise results")        \
 635                                                                             \
 636   develop(bool, MonomorphicArrayCheck, true,                                \
 637           "Uncommon-trap array store checks that require full type check")  \


 699           "2 for class split, 3 for unique instances")                      \
 700           range(0, 3)                                                       \
 701           constraint(AliasLevelConstraintFunc,AfterErgo)                    \
 702                                                                             \
 703   develop(bool, VerifyAliases, false,                                       \
 704           "perform extra checks on the results of alias analysis")          \
 705                                                                             \
 706   product(bool, IncrementalInline, true,                                    \
 707           "do post parse inlining")                                         \
 708                                                                             \
 709   develop(bool, AlwaysIncrementalInline, false,                             \
 710           "do all inlining incrementally")                                  \
 711                                                                             \
 712   product(intx, LiveNodeCountInliningCutoff, 40000,                         \
 713           "max number of live nodes in a method")                           \
 714           range(0, max_juint / 8)                                           \
 715                                                                             \
 716   diagnostic(bool, OptimizeExpensiveOps, true,                              \
 717           "Find best control for expensive operations")                     \
 718                                                                             \
 719   diagnostic(bool, UseMathExactIntrinsics, true,                            \
 720           "Enables intrinsification of various java.lang.Math functions")   \
 721                                                                             \
 722   diagnostic(bool, UseMultiplyToLenIntrinsic, false,                        \
 723           "Enables intrinsification of BigInteger.multiplyToLen()")         \
 724                                                                             \
 725   diagnostic(bool, UseSquareToLenIntrinsic, false,                          \
 726           "Enables intrinsification of BigInteger.squareToLen()")           \
 727                                                                             \
 728   diagnostic(bool, UseMulAddIntrinsic, false,                               \
 729           "Enables intrinsification of BigInteger.mulAdd()")                \
 730                                                                             \
 731   diagnostic(bool, UseMontgomeryMultiplyIntrinsic, false,                   \
 732           "Enables intrinsification of BigInteger.montgomeryMultiply()")    \
 733                                                                             \
 734   diagnostic(bool, UseMontgomerySquareIntrinsic, false,                     \
 735           "Enables intrinsification of BigInteger.montgomerySquare()")      \
 736                                                                             \
 737   product(bool, UseTypeSpeculation, true,                                   \
 738           "Speculatively propagate types from profiles")                    \
 739                                                                             \
 740   diagnostic(bool, UseInlineDepthForSpeculativeTypes, true,                 \
 741           "Carry inline depth of profile point with speculative type "      \
 742           "and give priority to profiling from lower inline depth")         \
 743                                                                             \
 744   product_pd(bool, TrapBasedRangeChecks,                                    \
 745           "Generate code for range checks that uses a cmp and trap "        \
 746           "instruction raising SIGTRAP. Used on PPC64.")                    \
 747                                                                             \
 748   product(intx, ArrayCopyLoadStoreMaxElem, 8,                               \
 749           "Maximum number of arraycopy elements inlined as a sequence of"   \
 750           "loads/stores")                                                   \
 751           range(0, max_intx)                                                \
 752                                                                             \
 753   develop(bool, StressArrayCopyMacroNode, false,                            \
 754           "Perform ArrayCopy load/store replacement during IGVN only")      \
< prev index next >