Hi!

On Thu, Feb 01, 2018 at 12:26:41PM +0000, Kaushik Phatak wrote:
> --- gcc/config/rs6000/rs6000.c        (revision 256400)
> +++ gcc/config/rs6000/rs6000.c        (working copy)
> @@ -15799,8 +15799,10 @@
>                                       exp, target, false);
>      case ALTIVEC_BUILTIN_LVX:
>      case ALTIVEC_BUILTIN_LVX_V4SI:
> -      return altivec_expand_lv_builtin (CODE_FOR_altivec_lvx_v4si_2op,
> -                                     exp, target, false);
> +      return altivec_expand_lv_builtin (((TARGET_64BIT)
> +                                      ? CODE_FOR_altivec_lvx_v4si_2op
> +                                      : CODE_FOR_altivec_lvx_v4si_internal),
> +                                        exp, target, false);
>      case ALTIVEC_BUILTIN_LVX_V8HI:
>        return altivec_expand_lv_builtin (CODE_FOR_altivec_lvx_v8hi_2op,
>                                       exp, target, false);

I think you should use altivec_lvx_v4si_2op_si instead?

And the same needs to be done for v8hi, v16qi, v4sf, maybe more?


Segher

Reply via email to