src/share/vm/ci/ciInstanceKlass.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
hotspot Cdiff src/share/vm/ci/ciInstanceKlass.hpp
src/share/vm/ci/ciInstanceKlass.hpp
Print this page
rev 7840 : 8071821: Assert failed in UnexpectedDeoptimizationTest.java
Summary: assert fires in case of concurrent initialization of ciInstanceKlass::_has_injected_fields
Reviewed-by:
*** 70,81 ****
// NULL: no implementor.
// A ciInstanceKlass that's not itself: one implementor.
// Itsef: more than one implementors.
ciInstanceKlass* _implementor;
! bool compute_injected_fields();
! void compute_injected_fields_helper();
protected:
ciInstanceKlass(KlassHandle h_k);
ciInstanceKlass(ciSymbol* name, jobject loader, jobject protection_domain);
--- 70,81 ----
// NULL: no implementor.
// A ciInstanceKlass that's not itself: one implementor.
// Itsef: more than one implementors.
ciInstanceKlass* _implementor;
! void compute_injected_fields();
! bool compute_injected_fields_helper();
protected:
ciInstanceKlass(KlassHandle h_k);
ciInstanceKlass(ciSymbol* name, jobject loader, jobject protection_domain);
*** 191,201 ****
return _nonstatic_fields->length();
}
bool has_injected_fields() {
if (_has_injected_fields == -1) {
! return compute_injected_fields();
}
return _has_injected_fields > 0 ? true : false;
}
// nth nonstatic field (presented by ascending address)
--- 191,201 ----
return _nonstatic_fields->length();
}
bool has_injected_fields() {
if (_has_injected_fields == -1) {
! compute_injected_fields();
}
return _has_injected_fields > 0 ? true : false;
}
// nth nonstatic field (presented by ascending address)
src/share/vm/ci/ciInstanceKlass.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File