OSDN Git Service
Yabin Cui [Wed, 4 Mar 2015 23:25:42 +0000 (23:25 +0000)]
Merge "Add fortify compile test."
Christopher Ferris [Wed, 4 Mar 2015 21:52:00 +0000 (21:52 +0000)]
Merge "Add aarch64 instructions wherever possible"
Yabin Cui [Wed, 4 Mar 2015 04:27:58 +0000 (20:27 -0800)]
Add fortify compile test.
Two parts of tests are added:
1. Compile time warnings for gcc checking built-in functions.
2. Compile time errors for each errordecl() in bionic.
Bug:
19234260
Change-Id: Iec6e4a8070c36815574fe9e0af9595d6143a4757
Amaury Le Leyzour [Tue, 17 Feb 2015 23:05:51 +0000 (15:05 -0800)]
Add aarch64 instructions wherever possible
fma, sqrt and various rounding functions have aarch64 instruction equivalent
Change-Id: I1284f31b9f78f914281e5563b8d44db8362b627d
Yabin Cui [Wed, 4 Mar 2015 01:49:19 +0000 (01:49 +0000)]
Merge "Refactor pthread_key.cpp to be lock-free."
Yabin Cui [Sat, 21 Feb 2015 00:15:33 +0000 (16:15 -0800)]
Refactor pthread_key.cpp to be lock-free.
Change-Id: I20dfb9d3cdc40eed10ea12ac34f03caaa94f7a49
Yabin Cui [Tue, 3 Mar 2015 02:56:19 +0000 (02:56 +0000)]
Merge "Lose bionic_atomic stuff."
Mark Salyzyn [Mon, 2 Mar 2015 18:56:21 +0000 (18:56 +0000)]
Merge "bionic: deprecate _PATH_MEM"
Mark Salyzyn [Mon, 2 Mar 2015 17:14:51 +0000 (09:14 -0800)]
bionic: deprecate _PATH_MEM
/dev/mem (and /dev/kmem) are not enabled in the kernels, and selinux
prevents access and makes it a rule compilation error to enable
access. No code uses the _PATH_MEM macro. Remove definition to
suppress future usage.
Bug:
19549480
Change-Id: Ie0fb0f53d43349f4fe227068e4bf8a768f620d60
Christopher Ferris [Sat, 28 Feb 2015 18:31:00 +0000 (18:31 +0000)]
Merge "Fix fread returning bad data."
Christopher Ferris [Sat, 28 Feb 2015 02:22:45 +0000 (18:22 -0800)]
Fix fread returning bad data.
Bug:
19172514
Change-Id: I05016577858a02aca7d14e75e6ec28abc925037c
Christopher Ferris [Fri, 27 Feb 2015 20:23:15 +0000 (20:23 +0000)]
Merge "libm: arm: Add arm specific floor() optimization"
Yabin Cui [Fri, 27 Feb 2015 18:29:47 +0000 (18:29 +0000)]
Merge "Make bionic gtest main be compatible with gtest output format for cts test."
Yabin Cui [Fri, 27 Feb 2015 03:03:54 +0000 (19:03 -0800)]
Make bionic gtest main be compatible with gtest output format for cts test.
Bug:
17589740
Change-Id: Ifab521da379a33bf0a7bf11c21386f936f0d494c
Yabin Cui [Thu, 26 Feb 2015 21:45:06 +0000 (13:45 -0800)]
Lose bionic_atomic stuff.
Bug:
17177189
Change-Id: Ie1f5d7af359d31b14f58e53ec89c72111362d7ec
Christopher Ferris [Thu, 26 Feb 2015 03:47:12 +0000 (03:47 +0000)]
Merge "Allow wildcards to match arg values."
Yabin Cui [Thu, 26 Feb 2015 03:46:40 +0000 (03:46 +0000)]
Merge "Make getgrent deprecated."
Yabin Cui [Thu, 26 Feb 2015 03:05:37 +0000 (19:05 -0800)]
Make getgrent deprecated.
Bug:
19340053
Change-Id: Ie8b97f840d9e87555e6a3d591fc87bc08c2d6820
Yabin Cui [Thu, 26 Feb 2015 02:23:07 +0000 (02:23 +0000)]
Merge "Move endpwent to ndk_cruft.cpp."
Yabin Cui [Thu, 26 Feb 2015 02:17:16 +0000 (02:17 +0000)]
Merge "Make tempnam/mktemp deprecated."
Yabin Cui [Tue, 24 Feb 2015 00:42:07 +0000 (16:42 -0800)]
Make tempnam/mktemp deprecated.
Bug:
19340053
Change-Id: Ib02c65814ef97cd1758fd8142b73736cc8bc1700
Yabin Cui [Wed, 25 Feb 2015 22:58:08 +0000 (14:58 -0800)]
Move endpwent to ndk_cruft.cpp.
Bug:
19109159
Change-Id: I3683a247643006ea6d6bcf3845f57d1908d457d7
Christopher Ferris [Sat, 21 Feb 2015 02:31:06 +0000 (18:31 -0800)]
Allow wildcards to match arg values.
Change-Id: I38230b500bb8f8f69af0d7c740855a401cd12898
Yabin Cui [Wed, 25 Feb 2015 21:04:56 +0000 (21:04 +0000)]
Merge "Switch system_properties.cpp from bionic atomic operations to stdatomic."
Yabin Cui [Wed, 25 Feb 2015 00:00:51 +0000 (00:00 +0000)]
Merge "Move getusershell/endusershell/setusershell to ndk_cruft.cpp."
Yabin Cui [Tue, 24 Feb 2015 23:40:30 +0000 (23:40 +0000)]
Merge "Make all output of child test go to parent process in gtest_main."
Yabin Cui [Tue, 24 Feb 2015 21:18:25 +0000 (13:18 -0800)]
Move getusershell/endusershell/setusershell to ndk_cruft.cpp.
Bug:
19108648
Change-Id: I65134040345398dde612c4325d902db58f3bd2be
Yabin Cui [Tue, 24 Feb 2015 22:39:19 +0000 (14:39 -0800)]
Make all output of child test go to parent process in gtest_main.
Change-Id: Iad460e89755051cdb99593cbf42c97d9a359f32b
Nick Kralevich [Tue, 24 Feb 2015 21:49:09 +0000 (21:49 +0000)]
Merge "Fix "faccessat ignores flags""
Nick Kralevich [Tue, 24 Feb 2015 21:40:43 +0000 (13:40 -0800)]
Fix "faccessat ignores flags"
The kernel system call faccessat() does not have any flags arguments,
so passing flags to the kernel is currently ignored.
Fix the kernel system call so that no flags argument is passed in.
Ensure that we don't support AT_SYMLINK_NOFOLLOW. This non-POSIX
(http://pubs.opengroup.org/onlinepubs/
9699919799/functions/access.html)
flag is a glibc extension, and has non-intuitive, error prone behavior.
For example, consider the following code:
symlink("foo.is.dangling", "foo");
if (faccessat(AT_FDCWD, "foo", R_OK, AT_SYMLINK_NOFOLLOW) == 0) {
int fd = openat(AT_FDCWD, "foo", O_RDONLY | O_NOFOLLOW);
}
The faccessat() call in glibc will return true, but an attempt to
open the dangling symlink will end up failing. GLIBC documents this
as returning the access mode of the symlink itself, which will
always return true for any symlink on Linux.
Some further discussions of this are at:
* http://lists.landley.net/pipermail/toybox-landley.net/2014-September/003617.html
* http://permalink.gmane.org/gmane.linux.lib.musl.general/6952
AT_SYMLINK_NOFOLLOW seems broken by design. I suspect this is why this
function was never added to POSIX. (note that "access" is pretty much
broken by design too, since it introduces a race condition between
check and action). We shouldn't support this until it's clearly
documented by POSIX or we can have it produce intuitive results.
Don't support AT_EACCESS for now. Implementing it is complicated, and
pretty much useless on Android, since we don't have setuid binaries.
See http://git.musl-libc.org/cgit/musl/commit/?id=
0a05eace163cee9b08571d2ff9d90f5e82d9c228
for how an implementation might look.
Bug:
18867827
Change-Id: I25b86c5020f3152ffa3ac3047f6c4152908d0e04
Yabin Cui [Wed, 11 Feb 2015 05:35:56 +0000 (21:35 -0800)]
Switch system_properties.cpp from bionic atomic operations to stdatomic.
Bug:
17177189
Change-Id: I42e05ad1c490cc7a8040138151afc0ee72a9b63f
Elliott Hughes [Tue, 24 Feb 2015 05:55:37 +0000 (05:55 +0000)]
Merge "Fix dup2 in the case where the two fds are equal."
Elliott Hughes [Tue, 24 Feb 2015 02:02:29 +0000 (18:02 -0800)]
Fix dup2 in the case where the two fds are equal.
dup3's behavior differs from dup2 in this case, so we need to paper
over that in the C library.
Change-Id: I313cd6f226db5e237f61866f324c5ecdd12bf762
Elliott Hughes [Mon, 23 Feb 2015 22:36:06 +0000 (22:36 +0000)]
Merge "Add RLIM_SAVED_CUR and RLIM_SAVED_MAX."
Elliott Hughes [Mon, 23 Feb 2015 21:41:40 +0000 (13:41 -0800)]
Add RLIM_SAVED_CUR and RLIM_SAVED_MAX.
Change-Id: Ia6be76460bfcf852832325c5f36cb272f49a4b87
Elliott Hughes [Mon, 23 Feb 2015 16:04:20 +0000 (16:04 +0000)]
Merge "[MIPS64] Fix mips64 build."
Nikola Veljkovic [Mon, 23 Feb 2015 15:14:56 +0000 (16:14 +0100)]
[MIPS64] Fix mips64 build.
Build was broken by:
https://android-review.googlesource.com/133834
Use <unistd.h> to get syscall().
Remove <asm/unistd.h>, it gets included through <sys/syscall.h>.
Change-Id: Id762f6dea5f9538c19b79cdd46deda978efd50fe
Greg Hackmann [Fri, 20 Feb 2015 19:16:48 +0000 (19:16 +0000)]
Merge "Fix 64-bit benchmark build"
Greg Hackmann [Fri, 20 Feb 2015 19:00:14 +0000 (11:00 -0800)]
Fix 64-bit benchmark build
The * flag to printf() wants an int instead of size_t, and these are
distinct types on 64-bit. To accomodate this, make the name column
width helpers return int.
In theory this truncates things, but in practice this only matters if
you have a benchmark with more than INT_MAX characters in its name (in
which case you have bigger problems).
Change-Id: I3338948c25a3a8d84f1ead2f5b457c05da8a01cf
Signed-off-by: Greg Hackmann <ghackmann@google.com>
Elliott Hughes [Fri, 20 Feb 2015 16:56:57 +0000 (16:56 +0000)]
Merge "valgrind can't find syscall because we didn't put it in <unistd.h>."
Elliott Hughes [Fri, 20 Feb 2015 06:49:44 +0000 (22:49 -0800)]
valgrind can't find syscall because we didn't put it in <unistd.h>.
Change-Id: I1e47291d4476bd2816138a8cf58f29d4986d39e3
Christopher Ferris [Fri, 20 Feb 2015 00:53:24 +0000 (00:53 +0000)]
Merge "Refactor the benchmark code."
Christopher Ferris [Wed, 18 Feb 2015 03:58:53 +0000 (19:58 -0800)]
Refactor the benchmark code.
Changes:
- Modify the benchmarks to derive from a single Benchmark object.
- Rewrite the main iteration code. This includes changing the iteration
code to use the actual total time calculated by the benchmark as a basis
for determining whether there are enough iterations instead of using
the time it takes to run the benchmark.
- Allow benchmarks to take no argument, int, or double.
- Fix the PrettyInt printer for negative integers.
- Modify the max column width name to include the whole name including
the arg part.
- Reformat property_benchmark.cpp in line with the rest of the code.
- Modify a few of the math benchmarks to take an argument instead of
separate benchmarks for the same function with different args.
- Create a vector of regex_t structs to represent the args all at
once instead of when running each benchmark.
This change is in preparation for adding new math based benchmarks.
Tested by running on a nexus flo running at max using the new code
and the old code and comparing. All of the numbers are similar, but
some of the iterations are different due to the slightly different
algorithm used.
Change-Id: I57ad1f3ff083282b9ffeb72e687cab369ce3523a
Elliott Hughes [Thu, 19 Feb 2015 15:49:53 +0000 (15:49 +0000)]
Merge "Add GNU extensions mempcpy and wmemcpy."
Elliott Hughes [Thu, 19 Feb 2015 05:29:13 +0000 (21:29 -0800)]
Add GNU extensions mempcpy and wmemcpy.
Used by elfutils. On the bright side, they stopped using __mempcpy.
Bug:
18374026
Change-Id: Id29bbe6ef1c5ed5a171bb6c32182f129d8332abb
Dan Albert [Thu, 19 Feb 2015 02:33:08 +0000 (02:33 +0000)]
Merge "Parameterize use of clang in libc_ndk."
Dan Albert [Thu, 19 Feb 2015 01:37:52 +0000 (17:37 -0800)]
Parameterize use of clang in libc_ndk.
We still have issues with clang coverage in static libraries, so we
need to make sure we follow suit with the rest of libc for now.
Bug:
17574078
Change-Id: I2ab58a84b1caa0d8d08415d240c35adec5b1e150
Elliott Hughes [Thu, 19 Feb 2015 01:00:18 +0000 (01:00 +0000)]
Merge "[MIPS] Fix setjmp signals"
Yabin Cui [Wed, 18 Feb 2015 21:33:01 +0000 (21:33 +0000)]
Merge "Make gets() deprecated."
Yabin Cui [Wed, 18 Feb 2015 20:20:32 +0000 (12:20 -0800)]
Make gets() deprecated.
gets is already deprecated in glibc. Others with __warnattr are not deprecated.
Change-Id: I80a276d2b5964630218be47f1c94b146c0d31151
Elliott Hughes [Wed, 18 Feb 2015 18:01:04 +0000 (18:01 +0000)]
Merge "Implement _FILE_OFFSET_BITS (mostly)."
Neil Fuller [Wed, 18 Feb 2015 09:42:31 +0000 (09:42 +0000)]
Merge "Update tzdata to tzdata2015a"
Elliott Hughes [Sat, 7 Feb 2015 06:28:49 +0000 (22:28 -0800)]
Implement _FILE_OFFSET_BITS (mostly).
I still don't think we can make stdio's fseeko and ftello work, but we can
have everything else, and very few programs use fseeko/ftello (and they can
just refrain from using _FILE_OFFSET_BITS and be no worse off than they are
today).
Bug:
11865851
Change-Id: Ic3cb409aae6713f4b345de954bcc4241fcd969ec
Dan Albert [Wed, 18 Feb 2015 01:05:48 +0000 (01:05 +0000)]
Merge "Update NDK compatlib for 4.1.2."
Dan Albert [Wed, 18 Feb 2015 01:05:43 +0000 (01:05 +0000)]
Merge "Update the NDK compatlib for 4.4.4 and ToT."
Dan Albert [Fri, 13 Feb 2015 00:35:09 +0000 (16:35 -0800)]
Update NDK compatlib for 4.1.2.
The replacement new failures present in newer versions are present
here as well, with the following new issues:
XPASS std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.pass.cpp
This is from the -NaN formatting fix in bionic. We previously had this
wrong, and the upstream test is also wrong. There's currently an XFAIL
for Android in this test because I haven't fixed the upstream test
yet. After that is done, I'll need to teach the test runner how to
XFAIL older Android versions...
FAIL std/localization/locale.categories/category.ctype/facet.ctype.special/facet.ctype.char.dtor/dtor.pass.cpp
dtor.pass.cpp:39: int main(): assertion "globalMemCounter.checkDeleteArrayCalledEq(1)" failed
Haven't investigated this one yet. http://b/
19412688
Note that this also needs the libgcc link ordering to be fixed in the
build system, as we'll otherwise depend on libgcc symbols from libc
that may or may not have been there.
The build fix can't be submitted because the proper link order causes
the libgcc unwinder to be used instead of the EHABI one:
http://b/
18471342
Bug:
18471532
Change-Id: Icf560485a9b8f5ebbe01e4458703e62ec94df5e1
Dan Albert [Tue, 10 Feb 2015 01:45:22 +0000 (17:45 -0800)]
Update the NDK compatlib for 4.4.4 and ToT.
Now passes all libc++ tests for these targets, with the exception of
the usual failing replacement new tests since libc uses new/delete for
things. I don't know if we can ever really fix these.
Bug:
18471532
Change-Id: Ibc0a15f26b0e4613249b5e15ecf3cf80e523467c
Yabin Cui [Tue, 17 Feb 2015 23:56:29 +0000 (23:56 +0000)]
Merge "Revert "Move use of __warnattr to __deprecated.""
Yabin Cui [Tue, 17 Feb 2015 23:54:40 +0000 (23:54 +0000)]
Revert "Move use of __warnattr to __deprecated."
This reverts commit
4645c4f62df49d1ece5aabb7c9fa44ca34d30272.
Change-Id: I6c1062d54a4e2c4f41ce7a403e4e7840e6339146
Yabin Cui [Tue, 17 Feb 2015 23:10:30 +0000 (23:10 +0000)]
Merge "Move use of __warnattr to __deprecated."
Yabin Cui [Tue, 17 Feb 2015 20:39:39 +0000 (12:39 -0800)]
Move use of __warnattr to __deprecated.
clang don't support warning attribute. Replacing warning attriubte with
deprecated attribute can achieve the same behavior whether compiled by
gcc or clang.
Bug:
19340053
Change-Id: I064432b81cf55212458edbc749eb72dc15a810fb
Christopher Ferris [Tue, 17 Feb 2015 21:41:41 +0000 (21:41 +0000)]
Merge "Accuracy tests for libm"
Yabin Cui [Tue, 17 Feb 2015 21:29:21 +0000 (21:29 +0000)]
Merge "Change getgrent error declaration message to proper style."
Elliott Hughes [Tue, 17 Feb 2015 21:20:39 +0000 (21:20 +0000)]
Merge "Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX."
Yabin Cui [Tue, 17 Feb 2015 19:33:42 +0000 (11:33 -0800)]
Change getgrent error declaration message to proper style.
Bug:
19340053
Change-Id: I9c47a2016f356d171a5f2082acb8391d81e019b2
Elliott Hughes [Tue, 17 Feb 2015 17:55:58 +0000 (09:55 -0800)]
Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX.
Change-Id: I656f613166bd604f35b31e5ec042a5230c6b82b8
Elliott Hughes [Tue, 17 Feb 2015 17:54:39 +0000 (17:54 +0000)]
Merge "Fix memchr overflow."
Elliott Hughes [Tue, 17 Feb 2015 17:09:34 +0000 (17:09 +0000)]
Merge "POSIX says flock is in <sys/file.h>, not <unistd.h>."
Elliott Hughes [Mon, 16 Feb 2015 20:19:46 +0000 (12:19 -0800)]
POSIX says flock is in <sys/file.h>, not <unistd.h>.
Bug:
19392265
Change-Id: I14d0b56883f0354e13db04a1d140b8f60dae08d7
Neil Fuller [Mon, 2 Feb 2015 11:24:22 +0000 (11:24 +0000)]
Update tzdata to tzdata2015a
Time Zone Data v. 2015a (Released 2015-01-29)
http://www.iana.org/time-zones/repository/releases/tzdata2015a.tar.gz
Information from NEWS:
Release 2015a - 2015-01-29 22:35:20 -0800
Changes affecting future time stamps
The Mexican state of Quintana Roo, represented by America/Cancun,
will shift from Central Time with DST to Eastern Time without DST
on 2015-02-01 at 02:00. (Thanks to Steffen Thorsen and Gwillim Law.)
Chile will not change clocks in April or thereafter; its new standard time
will be its old daylight saving time. This affects America/Santiago,
Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.)
New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
(Thanks to Tim Parenti.)
Changes affecting past time stamps
Iceland observed DST in 1919 and 1921, and its 1939 fallback
transition was Oct. 29, not Nov. 29. Remove incorrect data from
Shanks about time in Iceland between 1837 and 1908.
Some more zones have been turned into links, when they differed
from existing zones only for older time stamps. As usual,
these changes affect UTC offsets in pre-1970 time stamps only.
Their old contents have been moved to the 'backzone' file.
The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
and Asia/Muscat.
Bug:
19212588
(cherry-picked from commit
700eb048fb6df8805245097d73a87384108fdf67)
Change-Id: I23d94982f634889ab9dcef28cf4a8853224bfd9c
Elliott Hughes [Sun, 15 Feb 2015 00:18:22 +0000 (00:18 +0000)]
Merge "Regression test for NDK bug 80199."
Elliott Hughes [Sat, 14 Feb 2015 22:11:50 +0000 (14:11 -0800)]
Regression test for NDK bug 80199.
Bionic never had this bug, but since the proposed fix is to remove the NDK's
broken code, we should add a regression test here.
Bug: https://code.google.com/p/android/issues/detail?id=80199
Change-Id: I4de21b5da9913cef990bc4d05a7e27562a71a02b
Elliott Hughes [Sat, 14 Feb 2015 21:21:22 +0000 (13:21 -0800)]
Fix memchr overflow.
The overflow's actually in the generic C implementation of memchr.
While I'm here, let's switch our generic memrchr to the OpenBSD version too.
Bug: https://code.google.com/p/android/issues/detail?id=147048
Change-Id: I296ae06a1ee196d2c77c95a22f11ee4d658962da
Yabin Cui [Sat, 14 Feb 2015 02:37:19 +0000 (02:37 +0000)]
Merge "Declare getgrent/setgrent/endgrent as missing."
Dmitriy Ivanov [Sat, 14 Feb 2015 00:38:03 +0000 (00:38 +0000)]
Merge changes I88827aa0,Ib0b0987a
* changes:
Fix: DT_DEBUG was acting as DT_REL on mips64
Add missing SHT_LOOS/SHT_HIOS values
Dmitriy Ivanov [Sat, 14 Feb 2015 00:29:50 +0000 (16:29 -0800)]
Fix: DT_DEBUG was acting as DT_REL on mips64
Change-Id: I88827aa07d75d06d606c987e6270fcca3ae6216f
Dmitriy Ivanov [Sat, 14 Feb 2015 00:25:43 +0000 (16:25 -0800)]
Add missing SHT_LOOS/SHT_HIOS values
Change-Id: Ib0b0987a7e85af7863c6ef894263b5980e32344d
Yabin Cui [Fri, 13 Feb 2015 18:52:35 +0000 (10:52 -0800)]
Declare getgrent/setgrent/endgrent as missing.
Bug:
19340053
Change-Id: I42bfeda95e6f262e2e74ab47336ea346c2de7e4a
Colin Cross [Fri, 13 Feb 2015 18:38:02 +0000 (18:38 +0000)]
Merge "Make .note.android.ident section type SH_NOTE"
Jingwei Zhang [Tue, 2 Sep 2014 13:39:14 +0000 (21:39 +0800)]
Accuracy tests for libm
This patch adds more tests for math functions to address coverage
issue of math functions discussed in:
https://android-review.googlesource.com/#/c/49653/
https://android-review.googlesource.com/#/c/94780/
These are data sets used in regression tests for the Intel the math library (libm). They were collected over a long period of testing various libm implementations.
The data sets contain function specific data (special and corner cases such as +/-0, maximum/minimum normalized numbers, +/-infinity, QNaN/SNaN, maximum/minimum denormal numbers, arguments that would produce close to overflow/underflow results, known hard-to-round cases, etc), implementation specific data (arguments close to table look-up values for different polynomial approximations, worst cases for range reduction algorithms) and other data with interesting bit patterns.
The reference values are computed with Maple and were converted into hexadecimal format.
Change-Id: I7177c282937369eae98f25d02134e4fc3beadde8
Signed-off-by: Jingwei Zhang <jingwei.zhang@intel.com>
Signed-off-by: Mingwei Shi <mingwei.shi@intel.com>
Colin Cross [Fri, 13 Feb 2015 01:03:22 +0000 (17:03 -0800)]
Make .note.android.ident section type SH_NOTE
The .note.android.ident section is only used by GDB, which doesn't
care what section type the section is, but it would be convenient
for readelf -n to be able to find the section too.
The old way of getting the .note.android.ident section to be of type
SH_NOTE involved compiling from .c to .s using gcc, running sed to
change progbits to note, and then compiling from .s to .o using gcc.
Since crtbrand.c only contains a section containing data, a
crtbrand.S can be checked in that will compile on all platforms,
avoiding the need for sed.
Also add crtbrand.o to crtbegin_so.o so that libraries also get
the note, and to the crt workaround in arm libc.so.
Change-Id: Ica71942a6af4553b56978ceaa288b3f4c15ebfa2
Shu Zhang [Wed, 23 Jul 2014 08:59:22 +0000 (16:59 +0800)]
libm: arm: Add arm specific floor() optimization
Add arm specific floor() implementation which avoids VMSR and VMRS
instructions.
Change-Id: Ibd4cd7147aa2f98c9b5bbaf74948843ea619dba4
Mark Salyzyn [Thu, 12 Feb 2015 20:52:57 +0000 (20:52 +0000)]
Merge "bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait"
Colin Cross [Thu, 12 Feb 2015 18:16:47 +0000 (18:16 +0000)]
Merge "Remove no-op sed step when compiling crtbrand.o"
Mark Salyzyn [Tue, 10 Feb 2015 16:34:35 +0000 (08:34 -0800)]
bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait
This test reports the overhead of sem_post to sem_wake for a low thread count
and a high thread count.
Change-Id: Ic30dcc8a78d754979117446bf3a28b7575cabac7
Colin Cross [Thu, 12 Feb 2015 01:40:45 +0000 (17:40 -0800)]
Remove no-op sed step when compiling crtbrand.o
crtbrand.c was compiled to a .s file, run through a sed script
to translate a %progbits to %note, and the compiled to .o.
However, when the sed command was copied from the original source
it was not updated to use the new name of the section (.note.ABI-tag
to .note.android.ident), so it didn't modify the file. Since the
section has been generated with type %progbits instead of %note for
two years, just delete the whole sed step.
Change-Id: Id78582e9b43b628afec4eed22a088283132f0742
Duane Sand [Mon, 26 Jan 2015 22:48:48 +0000 (14:48 -0800)]
[MIPS] Fix setjmp signals
Include full 16-byte Mips sigset_t signal mask within jump buffer.
Call sigprocmask instead of sigblockmask/sigsetmask to get/set full signal mask.
Include sigsetjmp's savesigs arg inside jmp_buf, instead of following it.
Reserve room for future extensions.
Preserve historically-large mips32 _JBLEN size.
Eliminate redundancy: code setjmp and _setjmp as tail calls into sigsetjmp,
and make longjmp and _longjmp aliases of siglongjmp.
Change-Id: Ie79137cf059228c1a51344ebb20d3a9a40b4a252
Christopher Ferris [Wed, 11 Feb 2015 21:07:46 +0000 (21:07 +0000)]
Merge "[MIPS] Fix Mips64 build of libm"
Duane Sand [Wed, 11 Feb 2015 20:51:42 +0000 (12:51 -0800)]
[MIPS] Fix Mips64 build of libm
Change-Id: Ib742b408d4f21d5ec8d455a3fea7c08165c7f321
Elliott Hughes [Tue, 10 Feb 2015 23:34:18 +0000 (23:34 +0000)]
Merge "Fix our ftw tests."
Elliott Hughes [Tue, 10 Feb 2015 22:15:33 +0000 (14:15 -0800)]
Fix our ftw tests.
SELinux denies access to some files in /sys, so we can't just trawl
through that asserting general truths. Instead, create a small known
tree.
Sadly neither ftw nor nftw takes user callback data, otherwise it would
be nice to assert that we visit all the expected nodes.
Bug:
19252748
Change-Id: Ib5309c38aaef53e6030281191a265a8d5a619044
Yabin Cui [Tue, 10 Feb 2015 17:51:33 +0000 (17:51 +0000)]
Merge "Define MAXHOSTNAMELEN explicitly in source files."
Mark Salyzyn [Tue, 10 Feb 2015 15:16:33 +0000 (15:16 +0000)]
Merge "bionic: benchmarks: Add BM_semaphore_sem_post"
Yabin Cui [Mon, 9 Feb 2015 21:58:28 +0000 (13:58 -0800)]
Define MAXHOSTNAMELEN explicitly in source files.
Bug:
19093777
Bug:
19092844
Change-Id: I0778507ca2d5c008abb9a6d6315d0909263a8817
Mark Salyzyn [Mon, 9 Feb 2015 16:18:10 +0000 (08:18 -0800)]
bionic: benchmarks: Add BM_semaphore_sem_post
This test tries its best to report the producer side underlying futex
wake syscall overhead wthin sem_post. It does not measure the time it
takes for the wakeup to propagate to the consumer. It suffers from
clock_gettime syscall overhead, so subtract that. Lock the CPU speed
for consistent results as we may not reach >50% cpu utilization.
Change-Id: I02fa9dab2e6ac27202f0290115150bd3c8de00f2
Christopher Ferris [Tue, 10 Feb 2015 00:31:05 +0000 (00:31 +0000)]
Merge "Cleanup the libm makefile."
Yabin Cui [Tue, 10 Feb 2015 00:10:45 +0000 (00:10 +0000)]
Merge "Switch pthread_cond_t to <stdatomic.h>."
Yabin Cui [Thu, 29 Jan 2015 20:13:33 +0000 (12:13 -0800)]
Switch pthread_cond_t to <stdatomic.h>.
Bug:
17574458
Change-Id: Ic7f79861df4fe751cfa6c6b20b71123cc31e7114
Christopher Ferris [Fri, 23 Jan 2015 01:16:33 +0000 (17:16 -0800)]
Cleanup the libm makefile.
Change-Id: I3d95f75da24ee3b064a9cce67586b0e6f32272d8
Yabin Cui [Mon, 9 Feb 2015 19:46:45 +0000 (19:46 +0000)]
Merge "Stop including <linux/param.h> in <sys/param.h>."