Re: RFC: Gimple combine/folding interface

2013-07-22 Thread Jakub Jelinek
On Mon, Jul 22, 2013 at 01:36:17PM -0600, Jeff Law wrote: > Before designing an interface which inherently includes that > information we should think hard about if it's valuable and if a > tree combiner is the right place. > > I have high hopes that we can get the zero/sign extension > eliminatio

Re: RFC: Gimple combine/folding interface

2013-07-22 Thread Jeff Law
On 07/21/2013 08:14 PM, Andrew Pinski wrote: On Fri, Jul 19, 2013 at 5:09 PM, Andrew Pinski wrote: I was creating a new gimple/folding interface and wanted some opinions on the interface. typedef double_int (*nonzerobits_t)(tree var); typedef tree (*valueizer_t)(tree var); class gimple_combin

Re: RFC: Gimple combine/folding interface

2013-07-22 Thread Florian Weimer
On 07/20/2013 02:09 AM, Andrew Pinski wrote: gimple_combine(bool reas) : nonzerobitsf(NULL), valueizerv(NULL), allow_full_reassiocation(reas) {} I think this constructor should be marked "explicit". -- Florian Weimer / Red Hat Product Security Team

Re: RFC: Gimple combine/folding interface

2013-07-22 Thread Richard Biener
Andrew Pinski wrote: >On Fri, Jul 19, 2013 at 5:09 PM, Andrew Pinski >wrote: >> I was creating a new gimple/folding interface and wanted some >opinions >> on the interface. >> >> typedef double_int (*nonzerobits_t)(tree var); >> typedef tree (*valueizer_t)(tree var); >> >> class gimple_combine >

Re: RFC: Gimple combine/folding interface

2013-07-21 Thread Andrew Pinski
On Fri, Jul 19, 2013 at 5:09 PM, Andrew Pinski wrote: > I was creating a new gimple/folding interface and wanted some opinions > on the interface. > > typedef double_int (*nonzerobits_t)(tree var); > typedef tree (*valueizer_t)(tree var); > > class gimple_combine > { > public: > gimple_combine(n

Re: RFC: Gimple combine/folding interface

2013-07-20 Thread Marc Glisse
On Fri, 19 Jul 2013, Andrew Pinski wrote: I was creating a new gimple/folding interface Thanks. and wanted some opinions on the interface. typedef double_int (*nonzerobits_t)(tree var); typedef tree (*valueizer_t)(tree var); class gimple_combine { public: gimple_combine(nonzerobits_t a, v

RFC: Gimple combine/folding interface

2013-07-19 Thread Andrew Pinski
I was creating a new gimple/folding interface and wanted some opinions on the interface. typedef double_int (*nonzerobits_t)(tree var); typedef tree (*valueizer_t)(tree var); class gimple_combine { public: gimple_combine(nonzerobits_t a, valueizer_t b) : nonzerobitsf(a), valueizerv(b), allow_fu