RFR: 8253402: Convert vmSymbols::SID to enum class [v4]
Ioi Lam
iklam at openjdk.java.net
Wed Oct 14 03:32:18 UTC 2020
On Tue, 13 Oct 2020 20:46:45 GMT, Ioi Lam <iklam at openjdk.org> wrote:
>> src/hotspot/share/classfile/vmSymbols.hpp line 728:
>>
>>> 726:
>>> 727: static constexpr int number_of_symbols() {
>>> 728: return SID_LIMIT;
>>
>> SID_LIMIT includes NO_SID, so this seems to be off-by-one.
>
> I changed NO_SID to -1 so SID_LIMIT no longer includes NO_SID.
I needed to revert NO_SID to 0. There's an assert in vmSymbols.cpp for `Symbol::_vm_symbols[NO_SID] == NULL`. This is
pre-existing code and I don't understand why, but I should leave it as. As you can see in the old code, NO_SID is also
counted as "part of the symbols"
- static vmSymbols::SID vm_symbol_index[vmSymbols::SID_LIMIT];
+ static vmSymbolID vm_symbol_index[vmSymbols::number_of_symbols()];
-------------
PR: https://git.openjdk.java.net/jdk/pull/276
More information about the hotspot-dev
mailing list