This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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.

-Geert


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]