Merge
authoramurillo
Fri, 20 May 2016 11:30:51 -0700
changeset 38645 3cffc9cf5ded
parent 38644 7d80e4a382f4 (current diff)
parent 38314 0369cc2a8493 (diff)
child 38646 49e5e88613bf
Merge
--- a/hotspot/.hgtags	Fri May 20 16:39:40 2016 +0000
+++ b/hotspot/.hgtags	Fri May 20 11:30:51 2016 -0700
@@ -521,3 +521,4 @@
 61a214186dae6811dd989e9165e42f7dbf02acde jdk-9+116
 88170d3642905b9e6cac03e8efcc976885a7e6da jdk-9+117
 9b1075cac08dc836ec32e7b368415cbe3aceaf8c jdk-9+118
+15f3fe264872766bcb205696198f0c1502420e17 jdk-9+119
--- a/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp	Fri May 20 16:39:40 2016 +0000
+++ b/hotspot/src/cpu/sparc/vm/macroAssembler_sparc.cpp	Fri May 20 11:30:51 2016 -0700
@@ -4767,6 +4767,7 @@
   assert(UseBlockZeroing && VM_Version::has_block_zeroing(), "only works with BIS zeroing");
   Register end = count;
   int cache_line_size = VM_Version::prefetch_data_size();
+  assert(cache_line_size > 0, "cache line size should be known for this code");
   // Minimum count when BIS zeroing can be used since
   // it needs membar which is expensive.
   int block_zero_size  = MAX2(cache_line_size*3, (int)BlockZeroingLowLimit);
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp	Fri May 20 16:39:40 2016 +0000
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp	Fri May 20 11:30:51 2016 -0700
@@ -49,7 +49,7 @@
   AllocatePrefetchDistance = allocate_prefetch_distance();
   AllocatePrefetchStyle    = allocate_prefetch_style();
 
-  if (!has_blk_init()) {
+  if (!has_blk_init() || cache_line_size <= 0) {
     if (AllocatePrefetchInstr == 1) {
       warning("BIS instructions required for AllocatePrefetchInstr 1 unavailable");
       FLAG_SET_DEFAULT(AllocatePrefetchInstr, 0);
@@ -87,7 +87,7 @@
       FLAG_SET_DEFAULT(InteriorEntryAlignment, 4);
     }
     if (is_niagara_plus()) {
-      if (has_blk_init() && UseTLAB &&
+      if (has_blk_init() && (cache_line_size > 0) && UseTLAB &&
           FLAG_IS_DEFAULT(AllocatePrefetchInstr)) {
         // Use BIS instruction for TLAB allocation prefetch.
         FLAG_SET_DEFAULT(AllocatePrefetchInstr, 1);