Ada subtypes and base types (was: Bootstrap failure on trunk: x86_64-linux-gnu)
Richard Guenther
richard.guenther@gmail.com
Mon Feb 20 22:00:00 GMT 2006
On 2/20/06, Richard Kenner <kenner@vlsi1.ultra.nyu.edu> wrote:
> Indeed. Ada should in this case generate
>
> R = (T)( (basetype)100 + (basetype)X - (basetype)X )
>
> i.e. carry out all arithmetic explicitly in the basetype and only for
> stores and loads use the subtype.
>
> That is indeed required by the language and what is normally generated.
> It would be valuable to see exactly who generated the bogus operation.
>
Indeed - I can very well imagine fold or ccp stripping off such type conversions
in some case, which would lead to wrong code by VRP.
Richard.
More information about the Gcc
mailing list