[Bug ada/51483] [4.7/4.8/4.9 regression] cstand.adb:Register_Float_Type makes invalid assumption about FP modes
ebotcazou at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Mar 13 15:43:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51483
--- Comment #21 from Eric Botcazou <ebotcazou at gcc dot gnu.org> ---
Author: ebotcazou
Date: Thu Mar 13 15:42:21 2014
New Revision: 208546
URL: http://gcc.gnu.org/viewcvs?rev=208546&root=gcc&view=rev
Log:
PR ada/51483
* cstand.adb (Register_Float_Type): Add 'precision' parameter and use
it to set the RM size. Use directly 'size' for the Esize.
(Create_Back_End_Float_Types): Adjust call to above.
* get_targ.ads (Register_Type_Proc): Add 'precision' parameter.
* set_targ.ads (FPT_Mode_Entry): Add 'precision' component.
(Write_Target_Dependent_Values): Adjust comment.
* set_targ.adb (Register_Float_Type): Add 'precision' parameter and
deal with it.
(Write_Target_Dependent_Values): Write the precision in lieu of size.
(Initialization): Read the precision in lieu of size and compute the
size from the precision and the alignment.
* gcc-interface/gigi.h (enumerate_modes): Add integer parameter.
* gcc-interface/misc.c (enumerate_modes): Likewise. Do not register
types for vector modes, pass the size in addition to the precision.
Modified:
trunk/gcc/ada/ChangeLog
trunk/gcc/ada/cstand.adb
trunk/gcc/ada/gcc-interface/gigi.h
trunk/gcc/ada/gcc-interface/misc.c
trunk/gcc/ada/get_targ.ads
trunk/gcc/ada/set_targ.adb
trunk/gcc/ada/set_targ.ads
More information about the Gcc-bugs
mailing list