RFR: 8263834: Work around gdb <incomplete type> for HashtableEntry
Ioi Lam
iklam at openjdk.java.net
Fri Mar 19 07:02:39 UTC 2021
On Fri, 19 Mar 2021 06:51:42 GMT, David Holmes <dholmes at openjdk.org> wrote:
> Does this affect NMT?
It doesn't. The part of the code that interacts with NMT is unchanged:
template <MEMFLAGS F> BasicHashtableEntry<F>* BasicHashtable<F>::new_entry(unsigned int hashValue) {
BasicHashtableEntry<F>* entry = new_entry_free_list();
if (entry == NULL) {
if (_first_free_entry + _entry_size >= _end_block) {
int block_size = MAX2((int)_table_size / 2, (int)_number_of_entries); // pick a reasonable value
block_size = clamp(block_size, 2, 512); // but never go out of this range
int len = round_down_power_of_2(_entry_size * block_size);
assert(len >= _entry_size, "");
_first_free_entry = NEW_C_HEAP_ARRAY2(char, len, F, CURRENT_PC); <<<<<<< HERE
_entry_blocks.append(_first_free_entry);
_end_block = _first_free_entry + len;
}
entry = (BasicHashtableEntry<F>*)_first_free_entry;
_first_free_entry += _entry_size;
}
assert(_entry_size % HeapWordSize == 0, "");
entry->set_hash(hashValue);
return entry;
}
-------------
PR: https://git.openjdk.java.net/jdk/pull/3084
More information about the hotspot-dev
mailing list