Re: [PATCH] rs6000: Fix fsel pattern (PR79211)

2017-02-22 Thread Segher Boessenkool
On Fri, Jan 27, 2017 at 03:11:46PM +, Segher Boessenkool wrote: > 2017-01-27 Segher Boessenkool > > * config/rs6000/rs6000.md (*fsel4): Use > gpc_reg_operand instead of fpr_reg_operand. I committed the patch. Segher

Re: [PATCH] rs6000: Fix fsel pattern (PR79211)

2017-01-27 Thread Segher Boessenkool
On Fri, Jan 27, 2017 at 05:36:10PM -0500, Michael Meissner wrote: > On Fri, Jan 27, 2017 at 03:11:46PM +, Segher Boessenkool wrote: > > The fsel define_insn uses fpr_reg_operand for its predicates. This > > won't work because passes can put a hard register in the operands: in > > the testcase,

Re: [PATCH] rs6000: Fix fsel pattern (PR79211)

2017-01-27 Thread Michael Meissner
On Fri, Jan 27, 2017 at 03:11:46PM +, Segher Boessenkool wrote: > The fsel define_insn uses fpr_reg_operand for its predicates. This > won't work because passes can put a hard register in the operands: in > the testcase, combine likes to forward the parameter registers to what > then is still

[PATCH] rs6000: Fix fsel pattern (PR79211)

2017-01-27 Thread Segher Boessenkool
The fsel define_insn uses fpr_reg_operand for its predicates. This won't work because passes can put a hard register in the operands: in the testcase, combine likes to forward the parameter registers to what then is still an smin, and then split1 uses "*s3_fpr" (which has gpc_reg_operand). And th