about summary refs log tree commit diff
path: root/sysdeps/ieee754/dbl-64/e_pow.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2011-10-25 00:56:33 -0400
committerUlrich Drepper <drepper@gmail.com>2011-10-25 00:56:33 -0400
commit31d3cc00b0cc5205b4b4efd73c911cfddff444c6 (patch)
tree89e95646d591fee083d62642085da77a01127292 /sysdeps/ieee754/dbl-64/e_pow.c
parent202c9deb15ee43bcbe70b36fa9bae050b8633c27 (diff)
downloadglibc-31d3cc00b0cc5205b4b4efd73c911cfddff444c6.tar.gz
glibc-31d3cc00b0cc5205b4b4efd73c911cfddff444c6.tar.xz
glibc-31d3cc00b0cc5205b4b4efd73c911cfddff444c6.zip
Cleanup FMA4 patch
Move the FMA4 code into its own section.  Avoid some of the duplication
of data resulting from the double use of source files.
Diffstat (limited to 'sysdeps/ieee754/dbl-64/e_pow.c')
-rw-r--r--sysdeps/ieee754/dbl-64/e_pow.c24
1 files changed, 19 insertions, 5 deletions
diff --git a/sysdeps/ieee754/dbl-64/e_pow.c b/sysdeps/ieee754/dbl-64/e_pow.c
index 94b1ab8961..350e93986d 100644
--- a/sysdeps/ieee754/dbl-64/e_pow.c
+++ b/sysdeps/ieee754/dbl-64/e_pow.c
@@ -43,6 +43,10 @@
 #include "upow.tbl"
 #include "math_private.h"
 
+#ifndef SECTION
+# define SECTION
+#endif
+
 
 double __exp1(double x, double xx, double error);
 static double log1(double x, double *delta, double *error);
@@ -55,7 +59,9 @@ static int checkint(double x);
 /* An ultimate power routine. Given two IEEE double machine numbers y,x    */
 /* it computes the correctly rounded (to nearest) value of X^y.            */
 /***************************************************************************/
-double __ieee754_pow(double x, double y) {
+double
+SECTION
+__ieee754_pow(double x, double y) {
   double z,a,aa,error, t,a1,a2,y1,y2;
 #if 0
   double gor=1.0;
@@ -160,7 +166,9 @@ strong_alias (__ieee754_pow, __pow_finite)
 /**************************************************************************/
 /* Computing x^y using more accurate but more slow log routine            */
 /**************************************************************************/
-static double power1(double x, double y) {
+static double
+SECTION
+power1(double x, double y) {
   double z,a,aa,error, t,a1,a2,y1,y2;
   z = my_log2(x,&aa,&error);
   t = y*134217729.0;
@@ -183,7 +191,9 @@ static double power1(double x, double y) {
 /* + the parameter delta.                                                   */
 /* The result is bounded by error (rightmost argument)                      */
 /****************************************************************************/
-static double log1(double x, double *delta, double *error) {
+static double
+SECTION
+log1(double x, double *delta, double *error) {
   int i,j,m;
 #if 0
   int n;
@@ -275,7 +285,9 @@ static double log1(double x, double *delta, double *error) {
 /* Computing log(x)(x is left argument).The result is return double + delta.*/
 /* The result is bounded by error (right argument)                           */
 /****************************************************************************/
-static double my_log2(double x, double *delta, double *error) {
+static double
+SECTION
+my_log2(double x, double *delta, double *error) {
   int i,j,m;
 #if 0
   int n;
@@ -369,7 +381,9 @@ static double my_log2(double x, double *delta, double *error) {
 /* Routine receives a double x and checks if it is an integer. If not */
 /* it returns 0, else it returns 1 if even or -1 if odd.              */
 /**********************************************************************/
-static int checkint(double x) {
+static int
+SECTION
+checkint(double x) {
   union {int4 i[2]; double x;} u;
   int k,m,n;
 #if 0