This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Target FUNCTION_{PRO,EPI}LOGUE question
Laurent Guerby <guerby@acm.org> writes:
> Florian Weimer <Florian.Weimer@RUS.Uni-Stuttgart.DE>:
> > Actually, there are some obscure cases in which universal integers
> > exist during run time, and they can even be larger than a machine word
> > (but on usual architectures, you only need three additional bits, so GNU
> > MP is certainly overkill).
>
> I'm surprised by this statement, I believe all runtime computations
> are done with T'Base which is implementation defined and will probably
> match a machine supported size (but of course could be using GMP).
>
> Could you point out an AI or relevant documents on your obscure cases?
The value of the Size attribute is of type univeral_integer. If you
compare the values of the Size attributes of two objects, a universal
integer exist at run time. Since the size of an object is counted in
bits. Therefore, on typical architectures, you need three more bits
than a machine word can store to represent all possible values of the
Size attribute.
(A few months ago, some person reported the problem on comp.lang.ada,
so people are really affected by this.)
--
Florian Weimer Florian.Weimer@RUS.Uni-Stuttgart.DE
University of Stuttgart http://cert.uni-stuttgart.de/
RUS-CERT +49-711-685-5973/fax +49-711-685-5898