| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I1e3097f745b526db448bf72fbc05fb2ba23929a0
|
|
|
|
| |
Change-Id: Ic280872ef3137febd9d4a87d5c7662e264692071
|
|
|
|
|
|
|
| |
Since ASAN depends on these libraries, we need to exclude them from
being instrumented.
Change-Id: I62005b6d04ee7b2283c4bd54ace5304386c67358
|
|
|
|
|
|
|
| |
Currently this is on everyone's include path and is getting exported
via the NDK.
Change-Id: Ia417839fb65c7e0afddcd9fae3438665dae8e752
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We build libm with -fvisibility=hidden, so we weren't exporting any
of the <complex.h> functions.
We also weren't building many of the functions anyway.
We were also missing the complex inverse trigonometric functions.
And because we didn't even have perfunctory "call each function once"
tests, we didn't notice that we weren't exporting any symbols, so this
patch adds at least that level of testing.
Change-Id: Ibcf2843f507126c51d134cc5fc8d67747e033a0d
|
|
|
|
|
|
|
| |
The default is none right now, but this will be needed when the
default becomes libc++.
Change-Id: Ib022adac2b9dc08fbfae830908128043cfffb91e
|
|
|
|
|
|
| |
Not sure how we missed these, but better late than never...
Change-Id: Ib08d1bb6e340a1907cbeb1cbe220e33f70642bdc
|
|
|
|
| |
Change-Id: I3b4e2c9c6ce6c5934f270a51ce5eb9154c5805d5
|
|
|
|
| |
Change-Id: I195d38c5e1f50d1cc6d4353dc8857f11b803b7a3
|
|
|
|
|
|
|
|
| |
Upstream has implemented lgammal/lgammal_r for ld128, and fixed the
sign problem we reported with all the lgamma*_r functions and -0.
Bug: 17471883
Change-Id: Ibb175d9cab67efae75f1010796fd44c9ba6ce4fc
|
|
|
|
| |
Change-Id: I92f9cd53d12efb2e0f4f8a9590b9fe42398233f6
|
|
|
|
| |
Change-Id: I8ac8ee52122ee19a2e423c3211092023cb4896eb
|
|
|
|
|
|
|
|
| |
Clang -m32 has incorrect sizeof(long double) = 12.
With -m64, LDBL_MANT_DIG is incorrect 64.
BUG: 17163651
Change-Id: I4b157aa1a8572c3a10aece6070e119a292ab8e83
|
|
|
|
|
| |
Bug: 16874785
Change-Id: I8512f8be3fd149d8720c5c3b4657bedd5ce2b1d1
|
|
|
|
|
|
|
|
| |
This way it's a lot harder for us to screw up (since we should always
be including <sys/cdefs.h> anyway).
Bug: 14659579
Change-Id: I23070fff3296b0d1c683bb5e3a6e214146327d53
|
|
|
|
|
|
|
|
|
|
|
| |
<features.h> is supposed to take user-settable stuff like _GNU_SOURCE
and _BSD_SOURCE and turn them into __USE_GNU and __USE_BSD for use in
the C library headers. Instead, bionic used to unconditionally define
_BSD_SOURCE and _GNU_SOURCE, and then test _GNU_SOURCE in the header
files (which makes no sense whatsoever).
Bug: 14659579
Change-Id: Ice4cf21a364ea2e559071dc8329e995277d5b987
|
|
|
|
|
|
|
|
| |
This reverts commit aadc4b2ff03b12142f2c6163266ebdb1df2a6e76.
The patch broke x86.
Change-Id: I0cda903732a685838bbd1877f94e1593a2a32acc
|
|
|
|
|
| |
Bug: 16211965
Change-Id: I81ec9706a4f2b5e8a840508a0f711cd25a5826ca
|
|
|
|
|
|
| |
This reverts commit 4e4e1a5d78ff6dd9394b9b116c012046da409e99.
Change-Id: I8e78c3a59598e052e02965dd37b3fba8f567eed9
|
|
|
|
|
|
| |
This reverts commit 65e80cf62200085f72c1c081aea2d6e9b800cde2.
Change-Id: I5f94b123f73db8d0b03cd71a5cffa0662776a017
|
|
|
|
|
|
|
|
| |
Since this was not done earlier, there are binary compatibility concerns
that prevent us from being able to apply this to LP32.
Bug: 11156955
Change-Id: Ie717c3ae4b81c749548a45a993c834e109700b27
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Change-Id: I080456a2c45ac870965c25552c5821875568fe9b
Author: Xiaokang, Qin <xiaokang.qin@intel.com>
Signed-off-by: Xiaokang, Qin <xiaokang.qin@intel.com>
Signed-off-by: Shuo Gao <shuo.gao@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-tracking-BZ: 63396
|
|\ \ |
|
| | |
| | |
| | |
| | | |
Change-Id: I2415e4808e40c2981d016c01969ba14ea22bf82e
|
|/ /
| |
| |
| | |
Change-Id: I6cb8c730483c325dc3cb75c2b2fbdd2d8455a54c
|
| |
| |
| |
| | |
Change-Id: I919d35db27ec16a6f54a7a5c3c070f33f03d9bb9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch fixes the ARM64 ABI for libm. fenv_t is now split in 32bit status
and 32bit control. This mirrors the AArch64 FPU control and status
registers (FPCR, FPSR).
The patch also refactors the libm implementation for ARM64 into a finer
grained control over the FPU registers.
Bionic-benchmarks has been expanded with 3 more benchmarks for floating
point operations. The new libm implementation for ARM64 performs better
over all the math benchmarks available.
Change-Id: I2a7f81d6b4e55c91f8a63a4c69614fc8b1bcf2db
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Pass "-fno-builtin-rint -fno-builtin-rintl -fno-builtin-rintf" to avoid
generating self recursions in lrint, lrintl, and lrintf.
BUG: 14225968
Change-Id: Iffc4d8f0692580d636a529f4c8aa9a7a10d7acd8
|
| |
| |
| |
| |
| | |
Bug: 11156955
Change-Id: I77b7772a44313a1eb3970f5d2c8e2af63690efa4
|
| |
| |
| |
| | |
Change-Id: If7b98f98c7ab4d3d77d310be082bff64512d51a8
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
I've reported the wcsftime bug upstream, but we really just want to use -D
to ensure the buggy code isn't built. (I've also brought our strftime a bit
closer to upstream now we have the right define.)
I don't think upstream is likely to fix all their sign-compare and
uninitialized warnings, so let's just silence them.
As for libm, again upstream isn't likely to fix all their warnings, and
silencing those made the ones that were our fault stand out. I've fixed
our <math.h> to fix the warnings caused by our lack of definitions for
the non-imprecise long-double functions. I checked the C99 standard, and
all these functions are there.
Change-Id: Iee8e1182c1db375058fb2c451eceb212bab47a37
|
| |
| |
| |
| | |
Change-Id: Ia131634cd97ca9523e1b63dce41f66247cbaa311
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- promoted IEEEld2bits to fpmath since most of the where the same for
diffrent archs
- removed _fpmath
- reinstated weak_references
- moved isfinite and isnormal to libc
- clean up fake_long_doubles
- clean up some useless ifdefs
- added missing nexttoward* tests
Bug: 14134235
Change-Id: I95639c4885653fe47fd7dc0570ee5bb3389bbc6b
|
| |
| |
| |
| | |
Change-Id: Iac666f69b930e31bbeac3438812d544c6af55b0f
|
| |
| |
| |
| | |
Change-Id: I6836da8fc9f66465435a21c51cb18851e20e9645
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also move isinf and isnan into libc like everyone else.
Also move fpclassify to libc like the BSDs (but unlike glibc). We need
this to be able to upgrade our float/double/long double parsing to gdtoa.
Also add some missing aliases. We now have all of:
isnan, __isnan, isnanf, __isnanf, isnanl, __isnanl,
isinf, __isinf, isinff, __isinff, isinfl, __isinfl,
__fpclassify, __fpclassifyd, __fpclassifyf, __fpclassifyl.
Bug: 13469877
Change-Id: I407ffbac06c765a6c5fffda8106c37d7db04f27d
|
| |
| |
| |
| | |
Change-Id: I3da7b8396a64d7899fcb89452c879806a8a511ff
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* reworked amd64/_fpmath.h and arm64/_fpmath.h to support 128-bit long
doubles.
* improved tests to cover long double cases
* made modfl an alias for LP32
Tests pass on x86, x86_64, arm, arm64 and mips.
Bug: 12921273
Change-Id: Ibe39acde57972447a8950fa45b1e702acc68ebeb
|
| |
| |
| |
| |
| |
| |
| | |
The most relevant changes are the ones in s_erff.c which should improve
the overall speed of exececution and the maximum error in ULP.
Change-Id: I7bd867f902db418db67f02cd58578624357b1ee8
|
| |
| |
| |
| | |
Change-Id: Ie72a01cddd5b813393656f603689e497b0f88ddd
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fix types after recent update:
https://android-review.googlesource.com/#/c/83435/
Change-Id: I17ed28af84b7adeb8572e18834e66f3264ec061d
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
|
| |
| |
| |
| | |
Change-Id: Ica843d387e115d0b27afd961af73237ec9109ed9
|
| |
| |
| |
| |
| |
| |
| |
| | |
Factored out common declarations to include/fenv.h and pushed
the implementation to .c files.
Bug: 11050744
Change-Id: I446b13cc4bc599d328343a8d392b07de280f6304
|
| |
| |
| |
| | |
Change-Id: Ic57541d0a567fd4ae79f0ad59b2ffde1130eb7d2
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
Bug: 12213562
Change-Id: I0d10664f9da60739bdbad0408be0dd61eea3c1fe
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
libc/libm support for MIPS64 targets
Change-Id: I8271941d418612a286be55495f0e95822f90004f
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
Signed-off-by: Raghu Gandham <raghu.gandham@imgtec.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Use arch-specific LOCAL_ variables to build libm for both
TARGET_ARCH and TARGET_2ND_ARCH.
Bug: 11654773
Change-Id: I6da794ba722bb68e7484d8869c6eb0425b7d17cb
|
| |
| |
| |
| |
| |
| |
| | |
Rename aarch64 build targets to arm64. The gcc toolchain is still
aarch64.
Change-Id: Ia92d8a50824e5329cf00fd6f4f92eae112b7f3a3
|