This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: complex support on alpha
- To: Weiwen Liu <liu at hepvms dot physics dot yale dot edu>
- Subject: Re: complex support on alpha
- From: Jim Wilson <wilson at cygnus dot com>
- Date: Thu, 02 Oct 1997 20:35:09 -0700
- cc: egcs at cygnus dot com
egcs on alpha-dec-osf4.0 fails to generate correct code for
gcc.c-torture/execute/complex-5.c
in the testsuite, because gcc does not calculate correctly the number of
registers needed for 'float __complex__'. Instead of 2 registers, gcc
says only one register is needed.
It has been broken ever since the initial implementation. There is a general
problem that __complex__ X fails if X is half the word size or smaller.
For instance, __complex__ short will fail on any 32 bit machine in the same
way that __complex__ float fails on the alpha. It would be nice to see this
fixed.
Hopefully it can be fixed in a way that doesn't require changes to
every target. If the alpha.h file requires fixes to make __complex__ float
work, then that implies that every tm.h file needs fixes to fix the general
__complex__ problem.
Jim