Re: Remove mode argument from gen_rtx_SET

2015-05-11 Thread DJ Delorie
> What I was confused about is that the first set isn't valid rtl. > The SET_SRC and SET_DEST always have to have the same mode > (or VOIDmode in the case of a CONST_INT, etc., where the mode > is implicitly the same as the SET_DEST). So wouldn't it have > to be: > > (set (reg:SI 1) >(

Re: Remove mode argument from gen_rtx_SET

2015-05-09 Thread Richard Sandiford
DJ Delorie writes: >> ; This pattern is identical to the truncsipsi2 pattern except >> ; that it uses a SUBREG instead of a TRUNC. It is needed in >> ; order to prevent reload from converting (set:SI (SUBREG:PSI (SI))) >> ; into (SET:PSI (PSI)). >> >> I'm not sure what that's supposed to mean (w

Re: Remove mode argument from gen_rtx_SET

2015-05-08 Thread DJ Delorie
> ; This pattern is identical to the truncsipsi2 pattern except > ; that it uses a SUBREG instead of a TRUNC. It is needed in > ; order to prevent reload from converting (set:SI (SUBREG:PSI (SI))) > ; into (SET:PSI (PSI)). > > I'm not sure what that's supposed to mean (what's an SI set of a PSI

Re: Remove mode argument from gen_rtx_SET

2015-05-08 Thread Richard Sandiford
Franz Sirl writes: > Am 2015-05-08 um 13:57 schrieb Segher Boessenkool: >> On Fri, May 08, 2015 at 12:32:30PM +0200, Franz Sirl wrote: >>> this patch (r222882 is fine, r222883 fails) breaks bootstrap for me on >>> x86_64-linux-gnu: >> >> i386.md has "set:BND" twice; replace that with just "set", a

Re: Remove mode argument from gen_rtx_SET

2015-05-08 Thread Franz Sirl
Am 2015-05-08 um 13:57 schrieb Segher Boessenkool: On Fri, May 08, 2015 at 12:32:30PM +0200, Franz Sirl wrote: this patch (r222882 is fine, r222883 fails) breaks bootstrap for me on x86_64-linux-gnu: i386.md has "set:BND" twice; replace that with just "set", and all should be fine. Maybe gen*

Re: Remove mode argument from gen_rtx_SET

2015-05-08 Thread Segher Boessenkool
On Fri, May 08, 2015 at 12:32:30PM +0200, Franz Sirl wrote: > this patch (r222882 is fine, r222883 fails) breaks bootstrap for me on > x86_64-linux-gnu: i386.md has "set:BND" twice; replace that with just "set", and all should be fine. Maybe gen* should warn on this; maybe it already does. Seg

Re: Remove mode argument from gen_rtx_SET

2015-05-08 Thread Franz Sirl
Am 2015-05-07 um 13:37 schrieb Richard Sandiford: One problem with the automatically-generated gen_rtx_FOO () macros is that they always have a mode parameter, even for codes like SET where the mode should always be VOIDmode. This inevitably leads to cases where a caller accidentally passes some

Re: Remove mode argument from gen_rtx_SET

2015-05-07 Thread Jeff Law
On 05/07/2015 07:59 AM, Richard Sandiford wrote: Jeff Law writes: On 05/07/2015 05:37 AM, Richard Sandiford wrote: One problem with the automatically-generated gen_rtx_FOO () macros is that they always have a mode parameter, even for codes like SET where the mode should always be VOIDmode. Th

Re: Remove mode argument from gen_rtx_SET

2015-05-07 Thread Richard Sandiford
Jeff Law writes: > On 05/07/2015 05:37 AM, Richard Sandiford wrote: >> One problem with the automatically-generated gen_rtx_FOO () macros >> is that they always have a mode parameter, even for codes like SET >> where the mode should always be VOIDmode. This inevitably leads to >> cases where a ca

Re: Remove mode argument from gen_rtx_SET

2015-05-07 Thread Jeff Law
On 05/07/2015 05:37 AM, Richard Sandiford wrote: One problem with the automatically-generated gen_rtx_FOO () macros is that they always have a mode parameter, even for codes like SET where the mode should always be VOIDmode. This inevitably leads to cases where a caller accidentally passes somet