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: new x86 cmpmemsi expander, and adjustments for cmpstrn*


On Sep 10, 2019, Alexandre Oliva <oliva@adacore.com> wrote:

> This patchset fixes some latent problems in cmpstrn* patterns for x86,
> and introduces cmpmemsi for short fixed-size memcmp.

Ping?  https://gcc.gnu.org/ml/gcc-patches/2019-09/msg00701.html


> Would it make sense to install the test program somewhere?


> make cmpstrnsi patterns safer

> for  gcc/ChangeLog

> 	* config/i386/i386.md (cmpstrnsi): Create separate output
>         count to pass to cmpstrnqi_nz_1 and ...
> 	(cmpstrnqi_1): ... this.  Do not use a match_dup of the count
>         input as an output.  Preserve FLAGS_REG when length is zero.
> 	(*cmpstrnqi_1): Preserve FLAGS_REG when length is zero.


> x86 cmpmemsi pattern - single compare

> for  gcc/ChangeLog

> 	* config/i386/i386.md (cmpmemsi): New pattern.


> extend x86 cmpmemsi to use loops

> for  gcc/ChangeLog

> 	* config/i386/i386.md (cmpmemsi): Expand more than one
> 	fragment compare sequence depending on optimization level.
> 	(subcmpsi3): New expand pattern.


-- 
Alexandre Oliva, freedom fighter  he/him   https://FSFLA.org/blogs/lxo
Be the change, be Free!        FSF VP & FSF Latin America board member
GNU Toolchain Engineer                        Free Software Evangelist
Hay que enGNUrecerse, pero sin perder la terGNUra jamás - Che GNUevara


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