RFR(S): 8008242: VerifyOops fails on SPARC
Morris Meyer
morris.meyer at oracle.com
Tue Oct 8 06:34:00 PDT 2013
Thanks for the bringing that up Roland and Christian. I fixed this
issue and re-ran the change through JPRT.
Here's the patch.
--morris
WEBREV - http://cr.openjdk.java.net/8008242.02
On 10/7/13, 1:55 PM, Christian Thalinger wrote:
> On Oct 7, 2013, at 9:11 AM, Roland Westrelin <roland.westrelin at oracle.com> wrote:
>
>> Hi Morris,
>>
>>> Could I get a review of this P2 issue on SPARC? I had to fix some branch relocation issues first, before relaxing the oop verify in c1_LIRAssembler_sparc::type_profile_helper() and mem2reg().
>> Why did you change:
>>
>> 1391 __ verify_oop(src);
>>
>> in c1_LIRAssembler_sparc.cpp?
> I concur. Did you hit a problem here? The check is guarded by:
>
> if (addr->base()->type() == T_OBJECT) {
> - __ verify_oop(src);
> + __ verify_klass_ptr(src);
> }
>
> so this should trigger. If it does then we are propagating the wrong type somewhere.
>
>> It appears verify_klass_ptr() doesn't do anything currently so that nothing fails with this changed doesn't really prove it's correct.
> Correct; these methods are currently empty. When the runtime team removed perm-gen they added these methods but never implemented them. Not our issue. But the second change is definitely correct; the receiver is a Klass*.
>
>> Roland.
>>
More information about the hotspot-compiler-dev
mailing list