diff mbox series

[Ada] Always enable the support for 128-bit integer types on 64-bit platforms

Message ID 20201023082639.GA127495@adacore.com
State New
Headers show
Series [Ada] Always enable the support for 128-bit integer types on 64-bit platforms | expand

Commit Message

Pierre-Marie de Rodat Oct. 23, 2020, 8:26 a.m. UTC
This lifts the condition of the presence of s-arit128.ads in order to
enable the support for 128-bit integer types on 64-bit platforms, the
rationale being that this mirrors the support for 64-bit integer types
on 32-bit platforms, which is always enabled.

Tested on x86_64-pc-linux-gnu, committed on trunk

gcc/ada/

	* gnat1drv.adb (Adjust_Global_Switches): Rewrite again code enabling
	or disabling the support for 128-bit integer types.
diff mbox series

Patch

diff --git a/gcc/ada/gnat1drv.adb b/gcc/ada/gnat1drv.adb
--- a/gcc/ada/gnat1drv.adb
+++ b/gcc/ada/gnat1drv.adb
@@ -800,30 +800,21 @@  procedure Gnat1drv is
       end if;
 
       --  Enable or disable the support for 128-bit types. It is automatically
-      --  enabled if the back end supports them, unless not in GNAT mode and
-      --  either the runtime does not contain the required support units or the
-      --  switch -gnatd.H is specified.
+      --  enabled if the back end supports them, unless -gnatd.H is specified.
 
       Enable_128bit_Types := Ttypes.Standard_Long_Long_Long_Integer_Size = 128;
 
-      if Enable_128bit_Types and then not GNAT_Mode then
-         Name_Len := 13;
-         Name_Buffer (1 .. Name_Len) := "s-arit128.ads";
-
-         if Find_File (Name_Find, Osint.Source, Full_Name => True) = No_File
-           or else Debug_Flag_Dot_HH
-         then
-            Enable_128bit_Types := False;
-
-            Ttypes.Standard_Long_Long_Long_Integer_Size :=
-              Ttypes.Standard_Long_Long_Integer_Size;
-            Ttypes.Standard_Long_Long_Long_Integer_Width :=
-              Ttypes.Standard_Long_Long_Integer_Width;
-            Ttypes.System_Max_Integer_Size :=
-              Ttypes.Standard_Long_Long_Integer_Size;
-            Ttypes.System_Max_Binary_Modulus_Power :=
-              Ttypes.Standard_Long_Long_Integer_Size;
-         end if;
+      if Enable_128bit_Types and then Debug_Flag_Dot_HH then
+         Enable_128bit_Types := False;
+
+         Ttypes.Standard_Long_Long_Long_Integer_Size :=
+           Ttypes.Standard_Long_Long_Integer_Size;
+         Ttypes.Standard_Long_Long_Long_Integer_Width :=
+           Ttypes.Standard_Long_Long_Integer_Width;
+         Ttypes.System_Max_Integer_Size :=
+           Ttypes.Standard_Long_Long_Integer_Size;
+         Ttypes.System_Max_Binary_Modulus_Power :=
+           Ttypes.Standard_Long_Long_Integer_Size;
       end if;
 
       --  Finally capture adjusted value of Suppress_Options as the initial