Updated SoV documents

Brian Goetz brian.goetz at oracle.com
Thu Apr 2 16:26:18 UTC 2020

Hi Tobi;

I don't have an answer for you offhand, but the current "eclair" model 
eliminates one of the reasons we needed the new syntax for C_Class -- 
that a class name could refer to two VM-level types. This is no longer 
the case; each VM type corresponds to exactly one classfile.

The reason I can't give you an unqualified yes at this point is that I 
am not sure whether we still need to include a "Q" somewhere as a 
preload signal.  When Q descriptors appear in certain places (e.g., 
field declarations), they generate load order constraints, and in other 
places, they generate nullity assumptions.

I will leave it to Frederic to answer whether we have run out of reasons 
to need anything other than binary class names in C_Class structures.  
(It would be nice if we have!)

On 4/1/2020 10:19 AM, Tobi Ajila wrote:
> Hi Brian
> Thanks for the updated SoV docs. In section 4, it mentions:
> > In most cases, such as field descriptors and method descriptors, 
> uses of C.ref is translated as LC$ref;, uses of C.val is translated as 
> QC$val;,
> In the LW2 spec the `name_index` in `CONSTANT_Class_info` structures 
> could refer to "binary class or interface name" as well as 
> "ReferenceType descriptors" which referenced UTF8s with 'Q' 
> descriptors. In LW2 inline-types were both nullable and null-free so 
> it was necessary to have ReferenceType descriptors in order make a 
> distinction in CONSTANT_Class_info structures for things like 
> allocating arrays. With the new model inline-types can only be 
> null-free, so will the CONSTANT_Class_info structures be limited to 
> binary class or interface names? or will ReferenceType descriptors be 
> used for inline-types?
> --Tobi
> "valhalla-spec-experts" 
> <valhalla-spec-experts-bounces at openjdk.java.net> wrote on 2020/03/27 
> 03:59:38 PM:
> > From: Brian Goetz <brian.goetz at oracle.com>
> > To: valhalla-spec-experts <valhalla-spec-experts at openjdk.java.net>
> > Date: 2020/03/27 03:59 PM
> > Subject: [EXTERNAL] Updated SoV documents
> > Sent by: "valhalla-spec-experts" <valhalla-spec-experts-
> > bounces at openjdk.java.net>
> >
> > I've updated the SoV documents, including the new sections on VM
> > model and translation:
> >
> > http://cr.openjdk.java.net/~briangoetz/valhalla/sov/01-background.html
> >

More information about the valhalla-spec-observers mailing list