review for 7043040: JSR292: JRuby bench/shootout/binarytrees.ruby-2.ruby SEGV: constantPoolKlass::oop_follow_contents
tom.rodriguez at oracle.com
Tue May 10 14:36:05 PDT 2011
On May 10, 2011, at 2:24 PM, Vladimir Kozlov wrote:
> Can you move cp->tag_at(i) to local var before all checks?
> Is it possible for entry.get_oop() to return NULL?
> Tom Rodriguez wrote:
>> 7043040: JSR292: JRuby bench/shootout/binarytrees.ruby-2.ruby SEGV: constantPoolKlass::oop_follow_contents
>> The logic in oop_push_constants was skipping JVM_CONSTANT_Object
>> entries which would cause corruption in later GCs. The fix is to use
>> is_pointer_entry to identify roots like all the other visitor. The
>> verify_on method was also too weak so it missed the problem when run
>> with the verify GC flags. Tested with failing test from report.
More information about the hotspot-compiler-dev