Request for reviews (XL): 6894206: JVM needs a way to traverse method handle structures
Vladimir Kozlov
Vladimir.Kozlov at Sun.COM
Tue Dec 1 10:22:17 PST 2009
Christian Thalinger wrote:
> On Mon, 2009-11-30 at 12:35 -0800, Vladimir Kozlov wrote:
>> vmSymbols.cpp
>>
>> Also log2_SID_LIMIT == 10 and with log2_FLAG_LIMIT == 4 you
>> leave only 6 bits (63, 31 without sign) for klass id.
>> Will it be enough? You should add assert to check it in
>> vmSymbols::initialize().
>>
>> Your asserts should use max values, something like this:
>>
>> ! assert(((ID4(1021,1022,1023,15) >> shift) & mask) == 1021, "");
>>
>> which will fail because of the above (you have to use 31 instead of 1021).
>
> It's John's code and I don't know if 6 bits are enough, but I did the
> changes you suggested.
>
I am concern about this since there are more then 100 classes defined in vmSymbols.hpp.
May be we should use log2_SID_LIMIT == 9 then it will be 9+9+9+4=31 and
511 is enough, I think, to cover all klasses, methods, signatures.
Vladimir
More information about the hotspot-compiler-dev
mailing list