RFR (L) : 8014013 : CallInfo structure no longer accurately reports the result of a LinkResolver operation

David Holmes david.holmes at oracle.com
Sun Aug 18 21:04:09 PDT 2013

On 19/08/2013 8:24 AM, David Chase wrote:
> A question about err_msg_res -- should that generally be used in place of err_msg,
> or only in certain source directories, and if so, which ones?

I can't answer that but be aware that there is an issue with using 
err_msg_res as it is unclear as to whom has responsibility for ensuring 
there is a ResourceMark on the stack. There's an open bug on that - 8022187.


> On 2013-08-17, at 1:41 AM, John Rose <john.r.rose at oracle.com> wrote:
>> On Aug 16, 2013, at 1:05 PM, David Chase <david.r.chase at oracle.com> wrote:
>>> How does this look?
>>> void fieldDescriptor::reinitialize(InstanceKlass* ik, int index) {
>>>   if (_cp.is_null() || field_holder() != ik) {
>>>     _cp = constantPoolHandle(Thread::current(), ik->constants());
>>>     // _cp should now reference ik's constant pool; i.e., ik is now field_holder.
>>>     assert(field_holder() == ik, "must be already initialized to this class");
>> Good.
>> As a side note, this bit of code (and many others) assume that there is a 1-1 correspondence between constant pools and instance klasses.
>> I hope we can change this some day; the tracking bug is http://bugs.sun.com/view_bug.do?bug_id=6711913
>> — John

More information about the hotspot-compiler-dev mailing list