< prev index next >

src/hotspot/cpu/ppc/vm_version_ppc.cpp

Print this page
rev 47400 : [mq]: cmpxchg_ptr


 132                (has_popcntb() ? " popcntb" : ""),
 133                (has_popcntw() ? " popcntw" : ""),
 134                (has_fcfids()  ? " fcfids"  : ""),
 135                (has_vand()    ? " vand"    : ""),
 136                (has_lqarx()   ? " lqarx"   : ""),
 137                (has_vcipher() ? " aes"     : ""),
 138                (has_vpmsumb() ? " vpmsumb" : ""),
 139                (has_tcheck()  ? " tcheck"  : ""),
 140                (has_mfdscr()  ? " mfdscr"  : ""),
 141                (has_vsx()     ? " vsx"     : ""),
 142                (has_ldbrx()   ? " ldbrx"   : ""),
 143                (has_stdbrx()  ? " stdbrx"  : ""),
 144                (has_vshasig() ? " sha"     : "")
 145                // Make sure number of %s matches num_features!
 146               );
 147   _features_string = os::strdup(buf);
 148   if (Verbose) {
 149     print_features();
 150   }
 151 
 152   // PPC64 supports 8-byte compare-exchange operations (see
 153   // Atomic::cmpxchg and StubGenerator::generate_atomic_cmpxchg_ptr)
 154   // and 'atomic long memory ops' (see Unsafe_GetLongVolatile).
 155   _supports_cx8 = true;
 156 
 157   // Used by C1.
 158   _supports_atomic_getset4 = true;
 159   _supports_atomic_getadd4 = true;
 160   _supports_atomic_getset8 = true;
 161   _supports_atomic_getadd8 = true;
 162 
 163   UseSSE = 0; // Only on x86 and x64
 164 
 165   intx cache_line_size = L1_data_cache_line_size();
 166 
 167   if (FLAG_IS_DEFAULT(AllocatePrefetchStyle)) AllocatePrefetchStyle = 1;
 168 
 169   if (AllocatePrefetchStyle == 4) {
 170     AllocatePrefetchStepSize = cache_line_size; // Need exact value.
 171     if (FLAG_IS_DEFAULT(AllocatePrefetchLines)) AllocatePrefetchLines = 12; // Use larger blocks by default.
 172     if (AllocatePrefetchDistance < 0) AllocatePrefetchDistance = 2*cache_line_size; // Default is not defined?
 173   } else {




 132                (has_popcntb() ? " popcntb" : ""),
 133                (has_popcntw() ? " popcntw" : ""),
 134                (has_fcfids()  ? " fcfids"  : ""),
 135                (has_vand()    ? " vand"    : ""),
 136                (has_lqarx()   ? " lqarx"   : ""),
 137                (has_vcipher() ? " aes"     : ""),
 138                (has_vpmsumb() ? " vpmsumb" : ""),
 139                (has_tcheck()  ? " tcheck"  : ""),
 140                (has_mfdscr()  ? " mfdscr"  : ""),
 141                (has_vsx()     ? " vsx"     : ""),
 142                (has_ldbrx()   ? " ldbrx"   : ""),
 143                (has_stdbrx()  ? " stdbrx"  : ""),
 144                (has_vshasig() ? " sha"     : "")
 145                // Make sure number of %s matches num_features!
 146               );
 147   _features_string = os::strdup(buf);
 148   if (Verbose) {
 149     print_features();
 150   }
 151 
 152   // PPC64 supports 8-byte compare-exchange operations (see Atomic::cmpxchg)

 153   // and 'atomic long memory ops' (see Unsafe_GetLongVolatile).
 154   _supports_cx8 = true;
 155 
 156   // Used by C1.
 157   _supports_atomic_getset4 = true;
 158   _supports_atomic_getadd4 = true;
 159   _supports_atomic_getset8 = true;
 160   _supports_atomic_getadd8 = true;
 161 
 162   UseSSE = 0; // Only on x86 and x64
 163 
 164   intx cache_line_size = L1_data_cache_line_size();
 165 
 166   if (FLAG_IS_DEFAULT(AllocatePrefetchStyle)) AllocatePrefetchStyle = 1;
 167 
 168   if (AllocatePrefetchStyle == 4) {
 169     AllocatePrefetchStepSize = cache_line_size; // Need exact value.
 170     if (FLAG_IS_DEFAULT(AllocatePrefetchLines)) AllocatePrefetchLines = 12; // Use larger blocks by default.
 171     if (AllocatePrefetchDistance < 0) AllocatePrefetchDistance = 2*cache_line_size; // Default is not defined?
 172   } else {


< prev index next >