Add an UNSPEC_PROLOGUE_USE to prevent the link register from being considered dead.
[official-gcc.git] / gcc / ada / a-ngelfu.ads
blob864f1c49f8fa10fdc3095ce8525800d5c113a243
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT RUNTIME COMPONENTS --
4 -- --
5 -- ADA.NUMERICS.GENERIC_ELEMENTARY_FUNCTIONS --
6 -- --
7 -- S p e c --
8 -- --
9 -- --
10 -- This specification is adapted from the Ada Reference Manual for use with --
11 -- GNAT. In accordance with the copyright of that document, you can freely --
12 -- copy and modify this specification, provided that if you redistribute a --
13 -- modified version, any changes that you have made are clearly indicated. --
14 -- --
15 ------------------------------------------------------------------------------
17 generic
18 type Float_Type is digits <>;
20 package Ada.Numerics.Generic_Elementary_Functions is
21 pragma Pure (Generic_Elementary_Functions);
23 function Sqrt (X : Float_Type'Base) return Float_Type'Base;
24 function Log (X : Float_Type'Base) return Float_Type'Base;
25 function Log (X, Base : Float_Type'Base) return Float_Type'Base;
26 function Exp (X : Float_Type'Base) return Float_Type'Base;
27 function "**" (Left, Right : Float_Type'Base) return Float_Type'Base;
29 function Sin (X : Float_Type'Base) return Float_Type'Base;
30 function Sin (X, Cycle : Float_Type'Base) return Float_Type'Base;
31 function Cos (X : Float_Type'Base) return Float_Type'Base;
32 function Cos (X, Cycle : Float_Type'Base) return Float_Type'Base;
33 function Tan (X : Float_Type'Base) return Float_Type'Base;
34 function Tan (X, Cycle : Float_Type'Base) return Float_Type'Base;
35 function Cot (X : Float_Type'Base) return Float_Type'Base;
36 function Cot (X, Cycle : Float_Type'Base) return Float_Type'Base;
38 function Arcsin (X : Float_Type'Base) return Float_Type'Base;
39 function Arcsin (X, Cycle : Float_Type'Base) return Float_Type'Base;
40 function Arccos (X : Float_Type'Base) return Float_Type'Base;
41 function Arccos (X, Cycle : Float_Type'Base) return Float_Type'Base;
43 function Arctan
44 (Y : Float_Type'Base;
45 X : Float_Type'Base := 1.0)
46 return Float_Type'Base;
48 function Arctan
49 (Y : Float_Type'Base;
50 X : Float_Type'Base := 1.0;
51 Cycle : Float_Type'Base)
52 return Float_Type'Base;
54 function Arccot
55 (X : Float_Type'Base;
56 Y : Float_Type'Base := 1.0)
57 return Float_Type'Base;
59 function Arccot
60 (X : Float_Type'Base;
61 Y : Float_Type'Base := 1.0;
62 Cycle : Float_Type'Base)
63 return Float_Type'Base;
65 function Sinh (X : Float_Type'Base) return Float_Type'Base;
66 function Cosh (X : Float_Type'Base) return Float_Type'Base;
67 function Tanh (X : Float_Type'Base) return Float_Type'Base;
68 function Coth (X : Float_Type'Base) return Float_Type'Base;
69 function Arcsinh (X : Float_Type'Base) return Float_Type'Base;
70 function Arccosh (X : Float_Type'Base) return Float_Type'Base;
71 function Arctanh (X : Float_Type'Base) return Float_Type'Base;
72 function Arccoth (X : Float_Type'Base) return Float_Type'Base;
74 end Ada.Numerics.Generic_Elementary_Functions;