On 2015-11-12 01:10, John Rose wrote:
For better maintainability, I think the zero and identity forms should be 
created together, not in separate twin code blocks.

I think this is a safer, saner way to inject laziness here:

- private static void createIdentityForms() {
+ // Create LF_zero, LF_identity, etc., for the given type.
+ private static void createIdentityForms(BasicType type) {

It means that groups of LFs get lazily created; if that is tolerable for the 
present purpose, it's easier to reason about.

— John

How about this:

http://cr.openjdk.java.net/~redestad/8142487/webrev.02

I'm seeing no increase in number of LambdaForms or NamedFunctions created by merging it all back into one method, while getting rid of MN_* arrays.

I fixed the obvious mistake in sun.invoke.util.WrapperTest w.r.t byte/char, and since these tests fail against JDK-8141678 I wouldn't mind keeping it around.

/Claes

Reply via email to