[gnu.gcc.bug] gcc 1.28 on Sequent Symmetry float problem

kcwellsch@watmath.waterloo.edu (Ken Wellsch) (09/24/88)

Trying to compile GCC 1.28 on a Sequent Symmetry (i386 based)
(same problem with 1.26 and 1.27):

	config.h     -> config-i386.h
	tm.h         -> tm-seq386.h
	md           -> i386.md
	aux-output.c -> output-i386.c

Offending event extracted from tail of Make output:

|	...
|  stage2/gcc -g -O -Bstage2/ -c tree.c
|  tm-bsd386.h:202: warning: ASM_OUTPUT_DOUBLE redefined
|  Assembler:
|  "tree.c", line 1796: "den0x00000000000000001000" is not followed by a ':'
|			for a label definition

What this bizarre double constant (should be ".double 0d1.00000e+00")
means (from the local printf man page):

|    PRINTF(3S)          DYNIX Programmer's Manual          PRINTF(3S)
|
|    NAME
|         printf, fprintf, sprintf - formatted output conversion
|
|    SYNOPSIS
|         #include <stdio.h>
|
|         printf(format [, arg ] ...  )
|         char *format;
|
|	    ...
|
|         If the exponent is zero and the mantissa is not equal to
|         zero, then the output is
|
|              [-]den0xdddddddd
|
|         where 0xdddddddd is the hexadecimal representation of the
|         leftmost 32 bits of the mantissa.
|
|	    ...

rms@WHEATIES.AI.MIT.EDU (Richard Stallman) (09/26/88)

I don't expect to do anything about this problem except wait for
someone to send me a convincing fix.  Chances are only a person with
one of those machines can find one.

That info about printf explains the last stages of the problem, but
someone still needs use a debugger to get to the root of the matter.