comparison src/share/vm/oops/instanceKlass.cpp @ 17728:b8413a9cbb84

8031752: Failed speculative optimizations should be reattempted when root of compilation is different Summary: support for speculative traps that keep track of the root of the compilation in which a trap occurs. Reviewed-by: kvn, twisti
author roland
date Tue, 25 Feb 2014 18:16:24 +0100
parents 85318d1fe8fe
children 62c54fcc0a35
comparison
equal deleted inserted replaced
17727:cfd4aac53239 17728:b8413a9cbb84
2232 2232
2233 void InstanceKlass::clean_method_data(BoolObjectClosure* is_alive) { 2233 void InstanceKlass::clean_method_data(BoolObjectClosure* is_alive) {
2234 for (int m = 0; m < methods()->length(); m++) { 2234 for (int m = 0; m < methods()->length(); m++) {
2235 MethodData* mdo = methods()->at(m)->method_data(); 2235 MethodData* mdo = methods()->at(m)->method_data();
2236 if (mdo != NULL) { 2236 if (mdo != NULL) {
2237 for (ProfileData* data = mdo->first_data(); 2237 mdo->clean_method_data(is_alive);
2238 mdo->is_valid(data);
2239 data = mdo->next_data(data)) {
2240 data->clean_weak_klass_links(is_alive);
2241 }
2242 ParametersTypeData* parameters = mdo->parameters_type_data();
2243 if (parameters != NULL) {
2244 parameters->clean_weak_klass_links(is_alive);
2245 }
2246 } 2238 }
2247 } 2239 }
2248 } 2240 }
2249 2241
2250 2242