Tiny GCC: Pure, Unadulterated, Object Code

Brian Dessent brian@dessent.net
Tue Jan 29 16:56:00 GMT 2008


Michael Witten wrote:

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

It still very much matters, because the intermediate language depends on
all those aspects of the target ABI.  (And even then, the IL is not what
gcc writes out; it's the generated assembly.)  They are fundamental to
how the code is parsed, optimized, and generated.  A linux targeted gcc
would have no idea how to even parse __declspec((dllimport)) just as the
PE gcc would not be able to make any sense of __attribute__((visibility,
"hidden")).  They would simply choke and die because the code to handle
those features just wasn't physically compiled in.  And that is only one
blatant example, but all of those things on that list directly affect
code generation in a way that cannot be ignored.  Even the basic
assembler directives for ELF and PE are different.  There is just no way
to make a "generic i386 gcc".

Brian



More information about the Gcc-help mailing list