63 #define MIN_STACK_RED_PAGES DEFAULT_STACK_RED_PAGES 64 #define MIN_STACK_SHADOW_PAGES DEFAULT_STACK_SHADOW_PAGES 65 #define MIN_STACK_RESERVED_PAGES (0) 66 67 define_pd_global(intx, StackYellowPages, DEFAULT_STACK_YELLOW_PAGES); 68 define_pd_global(intx, StackRedPages, DEFAULT_STACK_RED_PAGES); 69 define_pd_global(intx, StackShadowPages, DEFAULT_STACK_SHADOW_PAGES); 70 define_pd_global(intx, StackReservedPages, DEFAULT_STACK_RESERVED_PAGES); 71 72 define_pd_global(bool, RewriteBytecodes, true); 73 define_pd_global(bool, RewriteFrequentPairs, true); 74 75 define_pd_global(bool, PreserveFramePointer, false); 76 77 define_pd_global(uintx, TypeProfileLevel, 111); 78 79 define_pd_global(bool, CompactStrings, true); 80 81 define_pd_global(intx, InitArrayShortSize, 8*BytesPerLong); 82 83 #define ARCH_FLAGS(develop, \ 84 product, \ 85 diagnostic, \ 86 experimental, \ 87 notproduct, \ 88 range, \ 89 constraint) \ 90 \ 91 product(intx, UseVIS, 99, \ 92 "Highest supported VIS instructions set on SPARC") \ 93 range(0, 99) \ 94 \ 95 product(bool, UseCBCond, false, \ 96 "Use compare and branch instruction on SPARC") \ 97 \ 98 product(bool, UseMPMUL, false, \ 99 "Use multi-precision multiply instruction (mpmul) on SPARC") \ 100 \ 101 product(bool, UseBlockZeroing, false, \ 102 "Use special cpu instructions for block zeroing") \ 103 \ 104 product(intx, BlockZeroingLowLimit, 2048, \ 105 "Minimum size in bytes when block zeroing will be used") \ 106 range(1, max_jint) \ 107 \ 108 product(bool, UseBlockCopy, false, \ 109 "Use special cpu instructions for block copy") \ 110 \ 111 product(intx, BlockCopyLowLimit, 2048, \ 112 "Minimum size in bytes when block copy will be used") \ 113 range(1, max_jint) \ 114 \ 115 product(bool, UseNiagaraInstrs, false, \ 116 "Use Niagara-efficient instruction subset") \ 117 \ 118 develop(bool, UseCASForSwap, false, \ 119 "Do not use swap instructions, but only CAS (in a loop) on SPARC")\ 120 \ 121 product(uintx, ArraycopySrcPrefetchDistance, 0, \ 122 "Distance to prefetch source array in arraycopy") \ 123 constraint(ArraycopySrcPrefetchDistanceConstraintFunc, AfterErgo) \ 124 \ 125 product(uintx, ArraycopyDstPrefetchDistance, 0, \ 126 "Distance to prefetch destination array in arraycopy") \ 127 constraint(ArraycopyDstPrefetchDistanceConstraintFunc, AfterErgo) \ 128 129 #endif // CPU_SPARC_GLOBALS_SPARC_HPP | 63 #define MIN_STACK_RED_PAGES DEFAULT_STACK_RED_PAGES 64 #define MIN_STACK_SHADOW_PAGES DEFAULT_STACK_SHADOW_PAGES 65 #define MIN_STACK_RESERVED_PAGES (0) 66 67 define_pd_global(intx, StackYellowPages, DEFAULT_STACK_YELLOW_PAGES); 68 define_pd_global(intx, StackRedPages, DEFAULT_STACK_RED_PAGES); 69 define_pd_global(intx, StackShadowPages, DEFAULT_STACK_SHADOW_PAGES); 70 define_pd_global(intx, StackReservedPages, DEFAULT_STACK_RESERVED_PAGES); 71 72 define_pd_global(bool, RewriteBytecodes, true); 73 define_pd_global(bool, RewriteFrequentPairs, true); 74 75 define_pd_global(bool, PreserveFramePointer, false); 76 77 define_pd_global(uintx, TypeProfileLevel, 111); 78 79 define_pd_global(bool, CompactStrings, true); 80 81 define_pd_global(intx, InitArrayShortSize, 8*BytesPerLong); 82 83 #include "runtime/flags/jvmFlag.hpp" 84 PRODUCT_FLAG(intx, UseVIS, 99, JVMFlag::RANGE, 85 "Highest supported VIS instructions set on SPARC"); 86 FLAG_RANGE( UseVIS, 0, 99); 87 88 PRODUCT_FLAG(bool, UseCBCond, false, JVMFlag::DEFAULT, 89 "Use compare and branch instruction on SPARC"); 90 91 PRODUCT_FLAG(bool, UseMPMUL, false, JVMFlag::DEFAULT, 92 "Use multi-precision multiply instruction (mpmul) on SPARC"); 93 94 PRODUCT_FLAG(bool, UseBlockZeroing, false, JVMFlag::DEFAULT, 95 "Use special cpu instructions for block zeroing"); 96 97 PRODUCT_FLAG(intx, BlockZeroingLowLimit, 2048, JVMFlag::RANGE, 98 "Minimum size in bytes when block zeroing will be used"); 99 FLAG_RANGE( BlockZeroingLowLimit, 1, max_jint); 100 101 PRODUCT_FLAG(bool, UseBlockCopy, false, JVMFlag::DEFAULT, 102 "Use special cpu instructions for block copy"); 103 104 PRODUCT_FLAG(intx, BlockCopyLowLimit, 2048, JVMFlag::RANGE, 105 "Minimum size in bytes when block copy will be used"); 106 FLAG_RANGE( BlockCopyLowLimit, 1, max_jint); 107 108 PRODUCT_FLAG(bool, UseNiagaraInstrs, false, JVMFlag::DEFAULT, 109 "Use Niagara-efficient instruction subset"); 110 111 DEVELOP_FLAG(bool, UseCASForSwap, false, JVMFlag::DEFAULT, 112 "Do not use swap instructions, but only CAS (in a loop) on SPARC"); 113 114 PRODUCT_FLAG(uintx, ArraycopySrcPrefetchDistance, 0, JVMFlag::CONSTRAINT, 115 "Distance to prefetch source array in arraycopy"); 116 FLAG_CONSTRAINT( ArraycopySrcPrefetchDistance, (void*)ArraycopySrcPrefetchDistanceConstraintFunc, JVMFlag::AfterErgo); 117 118 PRODUCT_FLAG(uintx, ArraycopyDstPrefetchDistance, 0, JVMFlag::CONSTRAINT, 119 "Distance to prefetch destination array in arraycopy"); 120 FLAG_CONSTRAINT( ArraycopyDstPrefetchDistance, (void*)ArraycopyDstPrefetchDistanceConstraintFunc, JVMFlag::AfterErgo); 121 #endif // CPU_SPARC_GLOBALS_SPARC_HPP |