Value Type on stack in the interpreter

John Rose john.r.rose at
Sat Apr 1 00:03:39 UTC 2017

On Mar 31, 2017, at 5:00 PM, John Rose <john.r.rose at> wrote:
> There are two choices:  1. store the type metadata in the carrier (on stack and in local),
> or 2. reaffirm the type metadata at every use site (not just vload/vstore).  #1 allows
> simpler bytecodes which put less load on the verifier.  A significant subset of #2
> is needed, anyway, for telling the GC where to find object references.  So #2 wins.

P.S. And that's before we get into layout-polymorphic generics and type variables
that include Q-values.  Those also require the robust carrier type of #2.  Option #1
was always a mirage.

More information about the valhalla-spec-observers mailing list