113 Atomic::release_store(&_method, m);
114 }
115
116 // has_appendix is currently the only other flag besides resolution_failed
117 void set_flags(bool has_appendix) {
118 u1 new_flags = (has_appendix << has_appendix_shift);
119 assert((new_flags & 1) == 0, "New flags should not change resolution flag");
120 // Preserve the resolution_failed bit
121 _flags = (_flags & 1) | new_flags;
122 }
123
124 void set_resolution_failed() {
125 _flags = _flags | 1;
126 }
127
128 void adjust_method_entry(Method* new_method) { _method = new_method; }
129 bool check_no_old_or_obsolete_entry();
130
131 // CDS
132 void remove_unshareable_info();
133
134 // Offsets
135 static ByteSize method_offset() { return byte_offset_of(ResolvedIndyEntry, _method); }
136 static ByteSize resolved_references_index_offset() { return byte_offset_of(ResolvedIndyEntry, _resolved_references_index); }
137 static ByteSize result_type_offset() { return byte_offset_of(ResolvedIndyEntry, _return_type); }
138 static ByteSize num_parameters_offset() { return byte_offset_of(ResolvedIndyEntry, _number_of_parameters); }
139 static ByteSize flags_offset() { return byte_offset_of(ResolvedIndyEntry, _flags); }
140 };
141
142 #endif // SHARE_OOPS_RESOLVEDINDYENTRY_HPP
|
113 Atomic::release_store(&_method, m);
114 }
115
116 // has_appendix is currently the only other flag besides resolution_failed
117 void set_flags(bool has_appendix) {
118 u1 new_flags = (has_appendix << has_appendix_shift);
119 assert((new_flags & 1) == 0, "New flags should not change resolution flag");
120 // Preserve the resolution_failed bit
121 _flags = (_flags & 1) | new_flags;
122 }
123
124 void set_resolution_failed() {
125 _flags = _flags | 1;
126 }
127
128 void adjust_method_entry(Method* new_method) { _method = new_method; }
129 bool check_no_old_or_obsolete_entry();
130
131 // CDS
132 void remove_unshareable_info();
133 void mark_and_relocate();
134
135 // Offsets
136 static ByteSize method_offset() { return byte_offset_of(ResolvedIndyEntry, _method); }
137 static ByteSize resolved_references_index_offset() { return byte_offset_of(ResolvedIndyEntry, _resolved_references_index); }
138 static ByteSize result_type_offset() { return byte_offset_of(ResolvedIndyEntry, _return_type); }
139 static ByteSize num_parameters_offset() { return byte_offset_of(ResolvedIndyEntry, _number_of_parameters); }
140 static ByteSize flags_offset() { return byte_offset_of(ResolvedIndyEntry, _flags); }
141 };
142
143 #endif // SHARE_OOPS_RESOLVEDINDYENTRY_HPP
|