abandon all U-types, welcome to L-world (or, what I learned in Burlington)

forax at univ-mlv.fr forax at univ-mlv.fr
Sun Nov 19 23:33:10 UTC 2017


----- Mail original -----
> De: "John Rose" <john.r.rose at oracle.com>
> À: "Remi Forax" <forax at univ-mlv.fr>
> Cc: "valhalla-spec-experts" <valhalla-spec-experts at openjdk.java.net>
> Envoyé: Lundi 20 Novembre 2017 00:06:20
> Objet: Re: abandon all U-types, welcome to L-world (or, what I learned in Burlington)

> On Nov 19, 2017, at 2:47 PM, Remi Forax <forax at univ-mlv.fr> wrote:
>> 
>> The claim is that Object is used more as the root of any types like in
>> collections than as the root of all references like in System.out.println().
> 
> 
> Object and interfaces play the role of top types. One view is that we are making
> object act more like an interface.

ah, yes,
it makes the whole model far simpler.

> 
> Also we don’t add any new carrier types to the interpreter.

but you need a way disambiguate a reference type from a value type at runtime in the interpreter.
You also nedd to teach JITs to propagate L vs which Q info on local variables for generics specialization (and it works even if the inlining fails because the boxing/wrapping in the thread local storage is done by the adapters so the JITed code doesn't have to be conservative).

Rémi


More information about the valhalla-spec-observers mailing list