4065 "that are annotated with the @HotSpotIntrinsicCandidate " \
4066 "annotation, and that " \
4067 "(3) no orphan methods exist for class C (i.e., methods for " \
4068 "which the VM declares an intrinsic but that are not declared "\
4069 "in the loaded class C. " \
4070 "Check (3) is available only in debug builds.") \
4071 \
4072 diagnostic_pd(intx, InitArrayShortSize, \
4073 "Threshold small size (in bytes) for clearing arrays. " \
4074 "Anything this size or smaller may get converted to discrete " \
4075 "scalar stores.") \
4076 range(0, max_intx) \
4077 constraint(InitArrayShortSizeConstraintFunc, AfterErgo) \
4078 \
4079 diagnostic(bool, CompilerDirectivesIgnoreCompileCommands, false, \
4080 "Disable backwards compatibility for compile commands.") \
4081 \
4082 diagnostic(bool, CompilerDirectivesPrint, false, \
4083 "Print compiler directives on installation.") \
4084 diagnostic(int, CompilerDirectivesLimit, 50, \
4085 "Limit on number of compiler directives.")
4086
4087
4088 /*
4089 * Macros for factoring of globals
4090 */
4091
4092 // Interface macros
4093 #define DECLARE_PRODUCT_FLAG(type, name, value, doc) extern "C" type name;
4094 #define DECLARE_PD_PRODUCT_FLAG(type, name, doc) extern "C" type name;
4095 #define DECLARE_DIAGNOSTIC_FLAG(type, name, value, doc) extern "C" type name;
4096 #define DECLARE_PD_DIAGNOSTIC_FLAG(type, name, doc) extern "C" type name;
4097 #define DECLARE_EXPERIMENTAL_FLAG(type, name, value, doc) extern "C" type name;
4098 #define DECLARE_MANAGEABLE_FLAG(type, name, value, doc) extern "C" type name;
4099 #define DECLARE_PRODUCT_RW_FLAG(type, name, value, doc) extern "C" type name;
4100 #ifdef PRODUCT
4101 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) const type name = value;
4102 #define DECLARE_PD_DEVELOPER_FLAG(type, name, doc) const type name = pd_##name;
4103 #define DECLARE_NOTPRODUCT_FLAG(type, name, value, doc) const type name = value;
4104 #else
4105 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) extern "C" type name;
|
4065 "that are annotated with the @HotSpotIntrinsicCandidate " \
4066 "annotation, and that " \
4067 "(3) no orphan methods exist for class C (i.e., methods for " \
4068 "which the VM declares an intrinsic but that are not declared "\
4069 "in the loaded class C. " \
4070 "Check (3) is available only in debug builds.") \
4071 \
4072 diagnostic_pd(intx, InitArrayShortSize, \
4073 "Threshold small size (in bytes) for clearing arrays. " \
4074 "Anything this size or smaller may get converted to discrete " \
4075 "scalar stores.") \
4076 range(0, max_intx) \
4077 constraint(InitArrayShortSizeConstraintFunc, AfterErgo) \
4078 \
4079 diagnostic(bool, CompilerDirectivesIgnoreCompileCommands, false, \
4080 "Disable backwards compatibility for compile commands.") \
4081 \
4082 diagnostic(bool, CompilerDirectivesPrint, false, \
4083 "Print compiler directives on installation.") \
4084 diagnostic(int, CompilerDirectivesLimit, 50, \
4085 "Limit on number of compiler directives.") \
4086 product(bool, HeapMonitor, false, \
4087 "Enable heap monitoring.") \
4088 product(int, HeapMonitorRate, (1<<19), \
4089 "Heap monitoring rate.") \
4090 product(uintx, MaxHeapTraces, 200, \
4091 "Maximum number of traces kept by the heap monitoring.") \
4092
4093
4094 /*
4095 * Macros for factoring of globals
4096 */
4097
4098 // Interface macros
4099 #define DECLARE_PRODUCT_FLAG(type, name, value, doc) extern "C" type name;
4100 #define DECLARE_PD_PRODUCT_FLAG(type, name, doc) extern "C" type name;
4101 #define DECLARE_DIAGNOSTIC_FLAG(type, name, value, doc) extern "C" type name;
4102 #define DECLARE_PD_DIAGNOSTIC_FLAG(type, name, doc) extern "C" type name;
4103 #define DECLARE_EXPERIMENTAL_FLAG(type, name, value, doc) extern "C" type name;
4104 #define DECLARE_MANAGEABLE_FLAG(type, name, value, doc) extern "C" type name;
4105 #define DECLARE_PRODUCT_RW_FLAG(type, name, value, doc) extern "C" type name;
4106 #ifdef PRODUCT
4107 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) const type name = value;
4108 #define DECLARE_PD_DEVELOPER_FLAG(type, name, doc) const type name = pd_##name;
4109 #define DECLARE_NOTPRODUCT_FLAG(type, name, value, doc) const type name = value;
4110 #else
4111 #define DECLARE_DEVELOPER_FLAG(type, name, value, doc) extern "C" type name;
|