hg: valhalla/valhalla/langtools: Add support for tracking 'any'-related opcodes
john.r.rose at oracle.com
Mon Jul 28 21:10:59 UTC 2014
On Jul 28, 2014, at 12:53 PM, Dan Smith <daniel.smith at oracle.com> wrote:
> (Final note: it probably goes without saying, but there are other things besides bytecodes that need to be specialized, too, and eventually we'll want to come up with a comprehensive list of those things.)
The 'J' and 'D' types are a pain point, since they require slot pairs.
In the spirit of your 'nop' technique, I suggest allocating a slot-pair to each value of a specializable type. Treat the extra slot, if unused, as padding or a nop.
In the case of method parameters you cannot preallocate padding, but it's simple to work around: Copy the incoming parameter to a local slot-pair.
The JIT will make that stuff go away, just like nops.
More information about the valhalla-dev