C Compiler for Unix V.2 Motorola 68020 Port

ray ray at ntmtka.mn.org
Sat Feb 10 14:53:15 AEST 1990


I am having a problem compiling the following source:

main()
{
	long	x;
	double	y;

	x = -((long) y);
}

The faulty generated assembler code is :
 
	fneg.d((S%1-12).w,%fp),%d0

The %d0 is obviously wrong.  This should be a floating poing register.


Does anybody have any ideas where to start looking in the compiler code?
Please use email.

Thanks in advance.
-- 
Send compilers articles to compilers at esegue.segue.boston.ma.us
{spdcc | ima | lotus}!esegue.  Meta-mail to compilers-request at esegue.
Please send responses to the author of the message, not the poster.



More information about the Comp.lang.c mailing list