comparison src/cpu/sparc/vm/vm_version_sparc.hpp @ 3892:baf763f388e6

7059037: Use BIS for zeroing on T4 Summary: Use BIS for zeroing new allocated big (2Kb and more) objects and arrays. Reviewed-by: never, twisti, ysr
author kvn
date Fri, 26 Aug 2011 08:52:22 -0700
parents 1af104d6cf99
children 8cb110fd7627
comparison
equal deleted inserted replaced
3891:ac8738449b6f 3892:baf763f388e6
133 static bool has_fast_idiv() { return is_niagara_plus() || is_sparc64(); } 133 static bool has_fast_idiv() { return is_niagara_plus() || is_sparc64(); }
134 134
135 // T4 and newer Sparc have fast RDPC instruction. 135 // T4 and newer Sparc have fast RDPC instruction.
136 static bool has_fast_rdpc() { return is_T4(); } 136 static bool has_fast_rdpc() { return is_T4(); }
137 137
138 // T4 and newer Sparc have Most-Recently-Used (MRU) BIS. 138 // On T4 and newer Sparc BIS to the beginning of cache line always zeros it.
139 static bool has_mru_blk_init() { return has_blk_init() && is_T4(); } 139 static bool has_block_zeroing() { return has_blk_init() && is_T4(); }
140 140
141 static const char* cpu_features() { return _features_str; } 141 static const char* cpu_features() { return _features_str; }
142 142
143 static intx prefetch_data_size() { 143 static intx prefetch_data_size() {
144 return is_T4() ? 32 : 64; // default prefetch block size on sparc 144 return is_T4() ? 32 : 64; // default prefetch block size on sparc