This is the mail archive of the crossgcc@sourceware.org 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: conceptual help


On Mon, 8 Feb 2010 17:32:45 -0300
Diego Saravia <dsa@unsa.edu.ar> wrote:

> I dont understand why to use i586 i686 x86_64, etc as targets if gcc
> produces only one excecutable for all i386 and x86_64 processors
> 
> it is not better to have only one gcc-binary, aka i386-gcc for all
> that processors and use "i386-gcc -march=i586",  "i386-gcc
> -march=i686" and  "i386-gcc -march=x86_64"?

Yann will correct me if I'm wrong, but the thing is that the C library
is built as part of the cross-compiling toolchain. And the C library is
compiled for the target, and we might want to compile this code for the
target with a specific CPU in mind, in order to generate better code
when possible. Otherwise, we would always have to compile the C library
for the smallest common denominator: i386, which prevents us from using
improvements of the instruction sets on i486, Pentium and further
families.

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

--
For unsubscribe information see http://sourceware.org/lists.html#faq


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