This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: bug introduced by inlining patch


Hi Dale,

On Tue, Sep 03, 2002 at 06:09:02PM -0700, Dale Johannesen wrote:
> I believe this patch broke some things:
> 
> 2002-04-27  Kurt Garloff <garloff@suse.de>
[...]
> 
> The effect is that the documented flag -finline-limit no longer works
> to increase the default inlined size limit.  You also need to say
> --param max-inline-insns-single; I think this is wrong.  Also, the patch
> contains no documentation for the new parameters.

What version of gcc are you looking at?
3.2 branch? HEAD?

Please have a look at
http://www.garloff.de/kurt/freesoft/gcc/

There is version 4 of my patch that includes documentation and also 
includes setting of all parameters when you use -finline-limit=XXX

 read_integral_parameter (option_value, arg - 2,
 			  MAX_INLINE_INSNS);

 set_param_value ("max-inline-insns", val);
 set_param_value ("max-inline-insns-single", val/2);
 set_param_value ("max-inline-insns-auto", val/3);
 set_param_value ("max-inline-insns-rtl", val);
 set_param_value ("max-inline-insns-rtl-leaf", (val*3)/2);

I did some extensive benchmarking and Andreas Jaeger did run the SPEC 
benches to check the performance of this patch. As the decisions about
inlining are somewhat more conservative by default for the functions
not explicitly declared inline, there were 2 tests in the SPEC that
showed a slight regression (1 to 2%), so I did not push this patch for
inclusion any further.
(Note that this did not happen when benchmarking my own code, bascically
 a collection of benchmarks from the TBCI numerical library. I seem to 
 have used the inline keyword at all needed places.)

I would very much appreciate if people have a look at patch v4 from above
web page, so we can tune it appropriately and/or extract the useful bits
and apply to gcc. The RTL inliner tuning parts of the patch may be obsolete,
as we don't use it any longer at all, I believe ...


Regards,
-- 
Kurt Garloff  <garloff@suse.de>                          Eindhoven, NL
GPG key: See mail header, key servers         Linux kernel development
SuSE Linux AG, Nuernberg, DE                            SCSI, Security

Attachment: msg00186/pgp00000.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]