avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [avr-gcc-list] WINAVR with GCC 4.3.3


From: larry barello
Subject: RE: [avr-gcc-list] WINAVR with GCC 4.3.3
Date: Mon, 22 Jun 2009 09:53:45 -1000

I have spent a fair amount of time trying out various compiler options and
this is what I settled on for large projects.  A lot of suggested options
made no significant difference in my projects however, your mileage may
vary, so give em a try and see what happens:

CFLAGS += -funsigned-bitfields -fpack-struct -fshort-enums
CFLAGS += -fno-inline
#CFLAGS += -fno-inline-small-functions
#CFLAGS += -finline-limit=3
#CFLAGS += --param inline-call-cost=2
#CFLAGS += -fno-if-conversion
#CFLAGS += -fno-split-wide-types
CFLAGS += -mcall-prologues
CFLAGS += -Wall -Wstrict-prototypes


For a small project (e.g. tiny26) I think explicit inlining works best.  For
larger projects (as above) the biggest win was call-prologues.  The
"inline-limit=2" worked as well or better than explicit inlining, but since
I inline for specific reasons, I just keep it explicit.    

you might find this #define useful

#define _INLINE_ static inline __attribute__((always-inline))

as in

_INLINE_ void SomeFunction(void) {}


-----Original Message-----
From: address@hidden
[mailto:address@hidden On Behalf Of
Royce Pereira
Sent: Monday, June 22, 2009 6:37 AM
To: address@hidden
Subject: Re: [avr-gcc-list] WINAVR with GCC 4.3.3

Hi,

I have a project built around a Tiny26.

It was compiled with WinAVR-20070525.

I'd stuck to this version for a long time, until recently when I upgraded to

20090313.

Soon after, I had to recompile my project due some change in specs.

Imagine my shock when AVRstudio complained that the hex file was too big for

the device !

Upon further checking I found the code size at 2234 bytes - correctly too 
big for the tiny26.

I quickly compiled with the older WinAVR, and the code size was back to 
original- 1760 bytes ...whew - tears of relief !!

The new WinAVR bloated the code by about 500 bytes . Wow.

Various posts on this list have indicated that each new release bloats the 
code ??

If that is true, then, by 2012, I'll have to redesign my current Tiny2313 / 
Tiny26 projects around a Mega128 :-))  !!!

(lol)

Regards,

--Royce.

 



_______________________________________________
AVR-GCC-list mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/avr-gcc-list
No virus found in this incoming message.
Checked by AVG - www.avg.com 
Version: 8.5.339 / Virus Database: 270.12.78/2185 - Release Date: 06/22/09
06:54:00






reply via email to

[Prev in Thread] Current Thread [Next in Thread]