* [Ada] Ada.Numerics.Aux.*: Mention more Intrinsic and less C Math Library
@ 2022-05-18 8:43 Pierre-Marie de Rodat
0 siblings, 0 replies; only message in thread
From: Pierre-Marie de Rodat @ 2022-05-18 8:43 UTC (permalink / raw)
To: gcc-patches; +Cc: Alexandre Oliva
[-- Attachment #1: Type: text/plain, Size: 419 bytes --]
Since we import the elemental math functions as intrinsics, it's not
accurate to state we're drawing them in from the C math library.
Tested on x86_64-pc-linux-gnu, committed on trunk
gcc/ada/
* libgnat/a-nagefl.ads: Replace mentions of C/unix math library
with intrinsics.
* libgnat/a-nallfl.ads: Likewise. State compatibility
requirements.
* libgnat/a-nalofl.ads: Likewise.
* libgnat/a-nuaufl.ads: Likewise.
[-- Attachment #2: patch.diff --]
[-- Type: text/x-diff, Size: 6837 bytes --]
diff --git a/gcc/ada/libgnat/a-nagefl.ads b/gcc/ada/libgnat/a-nagefl.ads
--- a/gcc/ada/libgnat/a-nagefl.ads
+++ b/gcc/ada/libgnat/a-nagefl.ads
@@ -31,10 +31,10 @@
------------------------------------------------------------------------------
-- This package provides the basic computational interface for the generic
--- elementary functions. The C library version interfaces with the routines
--- in the C mathematical library.
+-- elementary functions.
--- This version here is for use with normal Unix math functions.
+-- This version here delegates to interfaces that typically import as
+-- intrinsics the expected math functions.
with Ada.Numerics.Aux_Long_Long_Float;
with Ada.Numerics.Aux_Long_Float;
diff --git a/gcc/ada/libgnat/a-nallfl.ads b/gcc/ada/libgnat/a-nallfl.ads
--- a/gcc/ada/libgnat/a-nallfl.ads
+++ b/gcc/ada/libgnat/a-nallfl.ads
@@ -5,7 +5,7 @@
-- A D A . N U M E R I C S . A U X . L O N G _ L O N G _ F L O A T --
-- --
-- S p e c --
--- (C Math Library Version, Long Long Float) --
+-- (Instrinsic Version, Long Long Float) --
-- --
-- Copyright (C) 1992-2022, Free Software Foundation, Inc. --
-- --
@@ -30,9 +30,12 @@
-- --
------------------------------------------------------------------------------
--- This package provides the basic computational interface for the generic
--- elementary functions. The C library version interfaces with the routines
--- in the C mathematical library, and is thus quite portable.
+-- This package provides the basic computational interface for the
+-- generic elementary functions. With the intrinsic version, the
+-- compiler can use its knowledge of the functions to select the most
+-- suitable implementation. It is thus quite portable. These
+-- interfaces are suitable for cases in which Long Long Float and C's
+-- long double share the same representation.
with Ada.Numerics.Aux_Linker_Options;
pragma Warnings (Off, Ada.Numerics.Aux_Linker_Options);
@@ -42,7 +45,7 @@ package Ada.Numerics.Aux_Long_Long_Float is
subtype T is Long_Long_Float;
- -- We import these functions directly from C. Note that we label them
+ -- We import these functions as intrinsics. Note that we label them
-- all as pure functions, because indeed all of them are in fact pure.
function Sin (X : T) return T with
diff --git a/gcc/ada/libgnat/a-nalofl.ads b/gcc/ada/libgnat/a-nalofl.ads
--- a/gcc/ada/libgnat/a-nalofl.ads
+++ b/gcc/ada/libgnat/a-nalofl.ads
@@ -5,7 +5,7 @@
-- A D A . N U M E R I C S . A U X _ L O N G _ F L O A T --
-- --
-- S p e c --
--- (C Math Library Version, Long Float) --
+-- (Intrinsic Version, Long Float) --
-- --
-- Copyright (C) 1992-2022, Free Software Foundation, Inc. --
-- --
@@ -30,9 +30,12 @@
-- --
------------------------------------------------------------------------------
--- This package provides the basic computational interface for the generic
--- elementary functions. The C library version interfaces with the routines
--- in the C mathematical library, and is thus quite portable.
+-- This package provides the basic computational interface for the
+-- generic elementary functions. With the intrinsic version, the
+-- compiler can use its knowledge of the functions to select the most
+-- suitable implementation. It is thus quite portable. These
+-- interfaces are suitable for cases in which Long Float and C's
+-- double share the same representation.
with Ada.Numerics.Aux_Linker_Options;
pragma Warnings (Off, Ada.Numerics.Aux_Linker_Options);
@@ -42,7 +45,7 @@ package Ada.Numerics.Aux_Long_Float is
subtype T is Long_Float;
- -- We import these functions directly from C. Note that we label them
+ -- We import these functions as intrinsics. Note that we label them
-- all as pure functions, because indeed all of them are in fact pure.
function Sin (X : T) return T with
diff --git a/gcc/ada/libgnat/a-nuaufl.ads b/gcc/ada/libgnat/a-nuaufl.ads
--- a/gcc/ada/libgnat/a-nuaufl.ads
+++ b/gcc/ada/libgnat/a-nuaufl.ads
@@ -5,7 +5,7 @@
-- A D A . N U M E R I C S . A U X _ F L O A T --
-- --
-- S p e c --
--- (C Math Library Version, Float) --
+-- (Intrinsic Version, Float) --
-- --
-- Copyright (C) 1992-2022, Free Software Foundation, Inc. --
-- --
@@ -30,9 +30,12 @@
-- --
------------------------------------------------------------------------------
--- This package provides the basic computational interface for the generic
--- elementary functions. The C library version interfaces with the routines
--- in the C mathematical library, and is thus quite portable.
+-- This package provides the basic computational interface for the
+-- generic elementary functions. With the intrinsic version, the
+-- compiler can use its knowledge of the functions to select the most
+-- suitable implementation. It is thus quite portable. These
+-- interfaces are suitable for cases in which Float and C's float
+-- share the same representation.
with Ada.Numerics.Aux_Linker_Options;
pragma Warnings (Off, Ada.Numerics.Aux_Linker_Options);
@@ -42,7 +45,7 @@ package Ada.Numerics.Aux_Float is
subtype T is Float;
- -- We import these functions directly from C. Note that we label them
+ -- We import these functions as intrinsics. Note that we label them
-- all as pure functions, because indeed all of them are in fact pure.
function Sin (X : T) return T with
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-05-18 8:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-18 8:43 [Ada] Ada.Numerics.Aux.*: Mention more Intrinsic and less C Math Library Pierre-Marie de Rodat
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).