RFR (S): 8000263: JSR 292: signature types may appear to be unloaded
Christian Thalinger
christian.thalinger at oracle.com
Fri Oct 5 09:15:38 PDT 2012
On Oct 4, 2012, at 5:12 PM, John Rose <john.r.rose at oracle.com> wrote:
> On Oct 4, 2012, at 3:51 PM, Christian Thalinger wrote:
>
>> http://cr.openjdk.java.net/~twisti/8000263
>>
>> 8000263: JSR 292: signature types may appear to be unloaded
>
> Good work. I very much like the 'is_public' assertion in 'check_wk_pre_link_klasses'.
>
> I mechanically checked that the whitespace change in systemDictionary.hpp is mixed with no other effects,
> besides changing some occurrences of Pre or Pre_JSR292 to Pre_Link or Pre?
>
> Consider changing Opt to Pre for LambdaForm, if you agree that is a reasonable cleanup. That type is no longer optional.
I tried that but running Queens fails then because we are still using 7 as JDK.
>
> I think the following code would be simpler and more directly correct in 'sharpen_unsafe_type':
> if (sharpened_klass != NULL && !sharpened_klass->is_loaded())
> return NULL;
Hmm. Returning null is okay here? Have to take a look again.
>
> Issue: Are intrinsics still properly recognized, even though 'find_well_known_klass' is restricted?
Why wouldn't they? But I will check that.
>
> The function vmIntrinsics::method_for bothers me still.
> Maybe add a FIXME comment pointing out that it doesn't work for all intrinsics. Or, add a boolean parameter:
>
> Klass* SystemDictionary::find_well_known_klass(Symbol* class_name, bool link_all = false) {
> ... if (option == Pre_Link || link_all) ...
> }
>
> Or, find a way to get rid of vmIntrinsics::method_for, since it is not used much.
Ah, forgot about it. I will remove it and send a new webrev.
-- Chris
>
> Thanks,
> — John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/hotspot-compiler-dev/attachments/20121005/78d02d00/attachment-0001.html
More information about the hotspot-compiler-dev
mailing list