comparison src/share/vm/oops/methodDataOop.hpp @ 189:0b27f3512f9e

6629727: assertion in set_trap_state() in methodDataOop.hpp is too strong. Summary: The assertion can failure due to race conditions. Reviewed-by: never
author jmasa
date Wed, 04 Jun 2008 13:51:09 -0700
parents e1e86702e43e
children d1605aabd0a1
comparison
equal deleted inserted replaced
160:23a06eca8e83 189:0b27f3512f9e
156 156
157 void set_trap_state(int new_state) { 157 void set_trap_state(int new_state) {
158 assert(ProfileTraps, "used only under +ProfileTraps"); 158 assert(ProfileTraps, "used only under +ProfileTraps");
159 uint old_flags = (_header._struct._flags & flag_mask); 159 uint old_flags = (_header._struct._flags & flag_mask);
160 _header._struct._flags = (new_state << trap_shift) | old_flags; 160 _header._struct._flags = (new_state << trap_shift) | old_flags;
161 assert(trap_state() == new_state, "sanity");
162 } 161 }
163 162
164 u1 flags() { 163 u1 flags() {
165 return _header._struct._flags; 164 return _header._struct._flags;
166 } 165 }