Hotspot loves PHP.reboot
John Rose
john.r.rose at oracle.com
Thu Sep 8 12:47:47 PDT 2011
On Sep 8, 2011, at 4:57 AM, Thomas Wuerthinger wrote:
> Why not the following code pattern? Does it generate too many bytecodes?
That's a reasonable alternative.
It generates data movement bytecodes O(L * M), where L is the average number of live values at deopt points and M is the number of deopt points. The quadratic exponent on bytecode size bothers me, at least a little.
The other pattern pins the live values into a common set of locals, reducing data movement bytecodes (and probably compiled code data movement).
Using Remi's trick of an invokedynamic instead of a varargs array, the number of data movement bytecodes can be cut down about 3x (no iconst/aastore). But it's still quadratic.
-- John
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/mlvm-dev/attachments/20110908/2ea1781d/attachment.html
More information about the mlvm-dev
mailing list