RFR (L) 8037210: Get rid of char-based descriptions 'J' of basic types

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Mar 21 22:08:07 UTC 2014


John, thanks for the feedback.

Updated webrev:
http://cr.openjdk.java.net/~vlivanov/8037210/webrev.02

Also moved LambdaForm.testShortenSignature() into a stand-alone unit test.

Best regards,
Vladimir Ivanov

On 3/21/14 10:54 PM, John Rose wrote:
> On Mar 21, 2014, at 8:49 AM, Vladimir Ivanov
> <vladimir.x.ivanov at oracle.com <mailto:vladimir.x.ivanov at oracle.com>> wrote:
>
>> Thanks for the feedback.
>>
>> What do you think about the following:
>> http://cr.openjdk.java.net/~vlivanov/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 };
>
>
>
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
>


More information about the mlvm-dev mailing list