[comp.compilers] Good non-coprocessor compiler for 80386 Unix V.3

johnl@ima.UUCP (07/08/87)

We are investigating compilers for the 80386 to be alternatives for the
compiler supplied with the Intel/Interactive V.3 Unix port.  
Metaware and GreenHills have been suggested, however they generate code
for the floating-point coprocessor, which is emulated through a system
of traps in the Unix kernel.

As a point of benchmark reference, the floating point performance of a 
coprocessorless 386 is less than one-third that of a co-processorless
68010 (not even a 68020).  Our suspicion is that the extra time is being
spent in trap processing.

We would like to purchase a good quality compiler that will generate code
to use a floating point library, directly called.  Ideally, it would also
support the equivalent of a "-F" switch (using only single precision in all
calculations.)

Any leads?

	Thanks	-- Carl

[The PC/IX C compiler for the 8088 also used floating point traps, but the
overhead there seemed to be small. I worked for Interactive at the time, and
the thinking was that people who care about FP performance will appreciate
the in-line FP code, and people who don't will appreciate that the same
binaries run either way. Given the relatively low cost of an 80287 compared
to the rest of the system, it still seems sound to me. I'd be interested in
hearing about other compilers, though. It's not hard to generate better code
than PCC does. -John]
--
Send compilers articles to ima!compilers or, in a pinch, to Levine@YALE.ARPA
Plausible paths are { ihnp4 | decvax | cbosgd | harvard | yale | cca}!ima
Please send responses to the originator of the message -- I cannot forward
mail accidentally sent back to compilers.  Meta-mail to ima!compilers-request

dougl@ism780c (Doug Leavitt) (07/14/87)

To the best of my knowledge, there are currently NO compilers available
for the 386 that do not follow the standard of emulating FP through the
system.  The main reason for this is that a 287 with a small daughterboard
may be placed in a 387 socket and provide better emulation than software.

I suspect that the demand for such a compiler when 287's are readily available
and extremely cheap (as compared to the 387), is extremely low.  I
currently expect that such a compiler would have to be specially ordered
from a compiler manufacturer (IE a special port and $$$).

I would strongly suggest investigating the 287 papoose board with Intel
(they have one and distribute it with their 386/20 boards) if the necessary
floating point performance must be higher than FP emulation and a 387
is currently out of the question.

	Doug Leavitt
	Interactive Systems Corporation
	386 Compiler Development
	{ seismo, sdcrdcf, olivb, ima } !ism780c!dougl
--
Send compilers articles to ima!compilers or, in a pinch, to Levine@YALE.ARPA
Plausible paths are { ihnp4 | decvax | cbosgd | harvard | yale | cca}!ima
Please send responses to the originator of the message -- I cannot forward
mail accidentally sent back to compilers.  Meta-mail to ima!compilers-request