Re: integer_onep vs. signed 1-bit bitfields

2013-11-04 Thread Richard Biener
On Sat, 2 Nov 2013, Marc Glisse wrote: > On Sat, 2 Nov 2013, Jakub Jelinek wrote: > > > On Sat, Nov 02, 2013 at 05:38:53PM +, Richard Sandiford wrote: > > > OK, thanks. I should have realised this earlier, but we have: > > > > > > /* Return 1 if EXPR is the integer constant one or the corre

Re: integer_onep vs. signed 1-bit bitfields

2013-11-04 Thread Richard Biener
On Sat, 2 Nov 2013, Richard Sandiford wrote: > Jakub Jelinek writes: > > On Sat, Nov 02, 2013 at 03:15:44PM +, Richard Sandiford wrote: > >> What should integer_onep mean if we have a signed 1-bit bitfield in > >> which the bit is set? Seen as a 1-bit value it's "obviously" 1, > >> but seen

Re: integer_onep vs. signed 1-bit bitfields

2013-11-02 Thread Marc Glisse
On Sat, 2 Nov 2013, Jakub Jelinek wrote: On Sat, Nov 02, 2013 at 05:38:53PM +, Richard Sandiford wrote: OK, thanks. I should have realised this earlier, but we have: /* Return 1 if EXPR is the integer constant one or the corresponding complex constant. */ int integer_onep (const_tree

Re: integer_onep vs. signed 1-bit bitfields

2013-11-02 Thread Jakub Jelinek
On Sat, Nov 02, 2013 at 05:38:53PM +, Richard Sandiford wrote: > OK, thanks. I should have realised this earlier, but we have: > > /* Return 1 if EXPR is the integer constant one or the corresponding >complex constant. */ > > int > integer_onep (const_tree expr) > ... > /* Return 1 if E

Re: integer_onep vs. signed 1-bit bitfields

2013-11-02 Thread Richard Sandiford
Jakub Jelinek writes: > On Sat, Nov 02, 2013 at 03:15:44PM +, Richard Sandiford wrote: >> What should integer_onep mean if we have a signed 1-bit bitfield in >> which the bit is set? Seen as a 1-bit value it's "obviously" 1, >> but seen as a value extended to infinite precision it's -1. >> >

Re: integer_onep vs. signed 1-bit bitfields

2013-11-02 Thread Jakub Jelinek
On Sat, Nov 02, 2013 at 03:15:44PM +, Richard Sandiford wrote: > What should integer_onep mean if we have a signed 1-bit bitfield in > which the bit is set? Seen as a 1-bit value it's "obviously" 1, > but seen as a value extended to infinite precision it's -1. > > Current mainline returns fal