Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!mit-eddie!bacchus!mit-hermes!phr From: phr@mit-hermes.UUCP Newsgroups: comp.sys.atari.st Subject: Re: Porting GCC to Atari ST Message-ID: <2822@mit-hermes.AI.MIT.EDU> Date: Fri, 27-Mar-87 01:25:04 EST Article-I.D.: mit-herm.2822 Posted: Fri Mar 27 01:25:04 1987 Date-Received: Sat, 28-Mar-87 08:26:58 EST References: <3450@elroy.Jpl.Nasa.Gov> <975@ames.UUCP> Reply-To: phr@hermes.UUCP (Paul Rubin) Organization: The MIT AI Lab, Cambridge, MA Lines: 28 Keywords: C GCC Gnu FSF In article <975@ames.UUCP> fouts@orville.UUCP (Marty Fouts) writes: >I am looking into it, but it will be slow going for me. You might have trouble getting it up on current Ataris. When GCC compiles a function, it first builds a syntax tree for the entire function before it begins to think about it. This is so it can do optimizations that need to know everything about the function. Unfortunately, it means that very large functions can take megabytes of memory to compile. In particular, GCC needs about 1.5 meg to compile its own instruction recognizer (a decision tree pattern matcher that is several thousand lines of hairy machine-generated C code). We may do something in a future release about breaking up large functions so they can be compiled in a fixed amount of memory. You wouldn't get the benefit of certain optimizations on such functions if this happened. On a Mega ST with 2 or more meg of memory, compiling the compiler with itself won't be a problem, of course. I don't understand the comment that GCC is best used as the code generator for another compiler. This makes no sense. GCC reads in C programs and produces assembly code. To run compiled programs, you need an assembler and linker, and a runtime library. The GNU versions of these things probably will not help Atari OS users as the load formats, etc. are all completely different. Now when Atari comes out with a machine that we can run the GNU kernel on...