2631 \
2632 develop(bool, TraceLivenessGen, false, \
2633 "Trace the generation of liveness analysis information") \
2634 \
2635 notproduct(bool, TraceLivenessQuery, false, \
2636 "Trace queries of liveness analysis information") \
2637 \
2638 notproduct(bool, CollectIndexSetStatistics, false, \
2639 "Collect information about IndexSets") \
2640 \
2641 develop(bool, UseLoopSafepoints, true, \
2642 "Generate Safepoint nodes in every loop") \
2643 \
2644 develop(intx, FastAllocateSizeLimit, 128*K, \
2645 /* Note: This value is zero mod 1<<13 for a cheap sparc set. */ \
2646 "Inline allocations larger than this in doublewords must go slow")\
2647 \
2648 product(bool, AggressiveOpts, false, \
2649 "Enable aggressive optimizations - see arguments.cpp") \
2650 \
2651 /* statistics */ \
2652 develop(bool, CountCompiledCalls, false, \
2653 "counts method invocations") \
2654 \
2655 notproduct(bool, CountRuntimeCalls, false, \
2656 "counts VM runtime calls") \
2657 \
2658 develop(bool, CountJNICalls, false, \
2659 "counts jni method invocations") \
2660 \
2661 notproduct(bool, CountJVMCalls, false, \
2662 "counts jvm method invocations") \
2663 \
2664 notproduct(bool, CountRemovableExceptions, false, \
2665 "count exceptions that could be replaced by branches due to " \
2666 "inlining") \
2667 \
2668 notproduct(bool, ICMissHistogram, false, \
2669 "produce histogram of IC misses") \
2670 \
3742 "Enable internal testing APIs") \
3743 \
3744 product(bool, PrintGCCause, true, \
3745 "Include GC cause in GC logging") \
3746 \
3747 product(bool , AllowNonVirtualCalls, false, \
3748 "Obey the ACC_SUPER flag and allow invokenonvirtual calls") \
3749 \
3750 diagnostic(ccstr, SharedArchiveFile, NULL, \
3751 "Override the default location of the CDS archive file") \
3752 \
3753 experimental(uintx, ArrayAllocatorMallocLimit, \
3754 SOLARIS_ONLY(64*K) NOT_SOLARIS(max_uintx), \
3755 "Allocation less than this value will be allocated " \
3756 "using malloc. Larger allocations will use mmap.") \
3757 \
3758 product(bool, EnableTracing, false, \
3759 "Enable event-based tracing") \
3760 product(bool, UseLockedTracing, false, \
3761 "Use locked-tracing when doing event-based tracing")
3762
3763
3764 /*
3765 * Macros for factoring of globals
3766 */
3767
3768 // Interface macros
3769 #define DECLARE_PRODUCT_FLAG(type, name, value, doc) extern "C" type name;
3770 #define DECLARE_PD_PRODUCT_FLAG(type, name, doc) extern "C" type name;
3771 #define DECLARE_DIAGNOSTIC_FLAG(type, name, value, doc) extern "C" type name;
3772 #define DECLARE_EXPERIMENTAL_FLAG(type, name, value, doc) extern "C" type name;
3773 #define DECLARE_MANAGEABLE_FLAG(type, name, value, doc) extern "C" type name;
3774 #define DECLARE_PRODUCT_RW_FLAG(type, name, value, doc) extern "C" type name;
3775 #ifdef PRODUCT
3776 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) extern "C" type CONST_##name; const type name = value;
3777 #define DECLARE_PD_DEVELOPER_FLAG(type, name, doc) extern "C" type CONST_##name; const type name = pd_##name;
3778 #define DECLARE_NOTPRODUCT_FLAG(type, name, value, doc) extern "C" type CONST_##name;
3779 #else
3780 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) extern "C" type name;
3781 #define DECLARE_PD_DEVELOPER_FLAG(type, name, doc) extern "C" type name;
3782 #define DECLARE_NOTPRODUCT_FLAG(type, name, value, doc) extern "C" type name;
|
2631 \
2632 develop(bool, TraceLivenessGen, false, \
2633 "Trace the generation of liveness analysis information") \
2634 \
2635 notproduct(bool, TraceLivenessQuery, false, \
2636 "Trace queries of liveness analysis information") \
2637 \
2638 notproduct(bool, CollectIndexSetStatistics, false, \
2639 "Collect information about IndexSets") \
2640 \
2641 develop(bool, UseLoopSafepoints, true, \
2642 "Generate Safepoint nodes in every loop") \
2643 \
2644 develop(intx, FastAllocateSizeLimit, 128*K, \
2645 /* Note: This value is zero mod 1<<13 for a cheap sparc set. */ \
2646 "Inline allocations larger than this in doublewords must go slow")\
2647 \
2648 product(bool, AggressiveOpts, false, \
2649 "Enable aggressive optimizations - see arguments.cpp") \
2650 \
2651 product_pd(uintx, TypeProfileLevel, \
2652 "Type profiling of arguments at call:" \
2653 "0->off ; 1->js292 only; 2->all methods") \
2654 \
2655 product(intx, TypeProfileArgsLimit, 2, \
2656 "max number of call arguments to consider for type profiling") \
2657 \
2658 /* statistics */ \
2659 develop(bool, CountCompiledCalls, false, \
2660 "counts method invocations") \
2661 \
2662 notproduct(bool, CountRuntimeCalls, false, \
2663 "counts VM runtime calls") \
2664 \
2665 develop(bool, CountJNICalls, false, \
2666 "counts jni method invocations") \
2667 \
2668 notproduct(bool, CountJVMCalls, false, \
2669 "counts jvm method invocations") \
2670 \
2671 notproduct(bool, CountRemovableExceptions, false, \
2672 "count exceptions that could be replaced by branches due to " \
2673 "inlining") \
2674 \
2675 notproduct(bool, ICMissHistogram, false, \
2676 "produce histogram of IC misses") \
2677 \
3749 "Enable internal testing APIs") \
3750 \
3751 product(bool, PrintGCCause, true, \
3752 "Include GC cause in GC logging") \
3753 \
3754 product(bool , AllowNonVirtualCalls, false, \
3755 "Obey the ACC_SUPER flag and allow invokenonvirtual calls") \
3756 \
3757 diagnostic(ccstr, SharedArchiveFile, NULL, \
3758 "Override the default location of the CDS archive file") \
3759 \
3760 experimental(uintx, ArrayAllocatorMallocLimit, \
3761 SOLARIS_ONLY(64*K) NOT_SOLARIS(max_uintx), \
3762 "Allocation less than this value will be allocated " \
3763 "using malloc. Larger allocations will use mmap.") \
3764 \
3765 product(bool, EnableTracing, false, \
3766 "Enable event-based tracing") \
3767 product(bool, UseLockedTracing, false, \
3768 "Use locked-tracing when doing event-based tracing")
3769
3770 /*
3771 * Macros for factoring of globals
3772 */
3773
3774 // Interface macros
3775 #define DECLARE_PRODUCT_FLAG(type, name, value, doc) extern "C" type name;
3776 #define DECLARE_PD_PRODUCT_FLAG(type, name, doc) extern "C" type name;
3777 #define DECLARE_DIAGNOSTIC_FLAG(type, name, value, doc) extern "C" type name;
3778 #define DECLARE_EXPERIMENTAL_FLAG(type, name, value, doc) extern "C" type name;
3779 #define DECLARE_MANAGEABLE_FLAG(type, name, value, doc) extern "C" type name;
3780 #define DECLARE_PRODUCT_RW_FLAG(type, name, value, doc) extern "C" type name;
3781 #ifdef PRODUCT
3782 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) extern "C" type CONST_##name; const type name = value;
3783 #define DECLARE_PD_DEVELOPER_FLAG(type, name, doc) extern "C" type CONST_##name; const type name = pd_##name;
3784 #define DECLARE_NOTPRODUCT_FLAG(type, name, value, doc) extern "C" type CONST_##name;
3785 #else
3786 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) extern "C" type name;
3787 #define DECLARE_PD_DEVELOPER_FLAG(type, name, doc) extern "C" type name;
3788 #define DECLARE_NOTPRODUCT_FLAG(type, name, value, doc) extern "C" type name;
|