Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!lll-crg!mordor!sri-spam!ames!ll-xn!mit-eddie!genrad!panda!husc6!necntc!encore!linus!philabs!sbcs!root
From: root@sbcs.UUCP (Root)
Newsgroups: comp.sys.amiga
Subject: Re: C compilers; request for info
Message-ID: <251@sbcs.UUCP>
Date: Sat, 13-Dec-86 11:33:21 EST
Article-I.D.: sbcs.251
Posted: Sat Dec 13 11:33:21 1986
Date-Received: Tue, 16-Dec-86 01:49:39 EST
References: <795@ulowell.UUCP> <9776@sun.uucp> <248@sbcs.UUCP> <1056@tekigm.UUCP>
Organization: Computer Science Dept, SUNY@Stony Brook
Lines: 79

Phil Staub writes:

> First is the questionable legality of putting the Manx library on a machine
> other than that for which the compiler was bought. 

Perhaps I am mistaken, but the real issue is whether Manx charges a
royalty for use of their C library.  They cannot possibly care whether
their C library is linked with code generated in hand coded assembly
language, their compiler system, or another code generator.  As to the
other issue, that of their development system being purchased for the
Amiga and then actually residing on the Sun, well simply tell them
that the license for use is to be assigned to the Sun.  Note that my
solution was to write my own C library, so how Manx handles licensing
is a non issue for me.

> The second pertains to what your development environment is. If you are able
> to develop code which can be quickly downloaded to the Amiga, that's one

I don't download to the Amiga - I use NFS to run the programs directly from
the Amiga.

> This brings it down to which compiler generates better code.
> We have a GreenHills compiler running on a Gould Unix system (read: *fast*
> compilation times). In many cases, I have found that at least the size of
> the code generated by the Manx compiler compares very favorably with the
> GreenHills compiler. (Of course, that only means anything when Manx writes
> the right code 8-) !! ). I'm not sure about speed. Another thing about the

"Better" code (smaller, I think you meant) is _a_ reason, but there are
more important factors:

	1)  The Manx compiler system was (is?) buggy.  In a few weeks use
	    of Manx, I found at least 2 compiler bugs. I've been using Sun's 
	    compiler for months now and have run across only one bug.

	2)  The Manx compiler system utilities crashed quite a bit.  `make'
	    crashes were particularly annoying.

	3)  Long compilation/link times.  Didn't have Perry's Recoverable
	    Ram Disk (ASDG corp - very nice products!) at the time - this
	    might have made the compile/link cycle shorter.  Currently,
	    I can compile several modules and link whole system in the
	    time Manx took just to link a few modules together on floppy
	    (yes, .o's too large for RAM:).

	4)  A set of floppy disks could not hold all the object/binaries needed
	    (last count about 7 mBytes src/object).

	5)  Sun comp. sys is as "Unix like" a compiler (e.g. has enums,
	    better structure handling, etc) a compiler as you're likely 
	    to find for the Amiga.

	6)  The Sun comp. sys has truly optimized code, e.g. strength
	    reduction in array indices, common subexpression elimination,
	    branch tail reduction, etc, etc.  

	7)  Superior development environment available in Unix.  I like
	    SCCS, vi, a "real" make, yacc, lex, etc available in Unix.
	    All of the above are "standard equipment" in the $400 Sun 
	    Unix release.

	8)  We needed the option of generating true 68020 code at some
	    point in the future.  

> GreenHills compiler is that (unless there's a switch I don't know about) it
> doesn't generate PC relative code for anything. It's all absolute.
> This results in bigger code which must be relocated before execution when 
> AmigaDOS loads it. (read: longer startup times).

Granted that the Sun system cannot generate index register data
references, however, they can generate PC relative code references.  
They also do span dependent instruction optimization in the assembler 
(bra <-> jmp as necessary).

					Rick Spanbauer

PS.  Don't totally misinterpret my position Re: Manx - I feel that it is
     the finest compiler system available for small 68000 systems today.