On 03/21/2014 07:54 PM, John Rose wrote:
On Mar 21, 2014, at 8:49 AM, Vladimir Ivanov <vladimir.x.iva...@oracle.com <mailto:vladimir.x.iva...@oracle.com>> wrote:

Thanks for the feedback.

What do you think about the following:
http://cr.openjdk.java.net/~vlivanov/8037210/webrev.01/ <http://cr.openjdk.java.net/%7Evlivanov/8037210/webrev.01/>

That looks nice. Strong typing; who woulda' thunk it. :-)

The uses of ".ordinal()" are the extra cost relative to using just small integers. They seem totally reasonable in the code.

I suggest either wrapping "ordinal" as something like "id" or else changing temp names like "id" to "ord", to reinforce the use of a common name.

Don't make the enum class public. And especially don't make the mutable arrays public:

+ public static final BasicType[] ALL_TYPES = { L_TYPE, I_TYPE, J_TYPE, F_TYPE, D_TYPE, V_TYPE }; + public static final BasicType[] ARG_TYPES = { L_TYPE, I_TYPE, J_TYPE, F_TYPE, D_TYPE };

— John

P.S. That would only be safe if we had (what we don't yet) a notion of frozen arrays like:

+ public static final BasicType final[] ALL_TYPES = { L_TYPE, I_TYPE, J_TYPE, F_TYPE, D_TYPE, V_TYPE }; + public static final BasicType final[] ARG_TYPES = { L_TYPE, I_TYPE, J_TYPE, F_TYPE, D_TYPE };

or
public static final BasicType[] ARG_TYPES = { L_TYPE, I_TYPE, J_TYPE, F_TYPE, D_TYPE }.frozen();

because frozen() is a dynamic property.

Rémi

_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to