This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


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: arm-elf-gcc : change default data alignement depending on ARM/THUMB


On Fri, Aug 22, 2003 at 01:12:52PM -0500, Bill Gatliff wrote:

> With optimizations turned on, however, I've seen gcc really close the 
> gap with ADS since the 2.95.x days.  I haven't done any formal 
> comparisons, but I haven't seen any heinous output from gcc, either.

I've recently compared size/performance of an eCos application
built w/ 2.95.x and with 3.2.x, and I've seen a size reduction
of about 20% or so, along with a corresponding increase in
performance.

The two builds weren't _completely_ identical, but he
differences shouldnt have been much.

> One potential source is runtime libraries.  ADS's library
> structure is pretty granular, and their linker seems to be
> pretty good at discarding unused code.  GNU-compatible runtime
> libraries don't seem to be as fine-grained in their
> implementation as ADS, so the GNU linker isn't as helpful at
> keeping unused modules and/or functions out of the resulting
> image.  Or maybe it's because the GNU linker is more
> simplistic, and the library architecture isn't the source of
> the bloat.  Dunno.

If you put each function in a separate section, and turn on
garbage collection in the linker, then the granularity of the
linking process should be at the function level rather than at
the object file level.  Without those options enabled, you
might end up with a fair number of un-needed library functions.

-- 
Grant Edwards
grante@visi.com

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


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