Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!cbosgd!gatech!gitpyr!robert From: robert@gitpyr.UUCP (Robert Viduya) Newsgroups: net.bugs.usg,net.unix-wizards Subject: Re: bug in System V c compiler for 3b2 Message-ID: <1821@gitpyr.UUCP> Date: Sat, 24-May-86 14:24:02 EDT Article-I.D.: gitpyr.1821 Posted: Sat May 24 14:24:02 1986 Date-Received: Sun, 25-May-86 18:43:39 EDT References: <1327@mtx5a.UUCP> Reply-To: robert@gitpyr.UUCP (Robert Viduya) Distribution: net Organization: Office of Computing Services, Georgia Tech Lines: 26 Xref: watmath net.bugs.usg:495 net.unix-wizards:18192 >ddj@mtx5a.UUCP (Dennis D. Jurgensen) (ddj@mtx5a.UUCP, <1327@mtx5a.UUCP>): > > I compiled a 68000 cross-compiler on a 3b2 successfully I thought. > However when I tried to use it to compile some floating point > libraries the compiler core-dumped due to an illegal instruction. > My guess as to what the problem is is that a 3B2/300 (don't know about 3B2/310s or 3B2/400s) doesn't support hardware floating point instructions, but the C compiler will generate them. In order to compile programs that use floats or doubles, the C compiler has to be called with the '-f' option (this is, of course, undocumented, at least in all the 3B2 manuals I have). Note that the compiler will still generate floating point instructions; the -f option merely loads up a different runtime object file (/lib/fcrt0.o instead of /lib/crt0.o). I don't know for sure, but I think fcrt0.o enables an illegal instruction trap to catch all illegal instructions and simulate the floating point ones in software. Slow, but effective. robert -- Robert Viduya 01111000 Office of Computing Services Georgia Institute of Technology UUCP: ..gatech!gitpyr!robert BITNET: CC100RV @ GITVM1