ConstantPoolCacheEntry::print() should use its first argument

Krystal Mok rednaxelafx at gmail.com
Thu Feb 23 00:52:34 PST 2012


Hi all,

A minor issue:
Running experiments that crash the VM lead me to some weird output on
stdout during VM error reporting [1].

Turns out it's from ConstantPoolCacheEntry::print(outputStream* st, int
index). But instead of printing to "st", it's printing to "tty".

The call path:

os::print_register_info(outputStream *st, void *context)
  os::print_location(outputStream* st, intptr_t x, bool verbose)
    oopDesc::print_on(outputStream* st)
      constantPoolCacheKlass::oop_print_on(oop obj, outputStream* st)
        ConstantPoolCacheEntry::print(outputStream* st, int index)

I checked that the last function is the only one not using the "st"
argument.

A patch to fix it, diff against jdk8/jdk8/hotspot master: [2]
Could anyone please sponsor this patch?

Regards,
Kris Mok

[1]: https://gist.github.com/1891517#file_command_prompt
[2]: https://gist.github.com/1891517#file_fix_against_jdk8_master.patch
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/attachments/20120223/d82f03f2/attachment.html 


More information about the hotspot-runtime-dev mailing list