On 01/10/2014 09:12 AM, Peter Maydell wrote:
> +    for (i = 0; i < elements; i++) {
> +        switch (opcode) {
> +        case 1: /* UZP1/2 */
> +        {
> +            int midpoint = elements / 2;
> +            if (i < midpoint) {
> +                read_vec_element(s, tcg_res, rn, 2 * i + part, size);
> +            } else {
> +                read_vec_element(s, tcg_res, rm,
> +                                 2 * (i - midpoint) + part, size);
> +            }
> +            break;
> +        }

You're generating up to 16 * 3 + 2 = 50 opcodes here.  I do wonder if it
wouldn't be better to implement these as helpers.  But,

Reviewed-by: Richard Henderson <r...@twiddle.net>


r~

Reply via email to