aboutsummaryrefslogtreecommitdiffstats
path: root/libm
Commit message (Collapse)AuthorAgeFilesLines
...
* Auto-generate a complete NOTICE file.Elliott Hughes2012-08-091-356/+680
| | | | | | | Remove the hand-collated ones, and switch to a script that pulls the copyright headers out of every file and collects the unique ones. Change-Id: Ied3b98b3f56241df97166c410ff81de4e0157c9d
* Had include/arm/fenv.h, but missed include/mips/fenv.h.Shih-wei Liao2012-07-301-0/+217
| | | | | | | Needed for the device-build for LLVM's constant folding pass. Change-Id: I412a98d52458231650801a8b59fe3159a789b8b9 Author: fu@mips.com
* Enable sqrtf() x86 assembly codexqian62012-06-251-4/+6
| | | | | | This patch can improve the sqrtf() performance. Change-Id: Ic9d11d6a9ecd9b263f54d4878e13595e136b95ce
* Remove the last references to SuperH.Elliott Hughes2012-05-153-328/+0
| | | | Change-Id: Icb44c1f94cb178d90b4c2b1e8f6d175586aec4e1
* MIPS support to libm, libdl and libthread_dbChris Dearman2012-05-045-7/+330
| | | | | Change-Id: I9106721af7fe0cd45df82976250db0d300a20117 Signed-off-by: Raghu Gandham <raghu@mips.com>
* Update s_fabsl.c to upstream head.Elliott Hughes2012-04-301-2/+2
| | | | | Bug: http://code.google.com/p/android/issues/detail?id=29539 Change-Id: I843dcfcbfe49e8e9f43c49aae6ade1edb57a3053
* libm: fix invalid result of function remquo/remquofJack Ren2012-04-102-6/+8
| | | | | | | | | | | | | | | | | | | Currently we will get the wrong result as follows: remquof(0x7bb33336, 0x63000000) = -671088640, 0x00000000 remquo(0xbff0000000000003, 0x3ff0000000000003) = 1, 0x8000000000000000 remquo(0x9120000000000001, 0x0000000000000005) = -1288490188, 0x0000000000000004 while the correct one should be: remquof(0x7bb33336, 0x63000000) = 1476395008, 0x00000000 remquo(0xbff0000000000003, 0x3ff0000000000003) = -1, 0x8000000000000000 remquo(0x9120000000000001, 0x0000000000000005) = -1288490189, 0x0000000000000001 Fixed in this patch. Change-Id: I540b348cd10a539f3b39b1753945c893c4c7ec46 Signed-off-by: Jingwei Zhang <jingwei.zhang@intel.com> Signed-off-by: Jin Wei <wei.a.jin@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
* libm: cherry-pick one patch from freebsd to fix logb() denormals issueJack Ren2012-02-281-2/+2
| | | | | | | | | | | | | | | | from http://svnweb.freebsd.org/base?view=revision&revision=176101 " Oops, fix the fix in rev.1.10. logb() and logbf() were broken on denormals, and logb() remained broken after 1.10 because the fix for logbf() was incompletely translated. Convert to __FBSDID(). " Change-Id: I54f33648db7c421b06eee1ea8e63c57a179fae0d Signed-off-by: Jack Ren <jack.ren@intel.com> Signed-off-by: Jin Wei <wei.a.jin@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
* remove obsolete SuperH supportDavid 'Digit' Turner2012-01-311-11/+1
| | | | | | | | | | | | | | | | | | | We don't have a toolchain anymore, we don't have working original kernel headers, and nobody is maintaining this so there is really no point in keeping this here. Details of the patch: - removed code paths from Android.mk files related to the SuperH architecture ("sh") - removed libc/arch-sh, linker/arch-sh, libc/kernel/arch-sh - simplified libc/SYSCALLS.TXT - simplified the scripts in libc/tools/ and libc/kernel/tools Change-Id: I26b0e1422bdc347489e4573e2fbec0e402f75560 Signed-off-by: David 'Digit' Turner <digit@android.com>
* am 32ca348e: am ce0d646c: resolved conflicts for merge of 6cda7b62 to ↵David 'Digit' Turner2011-09-292-207/+246
|\ | | | | | | | | | | | | gingerbread-plus-aosp * commit '32ca348eecb114b9b2a9393f178c82310f590ddb': Bionic: x86: Fix libm macro definitions
| * resolved conflicts for merge of 6cda7b62 to gingerbread-plus-aospDavid 'Digit' Turner2011-09-302-207/+246
| |\ | | | | | | | | | Change-Id: I85bd5291c2a9cd29bff538b6d5a4dcd73f85a1fd
| | * Bionic: x86: Fix libm macro definitionsBruce Beare2011-09-292-206/+246
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | http://code.google.com/p/android/issues/detail?id=19276 GCC would remove inline asm due to lack of knowledge of FPU register changes. Change-Id: I9f9e8623fa6580843b7cd8178439ace8c2db2d51 Signed-off-by: Mark D Horn <mark.d.horn@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com> Author: Jingwei Zhang <jingwei.zhang@intel.com>
| | * Remove extra/unneeded copy of fenv.hBruce Beare2011-07-071-240/+0
| | | | | | | | | | | | | | | Orig-Change-Id: I80da2521c50df7e8967af48164cc834abf499c50 Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
| | * Use proper variable typingBruce Beare2011-07-072-3/+5
| | | | | | | | | | | | | | | Orig-Change-Id: If5c33d90b33f538448ac12e7bee94b4b9173d39c Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
* | | Disable sincos optimization for sincos calls.Jing Yu2011-08-171-0/+8
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sincos() functions would be turned into infinite calls to itself if sincos optimization is applied to itself. See gcc bugzilla http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46926 arm-linux-androideabi-4.4.3 toolchain does not have this problem because sincos optimization is entirely disabled. Starting from arm-linux-androideabi-4.6 toolchain, we enable sincos optimization in gcc. This patch simply enforce -O0 on this function to minimize the change. Change-Id: I0fc00b5f1dd71c0a024943bdedfed29b0d195e82
* | libm: Add nanf() and tgammaf() implementations.David 'Digit' Turner2011-01-254-0/+179
| | | | | | | | | | | | Requested by b/3370708 to export these through RenderScript. Change-Id: I1ae69f87a1ad4765b2dee8e4a6f2f3a6eb7c5ad4
* | android-x86: use proper variable typingChih-Wei Huang2010-12-231-1/+2
| | | | | | | | Change-Id: Iff99932acd2f6cb482fc5da9ff586d7ab2a8b209
* | am 9691ecc9: Merge "Remove extra/unneeded copy of fenv.h"David Turner2010-12-141-240/+0
|\ \ | | | | | | | | | | | | * commit '9691ecc9a768e7e08cb6af0b454029195ffc285f': Remove extra/unneeded copy of fenv.h
| * \ Merge "Remove extra/unneeded copy of fenv.h"David Turner2010-12-141-240/+0
| |\ \
| | * | Remove extra/unneeded copy of fenv.hBruce Beare2010-10-111-240/+0
| | | | | | | | | | | | | | | | | | | | Change-Id: I80da2521c50df7e8967af48164cc834abf499c50 Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
* | | | am 4efbf95d: Merge "Use proper variable typing"David Turner2010-12-072-3/+5
|\| | | | |_|/ |/| | | | | | | | * commit '4efbf95d8c88a3a203d687d9048b51e256ef3641': Use proper variable typing
| * | Merge "Use proper variable typing"David Turner2010-12-072-3/+5
| |\ \
| | * | Use proper variable typingBruce Beare2010-10-112-3/+5
| | |/ | | | | | | | | | | | | Change-Id: If5c33d90b33f538448ac12e7bee94b4b9173d39c Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
| * / Bionic: Aliasing problems with frexpfRodrigo Obregon2010-11-051-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a known bug in bionic libm due to aliasing issues in gcc 4.2 and 4.4; more specifically in frexpf. The function frexpf is used to extract the mantissa and exponent from a double precision number. The bug has already been reported here: https://code.google.com/p/android/issues/detail?id=6697 Change-Id: I2e1f2e0a45906642d2225b9d150ed391d2bf331c Signed-off-by: Rodrigo Obregon <robregon@ti.com>
* | libm: remove aliasing issue.David 'Digit' Turner2010-09-271-1/+1
| | | | | | | | | | | | | | See http://code.google.com/p/android/issues/detail?id=6697 for details about this change. Change-Id: I516f00c6f3bc99b22be51669e4573246bdd6e33d
* | DO NOT MERGE - add sincos.c to libm compilationDavid 'Digit' Turner2010-06-091-0/+1
| | | | | | | | | | | | For some reason, a previous backport from master didn't get this. Change-Id: I59eb96ad9de495a659808fdfb557033476c3d123
* | Add sincosl() function to bionic. So that sincos optimization can - DO NOT MERGEDavid 'Digit' Turner2010-06-092-0/+53
|/ | | | | | be enabled. Change-Id: I672cb319689aa4fb3f1f7cd868dda76842bebae9
* Merge "Sometimes the compiler is very right! Found bug in bessel routines ↵Jean-Baptiste Queru2010-05-113-5/+7
|\ | | | | | | for float."
| * Sometimes the compiler is very right! Found bug in bessel routines for float.Scott Turner2010-05-073-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original compiler error: target arm C: libm <= bionic/libm/src/e_j0f.c bionic/libm/src/e_j0f.c: In function 'j0f': bionic/libm/src/e_j0f.c:66: warning: comparison between signed and unsigned integer expressions bionic/libm/src/e_j0f.c: In function 'y0f': bionic/libm/src/e_j0f.c:140: warning: comparison between signed and unsigned integer expressions target arm C: libm <= bionic/libm/src/e_j1.c It's subtle but ix is masked with 0x7f000000 so it can never ever have a value greater than 0x80000000. So I switched to using the unmasked hx and added a cast as a reward to the compiler for being right. I checked the original routines that e_j0f.c was ported from (in e_j0.c) and the double's don't use 0x80000000 so this issue didn't exist there. Let that be a warning to those that just slap on casts to shut up the compiler, sometimes it's sniffed out a bug for you. :-) Similar fixes in the other functions. Change-Id: I7a776e5d4721fc3a9e3bd89179b67e9af3a2ebfa
* | Merge "Reduce compiler anxiety."David Turner2010-05-111-1/+1
|\ \
| * | Reduce compiler anxiety.Scott Turner2010-01-161-1/+1
| |/ | | | | | | | | | | | | | | | | Warning from compiler: target arm C: libm <= bionic/libm/src/e_atan2.c bionic/libm/src/e_atan2.c: In function 'atan2': bionic/libm/src/e_atan2.c:71: warning: suggest parentheses around arithmetic in operand of '|' target arm C: libm <= bionic/libm/src/e_atan2f.c
* / Reversed order of const and static to hush warning from compiler.Scott Turner2010-01-161-10/+10
|/
* added and modified libm to support SuperH architectureShin-ichiro KAWASAKI2009-08-314-1/+339
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-175-8/+213
|
* Initial Contributionandroid-1.0The Android Open Source Project2008-10-21317-0/+29138