review for 7035161: assert(!o->is_null_object()) failed: null object not yet handled here.
tom.rodriguez at oracle.com
Fri Apr 8 15:01:28 PDT 2011
On Apr 8, 2011, at 2:51 PM, Vladimir Kozlov wrote:
> Can we just move it after type() call?:
I started to do that but we really should be using Handles for safety so I made that change instead. It's a long enough piece of code that I think a handle is warranted. Thanks!
> 71 BasicType field_btype = field->type()->basic_type();
> 72 int offset = field->offset();
> 69 oop obj = get_oop();
> 70 assert(obj != NULL, "bad oop");
> I agree that using handle is much safer and I am fine if you want to push code with handle.
> Tom Rodriguez wrote:
>> 7035161: assert(!o->is_null_object()) failed: null object not yet handled here.
>> There's a bare oop across the call to ciField::type which might cause
>> a safepoint resulting in the field being read from a stale oop.
>> Tested with crashing test nsk.stress.jck12a.jck12a006.jck12a006.
More information about the hotspot-compiler-dev