RFR(XS): 8183233: [MVT] "unexpected value type klass" assert in ValueTypeNode::is_loaded()
Tobias Hartmann
tobias.hartmann at oracle.com
Wed Jul 5 16:47:08 UTC 2017
Hi,
here's the new fix:
http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.28/
I had to compare the name instead of the Klass because SystemDictionary::___Value_klass() is not available. If value types are disabled, CompileTheWorld now simply skips the methods:
CompileTheWorld (18361) : java/lang/__Value
CompileTheWorld (18361) : Skipping method: java.lang.__Value.<init>()V
CompileTheWorld (18361) : Skipping method: java.lang.__Value.equals(Ljava/lang/Object;)Z
CompileTheWorld (18361) : Skipping method: java.lang.__Value.toString()Ljava/lang/String;
CompileTheWorld (18361) : Skipping method: java.lang.__Value.hashCode()I
CompileTheWorld (18361) : Skipping method: java.lang.__Value.getClass()Ljava/lang/Class;
Best regards,
Tobias
On 05.07.2017 16:23, Tobias Hartmann wrote:
> Hi Karen,
>
> On 05.07.2017 15:46, Karen Kinnear wrote:
>> It seems wrong to me to enable MVT if CompileTheWorld is true.
>> It makes more sense to me to explicitly disable compiling java.lang.__Value if !EnableMVT && !EnableValhalla.
>
> Yes, that's correct but I was concerned that there are other points of friction where we may encounter __Value although MVT/Valhalla is not enabled. For example, in Class::isValueClass() we reference __Value [1]. Looking at it again, it shouldn't be a problem (it actually is the same with -Xcomp).
>
> That said, I agree that we should probably just disable compilation of __Value if CompileTheWorld is true. I'll prepare a new fix.
>
> Thanks,
> Tobias
>
> [1] http://cr.openjdk.java.net/~mchung/valhalla/webrevs/8181425/revised-fix/jdk/src/java.base/share/classes/java/lang/Class.java.sdiff.html
>
>>> On Jul 5, 2017, at 9:18 AM, Tobias Hartmann <tobias.hartmann at oracle.com> wrote:
>>>
>>> Thanks Roland!
>>>
>>> (I'll look at your changes as soon as possible, just very busy with other stuff atm).
>>>
>>> Best regards,
>>> Tobias
>>>
>>> On 05.07.2017 15:09, Roland Westrelin wrote:
>>>>
>>>>> http://cr.openjdk.java.net/~thartmann/valhalla/vt_prototype/webrev.27/
>>>>
>>>> Looks ok to me.
>>>>
>>>> Roland.
>>>>
>>
More information about the valhalla-dev
mailing list