This is the mail archive of the
mailing list for the GCC project.
Re: IA64 bootstrap problem for Ada
It seems that the cleanest way to solve the issue is to "register"
all available modes, and their properties such as int/float,
complex or not, scalar or vector, precision, size and alignment
with the front end. Then the front end can use that table to
select the right type for a given declaration. This would also
give us a clean path to using vector types where available.
Trying to communicate everything through a single "size" property
isn't right, and too much knowledge about available types is now
built into the front end.
The one thing that still bothers me though, is that for floating
point types, we'd really need to know the mantissa width of a
floating point type. Right now, we "know" that a type with a precision
of 96 in reality is a 80-bit IEEE extended double precision type
with 64 bits of mantissa. Even when Zack fixes GCC to report a
"precision" of 80 or 82 bits for certain IA-64 floating-point types,
we'd still need to build in knowledge into the front end about the
size of the mantissa.