Re: New parameters to control stringop expansion libcall strategy

2013-08-09 Thread Jan Hubicka
> On Fri, Aug 9, 2013 at 11:33 AM, Jan Hubicka wrote: > >> Is this version ok for trunk? > > > > It looks resonable, but I still do not like much the removal of const for > > tables. > > Doing so will push them all into David Malcom's per-thread global universe. > > > > Currently the algorithm is

Re: New parameters to control stringop expansion libcall strategy

2013-08-09 Thread Xinliang David Li
On Fri, Aug 9, 2013 at 11:33 AM, Jan Hubicka wrote: >> Is this version ok for trunk? > > It looks resonable, but I still do not like much the removal of const for > tables. > Doing so will push them all into David Malcom's per-thread global universe. > > Currently the algorithm is selected based

Re: New parameters to control stringop expansion libcall strategy

2013-08-09 Thread Jan Hubicka
> Is this version ok for trunk? It looks resonable, but I still do not like much the removal of const for tables. Doing so will push them all into David Malcom's per-thread global universe. Currently the algorithm is selected based on cost->memset/cost->memcpy. Instead of removing the const of a

Re: New parameters to control stringop expansion libcall strategy

2013-08-09 Thread Xinliang David Li
Is this version ok for trunk? thanks, David On Thu, Aug 8, 2013 at 9:31 AM, Xinliang David Li wrote: > Updated. > > thanks, > > David > > On Thu, Aug 8, 2013 at 8:18 AM, Joseph S. Myers > wrote: >> On Wed, 7 Aug 2013, Xinliang David Li wrote: >> >>> Updated patch attached (fixed header, buffe

Re: New parameters to control stringop expansion libcall strategy

2013-08-08 Thread Xinliang David Li
Updated. thanks, David On Thu, Aug 8, 2013 at 8:18 AM, Joseph S. Myers wrote: > On Wed, 7 Aug 2013, Xinliang David Li wrote: > >> Updated patch attached (fixed header, buffer overflow, and warning --> >> error problems). > > You still have diagnostics starting with a capital letter, contrary to

Re: New parameters to control stringop expansion libcall strategy

2013-08-08 Thread Joseph S. Myers
On Wed, 7 Aug 2013, Xinliang David Li wrote: > Updated patch attached (fixed header, buffer overflow, and warning --> > error problems). You still have diagnostics starting with a capital letter, contrary to the GNU Coding Standards. -- Joseph S. Myers jos...@codesourcery.com

Re: New parameters to control stringop expansion libcall strategy

2013-08-07 Thread Xinliang David Li
Updated patch attached (fixed header, buffer overflow, and warning --> error problems). Ok for trunk? thanks, David On Wed, Aug 7, 2013 at 6:04 PM, Joseph S. Myers wrote: > On Wed, 7 Aug 2013, Xinliang David Li wrote: > >> > Why the exception? This should only be used on the host, not the tar

Re: New parameters to control stringop expansion libcall strategy

2013-08-07 Thread Joseph S. Myers
On Wed, 7 Aug 2013, Xinliang David Li wrote: > > Why the exception? This should only be used on the host, not the target. > > Sorry, I copied the boiler-plate header from i386.h -- is it wrong there too? tm.h gets included in target code because we haven't finished separating target macros use

Re: New parameters to control stringop expansion libcall strategy

2013-08-07 Thread Xinliang David Li
On Wed, Aug 7, 2013 at 5:23 PM, Joseph S. Myers wrote: > On Wed, 7 Aug 2013, Xinliang David Li wrote: > >> Index: config/i386/stringop.def >> === >> --- config/i386/stringop.def (revision 0) >> +++ config/i386/stringop.def (revision

Re: New parameters to control stringop expansion libcall strategy

2013-08-07 Thread Joseph S. Myers
On Wed, 7 Aug 2013, Xinliang David Li wrote: > Index: config/i386/stringop.def > === > --- config/i386/stringop.def (revision 0) > +++ config/i386/stringop.def (revision 0) > @@ -0,0 +1,42 @@ > +/* Definitions for option handling fo

Re: New parameters to control stringop expansion libcall strategy

2013-08-07 Thread Xinliang David Li
Fixed the do while formatting. Ok for trunk with this version? thanks, David On Tue, Aug 6, 2013 at 2:42 AM, Jan Hubicka wrote: >> >>> 2013-08-02 Xinliang David Li >> >>> >> >>> * config/i386/stringop.def: New file. >> >>> * config/i386/stringop.opt: New file. >> >>>

Re: New parameters to control stringop expansion libcall strategy

2013-08-07 Thread Michael Zolotukhin
> the option is designed for purpose like this. That's great, thanks! Michael > David On 6 August 2013 20:42, Xinliang David Li wrote: > Corrected two small problems reported by the style checker (The > warnings about the EnumValue for options in stringopt.opt are not > valid). > > On Tue, Aug

Re: New parameters to control stringop expansion libcall strategy

2013-08-06 Thread Xinliang David Li
Forgot the patch. David On Tue, Aug 6, 2013 at 9:42 AM, Xinliang David Li wrote: > Corrected two small problems reported by the style checker (The > warnings about the EnumValue for options in stringopt.opt are not > valid). > > On Tue, Aug 6, 2013 at 1:46 AM, Michael Zolotukhin > wrote: >> Th

Re: New parameters to control stringop expansion libcall strategy

2013-08-06 Thread Xinliang David Li
Corrected two small problems reported by the style checker (The warnings about the EnumValue for options in stringopt.opt are not valid). On Tue, Aug 6, 2013 at 1:46 AM, Michael Zolotukhin wrote: > There are still some formatting issues (like 8 spaces instead of a > tab, wrong indentation of do-

Re: New parameters to control stringop expansion libcall strategy

2013-08-06 Thread Xinliang David Li
On Tue, Aug 6, 2013 at 2:42 AM, Jan Hubicka wrote: >> >>> 2013-08-02 Xinliang David Li >> >>> >> >>> * config/i386/stringop.def: New file. >> >>> * config/i386/stringop.opt: New file. >> >>> * config/i386/i386-opts.h: Include stringopt.def. >> >>> * config/i386/i

Re: New parameters to control stringop expansion libcall strategy

2013-08-06 Thread Jan Hubicka
> >>> 2013-08-02 Xinliang David Li > >>> > >>> * config/i386/stringop.def: New file. > >>> * config/i386/stringop.opt: New file. > >>> * config/i386/i386-opts.h: Include stringopt.def. > >>> * config/i386/i386.opt: Include stringopt.opt. > >>> * config/i38

Re: New parameters to control stringop expansion libcall strategy

2013-08-06 Thread Michael Zolotukhin
There are still some formatting issues (like 8 spaces instead of a tab, wrong indentation of do-loop and some other places) - to reveal some of them you could use contrib/check_GNU_style.sh script. But that was a nitpicking again:) Actually I wanted to ask whether you're going to use this option fo

Re: New parameters to control stringop expansion libcall strategy

2013-08-05 Thread Xinliang David Li
thanks. Updated patch attached. David On Mon, Aug 5, 2013 at 3:57 AM, Michael V. Zolotukhin wrote: > Hi, > This is a really convenient option, thanks for working on it. > I can't approve it as I'm not a maintainer, but it looks ok to me, > except fot a small nitpicking: afair, comments should en

Re: New parameters to control stringop expansion libcall strategy

2013-08-05 Thread Michael V. Zolotukhin
Hi, This is a really convenient option, thanks for working on it. I can't approve it as I'm not a maintainer, but it looks ok to me, except fot a small nitpicking: afair, comments should end with dot-space-space. Michael On 04 Aug 20:01, Xinliang David Li wrote: > The attached is a new patch impl

Re: New parameters to control stringop expansion libcall strategy

2013-08-04 Thread Xinliang David Li
The attached is a new patch implementing the stringop inline strategy control using two new -m options: -mmemcpy-strategy= -mmemset-strategy= See changes in doc/invoke.texi for description of the new options. Example: -mmemcpy-strategy=rep_8byte:64:unaligned,unrolled_loop:2048:unaligned,libcal

Re: Backend specific params.def? (Was Re: New parameters to control stringop expansion libcall strategy)

2013-08-03 Thread Xinliang David Li
On Sat, Aug 3, 2013 at 1:06 AM, Jan Hubicka wrote: >> On x86_64, when the expected size of memcpy/memset is known (e.g, with >> FDO), libcall strategy is used with the size is > 8192. This value is >> hard coded, which makes it hard to do performance tuning. This patch >> adds two new parameters t

Backend specific params.def? (Was Re: New parameters to control stringop expansion libcall strategy)

2013-08-03 Thread Jan Hubicka
> On x86_64, when the expected size of memcpy/memset is known (e.g, with > FDO), libcall strategy is used with the size is > 8192. This value is > hard coded, which makes it hard to do performance tuning. This patch > adds two new parameters to do that. Potential usage includes > per-application li