src/share/vm/opto/library_call.cpp
Print this page
*** 2151,2161 ****
// The compile time filters did not reject base_oop/offset so
// we need to generate the following runtime filters
//
// if (offset == java_lang_ref_Reference::_reference_offset) {
// if (base != null) {
! // if (klass(base)->reference_type() != REF_NONE)) {
// pre_barrier(_, pre_val, ...);
// }
// }
// }
--- 2151,2161 ----
// The compile time filters did not reject base_oop/offset so
// we need to generate the following runtime filters
//
// if (offset == java_lang_ref_Reference::_reference_offset) {
// if (base != null) {
! // if (instance_of(base, java.lang.ref.Reference)) {
// pre_barrier(_, pre_val, ...);
// }
// }
// }
*** 2163,2174 ****
float unlikely = PROB_UNLIKELY(0.999);
IdealKit ideal(this);
#define __ ideal.
- const int reference_type_offset = in_bytes(instanceKlass::reference_type_offset());
-
Node* referent_off = __ ConX(java_lang_ref_Reference::referent_offset);
__ if_then(offset, BoolTest::eq, referent_off, unlikely); {
__ if_then(base_oop, BoolTest::ne, null(), likely); {
--- 2163,2172 ----