svn commit: trunk/uClibc/libm
vapier at uclibc.org
vapier at uclibc.org
Mon Apr 2 20:52:19 UTC 2007
Author: vapier
Date: 2007-04-02 13:52:18 -0700 (Mon, 02 Apr 2007)
New Revision: 18309
Log:
implement carg
Added:
trunk/uClibc/libm/carg.c
Modified:
trunk/uClibc/libm/Makefile.in
trunk/uClibc/libm/float_wrappers.c
Changeset:
Modified: trunk/uClibc/libm/Makefile.in
===================================================================
--- trunk/uClibc/libm/Makefile.in 2007-04-02 19:30:58 UTC (rev 18308)
+++ trunk/uClibc/libm/Makefile.in 2007-04-02 20:52:18 UTC (rev 18309)
@@ -72,7 +72,7 @@
w_cosh.c w_drem.c w_exp.c w_fmod.c w_gamma.c w_gamma_r.c \
w_hypot.c w_j0.c w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c \
w_log.c w_log10.c w_pow.c w_remainder.c w_scalb.c w_sinh.c \
- w_sqrt.c fpmacros.c nan.c
+ w_sqrt.c fpmacros.c nan.c carg.c
FL_MOBJ := \
acosf.o acoshf.o asinf.o asinhf.o atan2f.o atanf.o atanhf.o cbrtf.o \
ceilf.o copysignf.o cosf.o coshf.o erfcf.o erff.o exp2f.o expf.o \
@@ -81,7 +81,7 @@
log1pf.o log2f.o logbf.o logf.o lrintf.o lroundf.o modff.o nearbyintf.o \
nextafterf.o powf.o remainderf.o remquof.o rintf.o roundf.o \
scalblnf.o scalbnf.o sinf.o sinhf.o sqrtf.o tanf.o tanhf.o \
- tgammaf.o truncf.o
+ tgammaf.o truncf.o cargf.o
else
# This list of math functions was taken from POSIX/IEEE 1003.1b-1993
libm_CSRC := \
Added: trunk/uClibc/libm/carg.c
===================================================================
--- trunk/uClibc/libm/carg.c (rev 0)
+++ trunk/uClibc/libm/carg.c 2007-04-02 20:52:18 UTC (rev 18309)
@@ -0,0 +1,33 @@
+/* Compute argument of complex double value.
+ Copyright (C) 1997 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper at cygnus.com>, 1997.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+#include <complex.h>
+#include <math.h>
+
+libm_hidden_proto(atan2)
+libm_hidden_proto(carg)
+
+double
+carg (__complex__ double x)
+{
+ return atan2 (__imag__ x, __real__ x);
+}
+
+libm_hidden_def(carg)
Modified: trunk/uClibc/libm/float_wrappers.c
===================================================================
--- trunk/uClibc/libm/float_wrappers.c 2007-04-02 19:30:58 UTC (rev 18308)
+++ trunk/uClibc/libm/float_wrappers.c 2007-04-02 20:52:18 UTC (rev 18309)
@@ -10,7 +10,8 @@
* GNU Lesser General Public License version 2.1 or later.
*/
-#include "math.h"
+#include <math.h>
+#include <complex.h>
/* For the time being, do _NOT_ implement these functions
* that are defined by SuSv3 */
@@ -138,6 +139,15 @@
#endif
+#ifdef L_cargf
+libm_hidden_proto(carg)
+float cargf (float complex x)
+{
+ return (float) carg( (double)x );
+}
+#endif
+
+
#ifdef L_cbrtf
libm_hidden_proto(cbrt)
float cbrtf (float x)
More information about the uClibc-cvs
mailing list