Allan McRae
d4697bc93d
Update copyright notices with scripts/update-copyrights
2014-01-01 22:00:23 +10:00
Allan McRae
6c9642eda6
Fix typo in csloww()
...
An incorrect variable name was used during the refactoring done in
commit 4aafb73c
.
2013-12-27 12:29:38 +10:00
Siddhesh Poyarekar
392dd2de03
Consolidate code to compute sin and cos from lookup tables
...
This patch consolidates the multiple copies of code that looks up sin
and cos of a number from the lookup table and computes the final
value, into static functions. This does not have a noticeable
performance impact since the functions are inlined by gcc.
There is further scope for consolidation in the functions but they
cause a more noticable impact on performance (>5%) due to which I have
held back on them.
2013-12-20 16:01:03 +05:30
Siddhesh Poyarekar
84ba214c21
Remove more redundant computations in s_sin.c
...
Removed more redundant computations in the slow paths of the sin and
cos functions. The notable change is the passing of the most
significant bits of X to the slow functions to check if X is positive
so that just the absolute value of x can be passed and the repeated
ABS() operation is avoided.
2013-12-20 15:58:19 +05:30
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