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

Re: [MiNT] Compiling with gcc: ld eats all ram



> Think of the bandwith that is wasted while moving all this bloat
> around on the internet. ;-)

And you support multiple email boxes with IMAP, POP3, Groupwise and
Exchange right?  With full support for contact management, shared
calendars, ldap integration, and other groupware features right?

Yes, much of this is bloat, but its because its all implemented through
a number of shared libraries that each have a number of functions and
static data areas that cannot be shared and might in-turn depend on
other libraries.  There is a price to pay for features and ease of
development and many of RAM usage issues ARE being addressed.  In fact,
$4500 if you can trim down Evolution without killing features.

> That sounds more like it should be.
> 
> Plain C is by far the easiest language to compile.
> The anatomy of GCC is a obstacle to new idees about
> the practice of computer programming in a modern world.

Actually, when you consider the variations of modern super-scalar
processors with varied instruction sets, cache sizes, different degrees
of pipelining and branch prediction issues, then things aren't nearly as
simple.  Now, support just about every processor there is, plus C++,
Java, Fortran, Objective C, and I think a few others.  Its a beast, but
thats what happens when you try to be all things to all people and still
be efficient.

> > TCC is much easier to port than GCC, but of course, there is a lot of
> > Atari specific stuff you'd have to mess with.  Its designed to be
> > largely compatible with GCC, so options and object files should be
> > compatible.

You lose some speed.  Here is a little comparison:
http://coolrunningconcepts.com/tcc/tcc.html

You'll notice that for short programs, tcc makes smaller and faster
code, and it compares well to a regular GCC 3.3.4 compile.  TCC can
often compile really small programs and run them to completion, long
before GCC even finishes the compile!  However, crank up the
optimization of GCC and you are getting 3-5 times the speed of GCC, and
thats comparing to GCC 3.3, and GCC 3.4 does produce better code, and
GCC 4.0 has the ability to do even better!

So - if you need a quick compiler ... TCC may work well.  If you are
compiling your MiNT/XaAES or mintlib.. you might want to stick with GCC
so that you get every last bit of performance.