large G++ locale overhead in g++ 4.9.2

Peter Dufault dufault at hda.com
Mon Jun 29 14:02:28 UTC 2015


> On Jun 29, 2015, at 09:28 , Sebastian Huber <sebastian.huber at embedded-brains.de> wrote:
> 
>> By only including the RTEMS shell commands I use I reduced the size to 1839664 (latest RTEMS) vs 1624684 (September RTEMS), about a 13% increase, but at least it fits in FLASH.
>> 
>> The overhead appears to be mostly all the locale “stuff” in g++ 4.9.2 vs g++ 4.8.2.  I did some googling but don’t see how to reduce this, does anyone know of a way?  I really don’t need currency customization.
> 
> What pulls in this locale stuff? Maybe
> 
> CFLAGS += -ffunction-sections -fdata-sections
> 
> LDFLAGS = -Wl,--gc-sections
> 
> helps?

I don’t know what pulls in the locale stuff or how to disable it.

Your suggested flags makes a huge difference, it’s now 1424272 bytes in size, at 12% decrease from September and a 22% decrease from building the application with gcc 4.9.2 without the flags. I don’t see as much locale stuff in there.  I only recompiled the user application code and not RTEMS itself.

Even better the application still runs.

How can these options change what gets linked in?

Peter
-----------------
Peter Dufault
HD Associates, Inc.      Software and System Engineering



More information about the devel mailing list