This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, rs6000] Add Power 9 support for vec_first builtins
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Carl Love <cel at us dot ibm dot com>
- Cc: Segher Boessenkool <segher at kernel dot crashing dot org>, gcc-patches at gcc dot gnu dot org, David Edelsohn <dje dot gcc at gmail dot com>, Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>
- Date: Tue, 31 Oct 2017 17:02:25 +0100
- Subject: Re: [PATCH, rs6000] Add Power 9 support for vec_first builtins
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx09.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx09.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=jakub at redhat dot com
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com CA794CD17E
- References: <1508455873.16660.9.camel@us.ibm.com> <20171023231432.GF4406@gate.crashing.org> <1509464769.9048.65.camel@us.ibm.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Tue, Oct 31, 2017 at 08:46:09AM -0700, Carl Love wrote:
> 2017-10-31 Carl Love <cel@us.ibm.com>
>
> * config/rs6000/rs6000-c.c: Add support for builtins:
> unsigned int vec_first_match_index (vector signed char,
> vector signed char);
... The ChangeLog IMHO is not. It should be something like:
* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add support
for vec_first_{,mis}match_{,or_eos_}index builtins with
vector {,un}signed {char,short,int} arguments.
Note (altivec_overloaded_builtins) to say what you've changed and
then just a sentence (in which IMHO wildcards are fine, but function
arguments in a way you wrote are not, because it is confusing with
what ()s mean in ChangeLog entry.
> * config/rs6000/rs6000-builtin.def (VFIRSTMATCHINDEX,
> VFIRSTMATCHOREOSINDEX, VFIRSTMISMATCHINDEX, VFIRSTMISMATCHOREOSINDEX):
> Add BU_P9V_AV_2 expansions for the builtins.
> * config/rs6000/altivec.h (vec_first_match_index,
> vec_first_mismatch_index, vec_first_match_or_eos_index,
> vec_first_mismatch_or_eos_index): Add #defines for the builtins.
> * config/rs6000/rs6000-protos.h (bytes_in_mode): Add extern
> declaration.
New declaration. ?
> * config/rs6000/rs6000.c (bytes_in_mode): Add function to return mode
> size in bytes.
New function. ? You don't need to explain what the function is for in
ChangeLog.
> * config/rs6000/vsx.md: (first_match_index_<mode>,
No : between filename and (what changed), please.
> first_match_or_eos_index_<mode>, first_mismatch_index_<mode>,
> first_mismatch_or_eos_index_<mode>): Add define expand to implement
> the builtins.
> (vctzlsbb_<mode>): Add mode field to define_insn for vctzlsbb.
> * doc/extend.texi: Update the built-in documenation file for the new
> built-in functions.
>
> gcc/testsuite/ChangeLog:
>
> 2017-10-31 Carl Love <cel@us.ibm.com>
>
> * gcc.target/powerpc/builtins-6-p9-runnable.c: Add runnable test for
> the new builtins.
New test.
Again, don't explain what the test is for.
For the rest I'll defer to PowerPC maintainers.
Jakub