[Bug target/38629] target-specific parameters for inline heuristics not defined for AVR
forwards dot from dot bugzilla at d81 dot de
gcc-bugzilla@gcc.gnu.org
Fri Dec 26 21:30:00 GMT 2008
------- Comment #2 from forwards dot from dot bugzilla at d81 dot de 2008-12-26 21:29 -------
Steven, thanks for your explanation. My point of view was that gcc-4.3.3 did do
inlining code for "-Os", "-O1", "-O2" although the manual clearly states that
it would not do inlining for these optimization levels.
"-O2 Optimize even more. GCC performs... The compiler does not perform
loop unrolling or function inlining when you specify -O2..."
But for "-O/-O1" it is mentioned:
"-O turns on the following optimization flags:
... -finline-small-functions ..."
So the manual is a little ambiguous in this point. So to tune the heuristics
for the AVR target, one needs to tell the compiler:
1) what's a "small function"
2) tell about the costs
3) maybe do something more
Actually, in GCC-4.4, gcc/config/avr/avr.c, somebody did already some tuning as
it seems to me:
avr_override_options (void)
{
const struct mcu_type_s *t;
flag_delete_null_pointer_checks = 0;
if (!PARAM_SET_P (PARAM_INLINE_CALL_COST))
set_param_value ("inline-call-cost", 5);
....
I don't feel qualified enough to find well working values for all AVR
architectures since I do know the Attiny2313, Mega8 and Mega644 a little bit.
Maybe someone is willing to help me.
Wolfgang
PS: Steven, do you have got administrative rights to edit my initial post.
Could you please convert Till Harbaum's eMail address into something that
cannot be parsed by eMail harvesting robots ('@' -> "(at)").
--
forwards dot from dot bugzilla at d81 dot de changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |forwards dot from dot
| |bugzilla at d81 dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38629
More information about the Gcc-bugs
mailing list