optimization/1931: Alpha->68K cross produces dough floating point instruction
gcc@treblig.org
gcc@treblig.org
Sat Feb 10 16:56:00 GMT 2001
>Number: 1931
>Category: optimization
>Synopsis: Alpha->68K cross produces dough floating point instruction
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Feb 10 16:56:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: Dr. David Alan Gilbert
>Release: CVS as of 10th Feb 2001
>Organization:
>Environment:
Host Linux/Alpha (2.4.1-ac9 kernel)
Target 68K
Configured with: /home/gilbertd/egcs-source/gcc/configure --prefix=/discs/cross/m68k/tools --target=m68k-linux
gcc version 2.97 20010205 (experimental)
>Description:
During cross building of libgcc the build stops and complains of
Error: cannot create floating-point number
from the assembler.
I've had previous binutils related problems like this, however using
a cut down file observing the assembler it looks like its gcc.
Source:
typedef float DFtype __attribute__ ((mode (DF)));
crossbug (DFtype a)
{
int v=0;
if (a < 0)
v=1;
return v;
}
included in the assembler is the line:
fcmp.d #0r-1.08709117743770659141e-1257,%fp0
The build line used with the above source (x2.i) is:
/discs/c4/cross/m68k/build-gcc/gcc/xgcc -B/discs/c4/cross/m68k/build-gcc/gcc/ -B/discs/cross/m68k/tools/m68k-linux/bin/ -B/discs/cross/m68k/tools/m68k-linux/lib -O2 -c x2.i -save-temps -s
Using -O1 does not exhibit the problem.
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the Gcc-bugs
mailing list