I explicitly inline code with the following attribute #define _INLINE_ static inline __attribute__((always_inline))
For my medium size project (lots of menus/graphics/various sensors and serial port devices) 1) -no-inline-small-function - 69034 2) --param inline-call-cost=2 - 68964 3) -fno-inline - 68816 4) -finline-limit=10 - 68810 5) #2 & #4 - 68754 6) -finline-limit=3 - 68754 (same results for 1,2 and 3) Since I am generally not too concerned about overall speed I prefer small size and explicit _INLINE_ where I deem appropriate... Usually the speed I am worried about is how long it takes to download another version while debugging :) Anyway, thanks for the pointers and I am glad I spent 20 minutes trying them out! Cheers! -----Original Message----- From: avr-gcc-list-bounces+larry=barello....@nongnu.org [mailto:avr-gcc-list-bounces+larry=barello....@nongnu.org] On Behalf Of Ruud Vlaming Sent: Monday, February 16, 2009 6:40 AM To: avr-gcc-list@nongnu.org Subject: Re: [avr-gcc-list] Code optimistaion in AVR Tiny13 On Monday 16 February 2009 15:11, Robert von Knobloch wrote: > On inspection I find that the compiler has 'in-lined' at least 3 > function calls that I had written as a function to achieve compactness. > Is there any way I can stop this, or is this a bug? There has been some discussions about this before. After trying many different optimization settings i concluded that --param inline-call-cost=2 is -overall- the best setting for small projects. However, if you need to minimize just one app, further reduction might be possible. For example with things like: -fno-inline-small-functions -fno-split-wide-types -fno-tree-scev-cprop Also, you can prohibit the compiler to inline on a function by function basis. Just to be sure you have no dead code around, include: -ffunction-sections -Wl,--gc-sections -Wl,--relax Ruud. _______________________________________________ AVR-GCC-list mailing list AVR-GCC-list@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-gcc-list _______________________________________________ AVR-GCC-list mailing list AVR-GCC-list@nongnu.org http://lists.nongnu.org/mailman/listinfo/avr-gcc-list