Re: Tiny GCC: Pure, Unadulterated, Object Code

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

 



On 25 Jan 2008, at 11:48 PM, Brian Dessent wrote:

Michael Witten wrote:

I still don't understand why gcc imposes these libraries, when they
have nothing to do with compilation. It just seems like bad design.

You can't divorce a compiler from the target.  The target's ABI
specifies a great number of details that are very much relevant to the
compiler, such as:

- calling conventions
- how assembler names are decorated
- size of pointers
- how SIMD and floating registers are passed and saved/restored
- alignment of the stack
- struct and bitfield padding
- register used for PIC and how PIC code is generated
- how TLS variables are created and accessed
- method for unwinding the stack for exception handling
- accessing shared variables and calling into shared libraries
- etc.

As an example I present Linux (ELF) and Windows (PE). These both run on
identical ia32 and x64 hardware.  But they could not be more different
in a number of the above.

What you describe is not related to compilation to an intermediate
language, which is all distcc really requires.

However, you seem to have an impressive breadth of knowledge--one that
I'd like to have!

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux