This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH v2, rs6000] Tidy implementation of vec_ldl


Hi!

On Wed, Apr 04, 2018 at 10:32:58AM -0500, Kelvin Nilsen wrote:
> 2018-04-03  Kelvin Nilsen  <kelvin@gcc.gnu.org>
> 
>     * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Remove
>     erroneous entries for
>     "vector int vec_ldl (int, long int *)", and
>     "vector unsigned int vec_ldl (int, unsigned long int *)".
>     Add comments and entries for
>     "vector bool char vec_ldl (int, bool char *)",
>     "vector bool short vec_ldl (int, bool short *)",
>     "vector bool int vec_ldl (int, bool int *)",
>     "vector bool long long vec_ldl (int, bool long long *)",
>     "vector pixel vec_ldl (int, pixel *)",
>     "vector long long vec_ldl (int, long long *)",
>     "vector unsigned long long vec_ldl (int, unsigned long long *)".
>     * config/rs6000/rs6000.c (rs6000_init_builtins): Initialize new
>     type tree bool_long_long_type_node and correct definition of
>     bool_V2DI_type_node to make reference to this new type tree.
>     (rs6000_mangle_type): Replace erroneous reference to
>     bool_long_type_node with bool_long_long_type_node.
>     * config/rs6000/rs6000.h (enum rs6000_builtin_type_index): Add
>     comments to emphasize sign distinctions for char and int types and
>     replace RS6000_BTI_bool_long constant with
>     RS6000_BTI_bool_long_long constant.  Also add comment to restrict
>     use of RS6000_BTI_pixel.
>     (bool_long_type_node): Remove this macro definition.
>     (bool_long_long_type_node): New macro definition
> 
> gcc/testsuite/ChangeLog:
> 
> 2018-04-03  Kelvin Nilsen  <kelvin@gcc.gnu.org>
> 
>     * gcc.target/powerpc/vec-ldl-1.c: New test.
>     * gcc.dg/vmx/ops-long-1.c: Correct test programs to reflect
>     corrections to ABI implementation.

> --- gcc/config/rs6000/rs6000-c.c    (revision 258800)
> +++ gcc/config/rs6000/rs6000-c.c    (working copy)
> @@ -1656,27 +1656,45 @@ const struct altivec_builtin_types altivec_overloa
>      RS6000_BTI_V16QI, RS6000_BTI_INTSI, ~RS6000_BTI_INTQI, 0 },
>    { ALTIVEC_BUILTIN_VEC_LVEBX, ALTIVEC_BUILTIN_LVEBX,
>      RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI, ~RS6000_BTI_UINTQI, 0 
> },

You sent this as format=flowed, which a) makes replies look funny like
this, but also b) makes it impossible to apply your patches for someone
else.  Please fix this (for future patches, no need to resend this).

> --- gcc/config/rs6000/rs6000.h    (revision 258800)
> +++ gcc/config/rs6000/rs6000.h    (working copy)
> @@ -2578,7 +2578,7 @@ enum rs6000_builtin_type_index
>    RS6000_BTI_opaque_V2SF,
>    RS6000_BTI_opaque_p_V2SI,
>    RS6000_BTI_opaque_V4SI,
> -  RS6000_BTI_V16QI,
> +  RS6000_BTI_V16QI,              /* __vector signed char */
>    RS6000_BTI_V1TI,
>    RS6000_BTI_V2SI,
>    RS6000_BTI_V2SF,
> @@ -2588,7 +2588,7 @@ enum rs6000_builtin_type_index
>    RS6000_BTI_V4SI,
>    RS6000_BTI_V4SF,
>    RS6000_BTI_V8HI,
> -  RS6000_BTI_unsigned_V16QI,
> +  RS6000_BTI_unsigned_V16QI,     /* __vector unsigned char */
>    RS6000_BTI_unsigned_V1TI,
>    RS6000_BTI_unsigned_V8HI,
>    RS6000_BTI_unsigned_V4SI,

I don't think these comments help anything.


Okay for trunk.  Thanks!


Segher


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]