hg: valhalla/valhalla/langtools: Add support for tracking 'any'-related opcodes

John Rose 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.

— John


More information about the valhalla-dev mailing list