Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!caip!nike!ucbcad!ucbvax!hplabs!oliveb!3comvax!mykes From: mykes@3comvax.UUCP (Mike Schwartz) Newsgroups: net.micro.amiga Subject: Re: printf() code size using Astartup.obj and AMIGA.LIB only Message-ID: <566@3comvax.UUCP> Date: Tue, 1-Jul-86 13:20:10 EDT Article-I.D.: 3comvax.566 Posted: Tue Jul 1 13:20:10 1986 Date-Received: Thu, 3-Jul-86 01:01:03 EDT References: <8606270438.AA07486@pavepaws> <426@oscvax.UUCP> <84@unisoft.UUCP> Reply-To: mykes@3comvax.UUCP (Mike Schwartz) Organization: 3Com Corp; Mountain View, CA Lines: 28 In article <84@unisoft.UUCP> fnf@unisoft.UUCP (Fred Fish) writes: >Ok folks, one thing nobody seems to have mentioned yet in these >Manx vs Lattice file size comparisons is the effect of object file >overhead (symbol table, hunk headers, etc). Only after someone >writes the equivalent of the Unix "size" command, can we begin >to do any meaningful size comparisons. > >-Fred A friend of mine is porting a Mac game to the Amiga (Deja Vu - a.k.a. Amiga Vu). I brought my compiler over to his house the other day and compiled his program. The executable went from 55K down to 32K, without any editting (i.e. removal of code). As much as I do not like the Lattice implementation, I find it hard to believe that this 23K reduction was due to library calls alone, but I also find it hard to believe that Lattice does not generate reasonable code. Manx, using the +l option, is not a very good code generating compiler - it just buries Lattice in terms of compiling speed, program size (the size of the compiler, linker and assember is the size of LC1 alone). But I cringe when I look at the code generated, I am amazed at how poor it is. For example, the following statement: if (var == NULL) ... causes var to be first loaded, extended to a word, extended to a long, then compared against 0, EVEN when var is declared as a UBYTE... Oh, well... I guess someone will make a good 'C' compiler someday...