[comp.sys.mips] Bug in Mips 4.51 assembler

appel@cs.Princeton.EDU (Andrew Appel) (12/18/90)

The MIPS assembler in release 4.51 has a nasty bug that is not present
in the 4.20 release.  To wit:

    -------------------------- bug.c -----------------------------
    extern double foo();

    main()
    {
        printf("%f\n", foo());
    }
    --------------------------------------------------------------


    ------------------------- foo.s ------------------------------
      		.set noreorder
    dummy:	.byte	0
    maxint:	.double	1073741824.0
		.set 	reorder
		.globl  foo
		.ent 	foo
    foo:	lwc1	$f0, maxint+4
		lwc1	$f1, maxint
		j 	$31
		.end 	foo
    --------------------------------------------------------------

Compile using:	cc bug.c foo.s

In the 4.51 version, the floating point number that is loaded will be
from an address that is 4 bytes too high.

Is this newsgroup the appropriate place to put such bug reports?
Also, if someone authoritative from MIPS will respond to me by e-mail
acknowledging the bug report, I won't have to send it by other
channels as well.
				Andrew W. Appel (& Lal George)
				   Princeton University

P.S. We are not amused.