Siddhesh Poyarekar
975195e466
Remove redundant arguments in reduce_and_compute
...
The A and DA arguments in reduce_and_compute are useless and hence
have been removed.
2013-12-20 15:56:21 +05:30
Siddhesh Poyarekar
5ff8d60ef3
Remove some redundant computations in s_sin.c
...
There are multiple points in the code where the absolute value of a
number is computed multiple times or is computed even though the value
can only be positive. This change removes those redundant
computations. Tested on x86_64 to verify that there were no
regressions in the testsuite.
2013-12-20 15:55:34 +05:30
Marcus Shawcroft
cb756c6d68
Compile e_sqrt.c with -ffp-contract=off.
2013-12-18 12:07:06 +00:00
Joseph Myers
6432a5409c
Fix dbl-64 hypot spurious underflows (bug 16314).
2013-12-17 13:43:40 +00:00
Joseph Myers
c88769dda4
Fix hypot handling of subnormals (bug 16316, bug 16330).
2013-12-17 13:42:13 +00:00
Siddhesh Poyarekar
8d561986c0
Minor code cleanup in s_sin.c
...
- Remove redundant mynumber union definitions
- Clean up a clumsy ternary operator
- Rename TAYLOR_SINCOS to TAYLOR_SIN since we're only expanding the
sin Taylor series in it.
2013-12-16 20:03:04 +05:30
Siddhesh Poyarekar
7a74607ff6
Consolidate definition of constant t22
2013-12-11 12:08:19 +05:30
Siddhesh Poyarekar
196f7f5dbf
Use double constants instead of the struct number
2013-12-11 11:24:25 +05:30
Adhemerval Zanella
ae1a4cd9ff
PowerPC: multiarch finite/finitef for PowerPC32
2013-12-06 05:47:03 -06:00
Joseph Myers
749008ff03
Fix exp missing underflows (bug 15268, bug 15425).
2013-12-03 21:49:56 +00:00
Joseph Myers
34e16df5a1
Fix erfc errno setting on underflow (bug 6786).
2013-12-03 16:25:18 +00:00
Joseph Myers
3c1c46a64a
Fix dbl-64 e_sqrt.c for non-default rounding modes (bug 16271).
2013-11-28 16:50:38 +00:00
Siddhesh Poyarekar
f3fd2628d8
Add systemtap probe markers for sin, cos, asin and acos
2013-11-20 07:46:48 +05:30
Siddhesh Poyarekar
c79a12040c
Consolidate conditionals in mp sin/cos functions
...
Consolidate conditionals in multiple precision sin and cos functions
to prepare the code for addition of probe points.
2013-10-28 16:21:54 +05:30
Ondřej Bílka
c5d5d574cb
Format floating routines.
2013-10-17 16:03:24 +02:00
Siddhesh Poyarekar
10e1cf6b73
Add systemtap markers to math function slow paths
...
Add systemtap probes to various slow paths in libm so that application
developers may use systemtap to find out if their applications are
hitting these slow paths. We have added probes for pow, exp, log,
tan, atan and atan2.
2013-10-11 22:37:53 +05:30
Siddhesh Poyarekar
885766357d
Format e_pow.c
2013-10-08 16:23:16 +05:30
Siddhesh Poyarekar
e7b2d1dd62
Format e_exp.c
2013-10-08 16:22:28 +05:30
Siddhesh Poyarekar
09544cbcd6
Consolidate multiple precision sin/cos functions
2013-10-08 11:50:17 +05:30
Siddhesh Poyarekar
4aafb73cb2
Consolidate common code into macros
...
Consolidated common Taylor series polynomials into macros in s_sin.c
to make it a bit cleaner.
2013-09-19 20:34:45 +05:30
Siddhesh Poyarekar
b348e1e3a6
Consolidate sin/cos table lookup code
2013-09-19 16:51:02 +05:30
Siddhesh Poyarekar
6cce25f814
Consolidate sin/cos computation for large inputs
2013-09-19 16:45:27 +05:30
Siddhesh Poyarekar
5eea0404a8
Remove redundant goto lines
2013-09-19 16:43:53 +05:30
Siddhesh Poyarekar
97a0650b8a
Format sincos32.c
2013-09-18 13:01:34 +05:30
Ondřej Bílka
c7cabd1355
Remove DO_NOT_USE_THIS conditionals.
2013-09-10 19:15:33 +02:00
Joseph Myers
3711a167f6
Fix spurious "inexact" exceptions from dbl-64 sqrt (bug 15631).
2013-06-15 19:59:41 +00:00
Ondrej Bilka
350635a59a
Fix leading whitespaces.
2013-06-06 20:36:07 +02:00
Joseph Myers
9c84384cc1
Remove trailing whitespace.
2013-06-05 20:44:03 +00:00
Joseph Myers
3e69426875
Fix nearbyint scheduling of arithmetic past fesetenv (bug 15490).
2013-05-19 18:40:25 +00:00
Joseph Myers
bb38759d6d
Fix remainder exceptions and directed-rounding results (bugs 15480, 15485).
2013-05-17 19:04:08 +00:00
Ryan S. Arnold
e054f49430
Add #include <stdint.h> for uint[32|64]_t usage (except installed headers).
2013-05-16 11:32:54 -05:00
Joseph Myers
d8cd06db62
Improve tgamma accuracy (bugs 2546, 2560, 5159, 15426).
2013-05-08 11:58:18 +00:00
Siddhesh Poyarekar
6dbe713d85
Format s_sin.c
2013-04-30 14:18:57 +05:30
Thomas Schwinge
a1cbf437a5
[BZ #14686 , #15336 ] Fix standard compliance. Don't use hard-coded qNaN values.
2013-04-05 22:34:52 +02:00
Thomas Schwinge
8b43a0c9f2
[BZ #15335 , #15342 ] Fix standard compliance. Don't use hard-coded qNaN values.
2013-04-05 22:27:29 +02:00
Thomas Schwinge
d91da4ce87
Remove unreachable code.
...
The case of y == 0 is handled at the beginning of the function.
2013-04-05 21:30:28 +02:00
Thomas Schwinge
bf0f50dfc6
Remove unused hard-coded qNaN definition.
2013-04-05 21:28:03 +02:00
Siddhesh Poyarekar
c871eccd1e
Remove TWO
...
Minor cleanup to remove the macro TWO and use the value directly
instead.
2013-04-03 15:47:01 +05:30
Siddhesh Poyarekar
e7906a4789
Use mantissa_t in mpexp
2013-04-02 17:53:09 +05:30
Thomas Schwinge
572676160d
New <math.h> macro named issignaling to check for a signaling NaN (sNaN).
...
It is based on draft TS 18661 and currently enabled as a GNU extension.
2013-04-02 13:51:02 +02:00
Siddhesh Poyarekar
c2d94018c6
Remove ONE and MONE
2013-03-29 16:40:36 +05:30
Siddhesh Poyarekar
27ec37f185
Format s_tan.c
2013-03-29 16:38:27 +05:30
Siddhesh Poyarekar
a64d7e0efb
Remove ZERO and MZERO macros
2013-03-29 16:37:26 +05:30
Siddhesh Poyarekar
d26dd3eb00
Format s_atan.c
2013-03-29 16:34:28 +05:30
Siddhesh Poyarekar
0f6a8d4b0b
Format e_log.c
2013-03-29 16:34:00 +05:30
Siddhesh Poyarekar
1728ab378e
Format and clean up s_atan2.c
2013-03-28 10:56:06 +05:30
Siddhesh Poyarekar
5739f705ee
Use integral constants
...
The compiler is smart enough to convert those into double for powerpc,
but if we put them as doubles, it adds overhead by performing those
operations in floating point mode.
2013-03-26 20:24:04 +05:30
Siddhesh Poyarekar
e375e83d17
Removed commented code
2013-03-26 20:14:18 +05:30
Siddhesh Poyarekar
6f2e90e78f
Make mantissa type of mp_no configurable
...
The mantissa of mp_no is intended to take only integral values. This
is a relatively good choice for powerpc due to its 4 fpus, but not for
other architectures, which suffer due to this choice. This change
makes the default mantissa a long integer and allows powerpc to
override it. Additionally, some operations have been optimized for
integer manipulation, resulting in a significant improvement in
performance.
2013-03-26 19:28:50 +05:30
Siddhesh Poyarekar
b33d4ce4a2
Replace 8388608.0 with HALFRAD in mp code
...
Minor cleanup
2013-03-21 13:07:44 +05:30