summaryrefslogtreecommitdiff
path: root/cos.c
Commit message (Collapse)AuthorAgeFilesLines
* r5689 undone: some casts were incorrect (mp_exp_t may be greater thanvlefevre2008-11-221-2/+2
| | | | | | | | | mp_prec_t, so that casting a mp_exp_t into a mp_prec_t can introduce a bug). There may be bugs in some cases, but the casts fix the symptom, not the bug (unless one casts the unsigned type to a signed type that is *strictly* larger, which is not possible here). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@5690 280ebfd0-de03-0410-8827-d642c229c3f4
* fixed some signed/unsigned warnings with g++ (please review)zimmerma2008-11-221-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@5689 280ebfd0-de03-0410-8827-d642c229c3f4
* This is now GNU MPFR!vlefevre2008-10-271-4/+4
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@5654 280ebfd0-de03-0410-8827-d642c229c3f4
* Further code clean-up (and consistency) based on icc warnings:vlefevre2008-08-071-2/+1
| | | | | | | | | | | * Removed useless code. * Avoid hiding variable declarations. * Use #ifdef BOOL_MACRO instead of #if BOOL_MACRO. * In MPFR_RNDRAW_GEN macro definition, variables declared locally now start with an underscore to avoid possible conflits with parameters (and modified macro calls that use these variables). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@5492 280ebfd0-de03-0410-8827-d642c229c3f4
* Copyright notice update: added 2008 withvlefevre2008-01-011-1/+1
| | | | | | | | perl -pi -e 's/2007 Free Software/2007, 2008 Free Software/' **/*(^/) under zsh. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@5151 280ebfd0-de03-0410-8827-d642c229c3f4
* fixed "efficiency bug" (argument reduction was broken)zimmerma2007-07-251-4/+9
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4699 280ebfd0-de03-0410-8827-d642c229c3f4
* in reconstruction after computation of cos(x/2^k) for reduced argument,zimmerma2007-07-171-1/+4
| | | | | | | | it may be that cos(x) is zero to the working precision. Then restart Ziv's algorithm with a larger precision. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4641 280ebfd0-de03-0410-8827-d642c229c3f4
* <stdio.h> and <limits.h> are now included unconditionally in mpfr-impl.hvlefevre2007-07-091-2/+0
| | | | | | | (removed their inclusion from the C files for consistency). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4632 280ebfd0-de03-0410-8827-d642c229c3f4
* ternary flag was wrong in case s=1 or -1 and rounding up/nearestzimmerma2007-07-041-4/+5
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4630 280ebfd0-de03-0410-8827-d642c229c3f4
* Untabified.vlefevre2007-07-011-31/+31
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4596 280ebfd0-de03-0410-8827-d642c229c3f4
* fixed stupid bug (subtraction of unsigned longs)zimmerma2007-06-251-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4573 280ebfd0-de03-0410-8827-d642c229c3f4
* cos.c: implemented argument reduction by 2Pizimmerma2007-06-251-89/+69
| | | | | | | tcos.c/tgeneric.c: reduce large exponent used when MPFR_CHECK_MAX is defined git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4572 280ebfd0-de03-0410-8827-d642c229c3f4
* cos.c bug fix: a rounding mode was incorrect.vlefevre2007-06-201-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4549 280ebfd0-de03-0410-8827-d642c229c3f4
* cos.c: use MPFR_SMALL_INPUT_AFTER_SAVE_EXPO instead ofvlefevre2007-06-201-3/+2
| | | | | | | MPFR_FAST_COMPUTE_IF_SMALL_INPUT. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4548 280ebfd0-de03-0410-8827-d642c229c3f4
* cos.c: untabified.vlefevre2007-06-201-14/+14
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4547 280ebfd0-de03-0410-8827-d642c229c3f4
* MPFR_RET (mpfr_check_range (...)) -> return mpfr_check_range (...)vlefevre2007-05-281-2/+1
| | | | | | | | as mpfr_check_range already handles the inexact flag. Reformatting (removed trailing spaces, untabified). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4495 280ebfd0-de03-0410-8827-d642c229c3f4
* Avoid integer overflow in MPFR_FAST_COMPUTE_IF_SMALL_INPUT.vlefevre2007-05-281-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4468 280ebfd0-de03-0410-8827-d642c229c3f4
* Added "Contributed by the Arenaire and Cacao projects, INRIA." to thevlefevre2007-02-071-0/+1
| | | | | | | copyright notices and removed a few old things. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4350 280ebfd0-de03-0410-8827-d642c229c3f4
* Copyright notice update: added 2007.vlefevre2007-01-101-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4326 280ebfd0-de03-0410-8827-d642c229c3f4
* Replaced mpfr_mul_2exp and mpfr_div_2exp by mpfr_mul_2ui andvlefevre2006-12-191-1/+1
| | | | | | | mpfr_div_2ui respectively (when this makes sense, of course). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4317 280ebfd0-de03-0410-8827-d642c229c3f4
* Fixed FSF address.vlefevre2006-03-311-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@4055 280ebfd0-de03-0410-8827-d642c229c3f4
* Added ', Inc.' when missing after 'Free Software Foundation'.vlefevre2006-01-051-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3985 280ebfd0-de03-0410-8827-d642c229c3f4
* Updated the copyright notices according to the new GNU rules on:vlefevre2006-01-051-1/+1
| | | | | | | | | | | http://www.gnu.org/prep/maintain/maintain.html#Copyright-Notices i.e. added 2006 to every MPFR file. Note: the copyright notices (currently 336) should match the regexp Copyright.* 2006 Free Software so that it will be easier to update them for the next year... git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3983 280ebfd0-de03-0410-8827-d642c229c3f4
* Fixed padding-bit test.vlefevre2005-10-301-2/+3
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3911 280ebfd0-de03-0410-8827-d642c229c3f4
* 3 corrections in cos.c concerning maxi:vlefevre2005-10-301-2/+12
| | | | | | | | | * corrected a comment; * failed if sizeof(int) <= sizeof(long) / 2; * now take possible padding bits into account. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3910 280ebfd0-de03-0410-8827-d642c229c3f4
* now tune Mulders short square (not yet used)zimmerma2005-10-291-10/+104
| | | | | | | improved mpfr_cos git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3908 280ebfd0-de03-0410-8827-d642c229c3f4
* Removed trailing spaces (better for future patches, as such spacesvlefevre2005-08-181-2/+2
| | | | | | | are sometimes stripped). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3726 280ebfd0-de03-0410-8827-d642c229c3f4
* Converted tabs to spaces with expand.vlefevre2005-08-181-19/+19
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3725 280ebfd0-de03-0410-8827-d642c229c3f4
* Replace mpfr_div_2ui call by SET_EXP/GET_EXPpelissip2005-06-151-1/+2
| | | | | | | since it can't overflow. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3656 280ebfd0-de03-0410-8827-d642c229c3f4
* Speed up a few (from 10822 to 10600).pelissip2005-06-151-3/+8
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3655 280ebfd0-de03-0410-8827-d642c229c3f4
* Fix bug (use of GCC specific attribute).pelissip2005-06-141-2/+0
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3649 280ebfd0-de03-0410-8827-d642c229c3f4
* Change the address of the FSF.pelissip2005-06-021-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3606 280ebfd0-de03-0410-8827-d642c229c3f4
* Add support for MPFR_GROUP functions.pelissip2005-06-021-12/+6
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3602 280ebfd0-de03-0410-8827-d642c229c3f4
* Replace TMP_ALLOC by MPFR_TMP_ALLOCpelissip2005-05-181-3/+3
| | | | | | | | | | Replace TMP_DECL by MPFR_TMP_DECL Replace TMP_MARK by MPFR_TMP_MARK Replace TMP_FREE by MPFR_TMP_FREE Add support for GMP's TMP_SALLOC. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3593 280ebfd0-de03-0410-8827-d642c229c3f4
* Reformating code.pelissip2005-05-171-37/+44
| | | | | | | | | Fix potential (?) overflow for very large precision. Various tiny optimizations Improve the initial estimation of the needed precision. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3561 280ebfd0-de03-0410-8827-d642c229c3f4
* Replace initial estimation of K0 from sqrt (p/2)pelissip2005-05-041-3/+6
| | | | | | | | to sqrt(p/16). It seems to be 30% faster for 5000 bits, and 5% faster for 50 bits. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3531 280ebfd0-de03-0410-8827-d642c229c3f4
* wrong commit, put back revision 1.47zimmerma2005-04-281-34/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3495 280ebfd0-de03-0410-8827-d642c229c3f4
* added error analysis for Geoff's argument reduction for arctanzimmerma2005-04-281-1/+34
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3494 280ebfd0-de03-0410-8827-d642c229c3f4
* Replace mpfr_can_round (..., GMP_RNDN, GMP_RNDZ, ...) to fast replacementpelissip2005-03-141-2/+1
| | | | | | | mpfr_round_p. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3388 280ebfd0-de03-0410-8827-d642c229c3f4
* USe of mpfr_nexttozero.pelissip2005-02-151-6/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3317 280ebfd0-de03-0410-8827-d642c229c3f4
* Add MPFR_LOG_FUNCpelissip2005-02-141-9/+7
| | | | | | | Use mpfr_cos as testing example. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3309 280ebfd0-de03-0410-8827-d642c229c3f4
* Fix wrong place for MPFR_LOG_BEGIN.pelissip2005-02-031-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3267 280ebfd0-de03-0410-8827-d642c229c3f4
* Add support for ZivLoop controler and logging.pelissip2005-02-021-9/+10
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3258 280ebfd0-de03-0410-8827-d642c229c3f4
* Clean up code (due to mix with Paul changes).pelissip2005-01-281-11/+4
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3240 280ebfd0-de03-0410-8827-d642c229c3f4
* Much faster worst case (ie result near 0 or 1).pelissip2005-01-281-2/+9
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3237 280ebfd0-de03-0410-8827-d642c229c3f4
* speed-up special case where approximation is 1 or -1zimmerma2005-01-281-0/+19
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3236 280ebfd0-de03-0410-8827-d642c229c3f4
* Updated copyright line.vlefevre2005-01-281-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3232 280ebfd0-de03-0410-8827-d642c229c3f4
* fixed efficiency problem in case of cos(Pi)zimmerma2005-01-281-3/+7
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3230 280ebfd0-de03-0410-8827-d642c229c3f4
* Add some assertion.pelissip2004-12-201-2/+4
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3157 280ebfd0-de03-0410-8827-d642c229c3f4
* Optimize mpfr_cos.pelissip2004-12-171-44/+48
| | | | | | | From 3363 / 21663.99 / 79727 to 3139 / 18920.58 / 69624 (opteron). git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3152 280ebfd0-de03-0410-8827-d642c229c3f4