[Ada] Preliminary cleanup in floating-point output implementation
gcc/ada/ * exp_intr.adb: Remove with/use clauses for Urealp. (Expand_Is_Negative): Delete. (Expand_Intrinsic_Call): Do not call it. * rtsfind.ads (RE_Id): Remove RE_Float_Unsigned. (RE_Unit_Table): Remove entry for RE_Float_Unsigned. * snames.ads-tmpl (Name_Is_Negative): Delete. * libgnat/s-imgrea.ads (Set_Image_Real): Fix mode of S parameter. * libgnat/s-imgrea.adb: Add with/use clauses for System.Img_Util. (LLU): New subtype. (Maxdigs): Use it. (Is_Negative): Reimplement. (Image_Floating_Point): Simplify. (Set_Image_Real): Fix mode of S parameter. Remove the low-level processing on characters. Flip the sign of the Scale variable. Compute the maximum number of digits for the straight notation. Call Set_Decimal_Digits at the end to do the final formatting. * libgnat/s-imguti.ads (Floating_Invalid_Value): New type. (Set_Floating_Invalid_Value): New procedure. * libgnat/s-imguti.adb (Set_Floating_Invalid_Value): Implement it based on existing code from Set_Image_Real. * libgnat/s-unstyp.ads (Float_Unsigned): Delete.
Showing
- gcc/ada/exp_intr.adb 0 additions, 59 deletionsgcc/ada/exp_intr.adb
- gcc/ada/libgnat/s-imgrea.adb 99 additions, 370 deletionsgcc/ada/libgnat/s-imgrea.adb
- gcc/ada/libgnat/s-imgrea.ads 1 addition, 1 deletiongcc/ada/libgnat/s-imgrea.ads
- gcc/ada/libgnat/s-imguti.adb 81 additions, 0 deletionsgcc/ada/libgnat/s-imguti.adb
- gcc/ada/libgnat/s-imguti.ads 15 additions, 0 deletionsgcc/ada/libgnat/s-imguti.ads
- gcc/ada/libgnat/s-unstyp.ads 0 additions, 3 deletionsgcc/ada/libgnat/s-unstyp.ads
- gcc/ada/rtsfind.ads 0 additions, 2 deletionsgcc/ada/rtsfind.ads
- gcc/ada/snames.ads-tmpl 0 additions, 1 deletiongcc/ada/snames.ads-tmpl
Loading
Please register or sign in to comment