comparison src/cpu/sparc/vm/vm_version_sparc.cpp @ 6610:f99a36499b8c

7192128: G1: Extend fix for 6948537 to G1's BOT Summary: G1 does not appear to be immune to the issue described in CR 6948537 and increasing the size of old-generation PLABs appears to increase the liklihood of seeing the issue. Extend the fix for 6948537 to G1's BlockOffsetTable. Reviewed-by: brutisso, jmasa
author johnc
date Tue, 21 Aug 2012 10:05:57 -0700
parents 8c92982cbbc4
children 7eca5de9e0b6
comparison
equal deleted inserted replaced
6597:3958f0acde31 6610:f99a36499b8c
104 } 104 }
105 // Align loops on a single instruction boundary. 105 // Align loops on a single instruction boundary.
106 if (FLAG_IS_DEFAULT(OptoLoopAlignment)) { 106 if (FLAG_IS_DEFAULT(OptoLoopAlignment)) {
107 FLAG_SET_DEFAULT(OptoLoopAlignment, 4); 107 FLAG_SET_DEFAULT(OptoLoopAlignment, 4);
108 } 108 }
109 // When using CMS, we cannot use memset() in BOT updates because 109 // When using CMS or G1, we cannot use memset() in BOT updates
110 // the sun4v/CMT version in libc_psr uses BIS which exposes 110 // because the sun4v/CMT version in libc_psr uses BIS which
111 // "phantom zeros" to concurrent readers. See 6948537. 111 // exposes "phantom zeros" to concurrent readers. See 6948537.
112 if (FLAG_IS_DEFAULT(UseMemSetInBOT) && UseConcMarkSweepGC) { 112 if (FLAG_IS_DEFAULT(UseMemSetInBOT) && (UseConcMarkSweepGC || UseG1GC)) {
113 FLAG_SET_DEFAULT(UseMemSetInBOT, false); 113 FLAG_SET_DEFAULT(UseMemSetInBOT, false);
114 } 114 }
115 #ifdef _LP64 115 #ifdef _LP64
116 // 32-bit oops don't make sense for the 64-bit VM on sparc 116 // 32-bit oops don't make sense for the 64-bit VM on sparc
117 // since the 32-bit VM has the same registers and smaller objects. 117 // since the 32-bit VM has the same registers and smaller objects.