Re: [PATCH 2/6] combine: If recog fails, try again with zero_ext{ract,end} simplified

2015-05-12 Thread Segher Boessenkool
On Tue, May 12, 2015 at 09:20:18AM +0100, Kyrill Tkachov wrote: > Does this patch means we can remove any patterns in > the backend that look like: > > - [(set (match_operand:SI 0 "gpc_reg_operand" "=r") > - (zero_extract:SI (match_operand:SI 1 "gpc_reg_operand" "r") > -

Re: [PATCH 2/6] combine: If recog fails, try again with zero_ext{ract,end} simplified

2015-05-12 Thread Kyrill Tkachov
Hi Segher, On 10/05/15 17:13, Segher Boessenkool wrote: Combine has its own ideas of what is "canonical" RTL, forcing all backends to have special patterns in their machine description for the "more simplified" patterns combine often creates, even though the backend already has patterns for a mo

Re: [PATCH 2/6] combine: If recog fails, try again with zero_ext{ract,end} simplified

2015-05-10 Thread Segher Boessenkool
On Sun, May 10, 2015 at 10:15:34PM -0600, Jeff Law wrote: > > (recog_for_combine): If recog fails, try again with the pattern > > modified by change_zero_ext; if that still fails, restore the > > pattern. > I like it. Attacking the extensions are the most obvious candidates, > but I w

Re: [PATCH 2/6] combine: If recog fails, try again with zero_ext{ract,end} simplified

2015-05-10 Thread Jeff Law
On 05/10/2015 10:13 AM, Segher Boessenkool wrote: Combine has its own ideas of what is "canonical" RTL, forcing all backends to have special patterns in their machine description for the "more simplified" patterns combine often creates, even though the backend already has patterns for a more gene

[PATCH 2/6] combine: If recog fails, try again with zero_ext{ract,end} simplified

2015-05-10 Thread Segher Boessenkool
Combine has its own ideas of what is "canonical" RTL, forcing all backends to have special patterns in their machine description for the "more simplified" patterns combine often creates, even though the backend already has patterns for a more general form. Backends that do not implement those patt