On Wed, Apr 27, 2016 at 01:30:54PM -0500, Bill Schmidt wrote:
> 2016-04-27  Bill Schmidt  <wschm...@linux.vnet.ibm.com>
> 
>       * config/rs6000/altivec.h: Change definitions of vec_xl and
>       vec_xst.
>       * config/rs6000/rs6000-builtin.def (LD_ELEMREV_V2DF): New.
>       (LD_ELEMREV_V2DI): New.
>       (LD_ELEMREV_V4SF): New.
>       (LD_ELEMREV_V4SI): New.
>       (LD_ELEMREV_V8HI): New.
>       (LD_ELEMREV_V16QI): New.
>       (ST_ELEMREV_V2DF): New.
>       (ST_ELEMREV_V2DI): New.
>       (ST_ELEMREV_V4SF): New.
>       (ST_ELEMREV_V4SI): New.
>       (ST_ELEMREV_V8HI): New.
>       (ST_ELEMREV_V16QI): New.
>       (XL): New.
>       (XST): New.
>       * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
>       descriptions for VSX_BUILTIN_VEC_XL and VSX_BUILTIN_VEC_XST.
>       * config/rs6000/rs6000.c (rs6000_builtin_mask_calculate): Map from
>       TARGET_P9_VECTOR to RS6000_BTM_P9_VECTOR.
>       (altivec_expand_builtin): Add handling for
>       VSX_BUILTIN_ST_ELEMREV_<MODE> and VSX_BUILTIN_LD_ELEMREV_<MODE>.
>       (rs6000_invalid_builtin): Add error-checking for
>       RS6000_BTM_P9_VECTOR.
>       (altivec_init_builtins): Define builtins used to implement vec_xl
>       and vec_xst.
>       (rs6000_builtin_mask_names): Define power9-vector.
>       * config/rs6000/rs6000.h (MASK_P9_VECTOR): Define.
>       (RS6000_BTM_P9_VECTOR): Define.
>       (RS6000_BTM_COMMON): Include RS6000_BTM_P9_VECTOR.
>       * config/rs6000/vsx.md (vsx_ld_elemrev_v2di): New define_insn.
>       (vsx_ld_elemrev_v2df): Likewise.
>       (vsx_ld_elemrev_v4sf): Likewise.
>       (vsx_ld_elemrev_v4si): Likewise.
>       (vsx_ld_elemrev_v8hi): Likewise.
>       (vsx_ld_elemrev_v16qi): Likewise.
>       (vsx_st_elemrev_v2df): Likewise.
>       (vsx_st_elemrev_v2di): Likewise.
>       (vsx_st_elemrev_v4sf): Likewise.
>       (vsx_st_elemrev_v4si): Likewise.
>       (vsx_st_elemrev_v8hi): Likewise.
>       (vsx_st_elemrev_v16qi): Likewise.
>       * doc/extend.texi: Add prototypes for vec_xl and vec_xst.  Correct
>       grammar.
> 
> [gcc/testsuite]
> 
> 2016-04-27  Bill Schmidt  <wschm...@linux.vnet.ibm.com>
> 
>       * gcc.target/powerpc/vsx-elemrev-1.c: New.
>       * gcc.target/powerpc/vsx-elemrev-2.c: New.
>       * gcc.target/powerpc/vsx-elemrev-3.c: New.
>       * gcc.target/powerpc/vsx-elemrev-4.c: New.

This is okay for trunk.  One nit:

>  #define RS6000_BTM_P8_VECTOR MASK_P8_VECTOR  /* ISA 2.07 vector.  */
> +#define RS6000_BTM_P9_VECTOR MASK_P9_VECTOR  /* ISA 3.00 vector.  */

> +If the ISA 3.00 additions to the vector/scalar (power9-vector)

It's called "ISA 3.0".

Thanks,


Segher

Reply via email to