Compare commits

...

3035 Commits

Author SHA1 Message Date
The Android Automerger
420e371107 merge in mnc-release history after reset to mnc-dev 2015-08-26 01:01:18 -07:00
Neil Fuller
829119425b Update timezone data to 2015f
Changes affecting future time stamps

    North Korea switches to +0830 on 2015-08-15.  (Thanks to Steffen Thorsen.)
    The abbreviation remains "KST".  (Thanks to Robert Elz.)

    Uruguay no longer observes DST.  (Thanks to Steffen Thorsen
    and Pablo Camargo.)

  Changes affecting past and future time stamps

    Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
    (Thanks to Roman Tudos.)

Bug: 23480367
(cherry-picked from commit 6e7bc700e2)

Change-Id: I4d82604366e9e30a2100e09433e2772fe6957fff
2015-08-25 20:03:11 +01:00
The Android Automerger
f315961aee merge in mnc-release history after reset to mnc-dev 2015-08-12 01:01:04 -07:00
Yabin Cui
0660be899f am a6a12a78: am 0fdcdd00: Merge "Fix flaky test time.timer_settime_0." into lollipop-mr1-cts-dev
* commit 'a6a12a7804402273e193074a58162cc0b3890812':
  Fix flaky test time.timer_settime_0.
2015-08-11 19:05:43 +00:00
Yabin Cui
a6a12a7804 am 0fdcdd00: Merge "Fix flaky test time.timer_settime_0." into lollipop-mr1-cts-dev
* commit '0fdcdd0067af88e7deef73070d0861ceb9f53c37':
  Fix flaky test time.timer_settime_0.
2015-08-11 18:56:43 +00:00
Yabin Cui
0fdcdd0067 Merge "Fix flaky test time.timer_settime_0." into lollipop-mr1-cts-dev 2015-08-11 18:41:17 +00:00
Yabin Cui
bf572d91b5 Fix flaky test time.timer_settime_0.
It fixes the problem reported in https://code.google.com/p/android/issues/detail?id=182395.

Change-Id: Ie16aa04095dac08a62dd0d4c50e763b36526624c
2015-08-11 11:25:02 -07:00
The Android Automerger
c01f421b18 merge in mnc-release history after reset to mnc-dev 2015-07-28 01:01:03 -07:00
Dmitriy Ivanov
de0fb393ae Restore protection flags for ifunc during relocs.
IFUNC relocations require executable flag for the load
segment containing .text. When dso has text relocs linker
removes exec which causes crash during ifunc relocations.

This patch fixes this problem by restoring segments protection
for ifunc relocs.

Bug: http://b/22611399
Change-Id: Icbf3be0fec0e42bf805bcad7533e2032a2e11b9c
2015-07-26 07:37:09 -07:00
The Android Automerger
c7ebaf57ab merge in mnc-release history after reset to mnc-dev 2015-07-25 01:01:18 -07:00
Yabin Cui
b8320b8021 Don't abort when failed to write tracing message.
Also make the code thread-safe with lock.

Bug: 20666100
Change-Id: I0f331a617b75280f36179c187418450230d713ef
(cherry picked from commit 1661125315)
2015-07-23 12:24:42 -07:00
The Android Automerger
e88c453695 merge in mnc-release history after reset to mnc-dev 2015-07-22 01:01:17 -07:00
Dan Albert
7e52dbe4d2 Merge "Revert "Stop libc from cross-referencing unwind symbols"" into mnc-dev 2015-07-21 23:09:35 +00:00
Ying Wang
e39b279bb4 Merge "We don't have CXX_BARE any more" into mnc-dev 2015-07-21 20:51:28 +00:00
Christopher Ferris
aa55e7ad24 Add support for non-zero vaddr in maps.
If a map has a non-zero vaddr then it needs to be added to the
computed relative offset.

Bug: 22532054

(cherry picked from commit 70b6e1daff)

Change-Id: I1e98741d6ff3b5bbb7fc5f88cc85b27ace75ee2e
2015-07-21 10:32:28 -07:00
Ying Wang
9d11a7087c We don't have CXX_BARE any more
Now we have split CXX_WRAPPER from TARGET_CXX and CXX_BARE isn't needed
any more.

Bug: 22612634
Change-Id: I52c78b0d1b325910e875a786d17f780731778b4b
2015-07-20 18:51:30 -07:00
Dan Albert
d7ce90090f Revert "Stop libc from cross-referencing unwind symbols"
This reverts commit cd13b14e98.

Bug: http://b/19958712
Change-Id: I7cc7f69728c42c37e129aee30d761c4cd7e30e94
(cherry picked from commit 95fd031c4d)
2015-07-20 17:25:26 -07:00
The Android Automerger
a25c04b736 merge in mnc-release history after reset to mnc-dev 2015-07-14 01:01:34 -07:00
Christopher Ferris
43d35c356e Merge "Do not hold hash table lock while backtracing." into mnc-dev 2015-07-13 20:15:30 +00:00
Christopher Ferris
9fee99b060 Do not hold hash table lock while backtracing.
There is a deadlock if holding the hash table lock while trying to do
a backtrace. Change the code so that the hash table lock is only held
while actually modifying either g_hash_table, or while modifying an
entry from g_hash_table.

Bug: 22423683
Change-Id: I604ea56f940f22e99da41ea4dcdf97bedaac268d
2015-07-13 12:17:50 -07:00
The Android Automerger
ba95d8a02b merge in mnc-release history after reset to mnc-dev 2015-07-13 01:02:01 -07:00
Neil Fuller
64c8254416 Merge "Update timezone data to 2015e" into mnc-dev 2015-07-10 09:47:55 +00:00
Dmitriy Ivanov
a5bb841df7 Fix memory-leak on soinfo_free()
Bug: http://b/22290728
Change-Id: I00747056db2cd3ff8b33936278464daed7236536
(cherry picked from commit 609f11b31e)
2015-07-09 17:03:37 -07:00
The Android Automerger
572651dbb2 merge in mnc-release history after reset to mnc-dev 2015-07-07 01:01:18 -07:00
Elliott Hughes
65dd858239 Fix alignment after variable-length data.
In the serialized output from netd, the strings come first. Some code
assumes -- reasonably enough -- that it can do unaligned reads of pointers,
so we need to ensure alignment after all the strings.

Bug: http://b/21192318
Change-Id: I456639127db9a2583f7f738e6b8103375d9387fd
2015-07-06 14:37:46 -07:00
The Android Automerger
aa553fe465 merge in mnc-release history after reset to mnc-dev 2015-07-01 14:22:36 -07:00
Dmitriy Ivanov
f643eb38c3 Improve personality initialization
1. Personality parameter should be unsigned int (not long)
2. Do not reset bits outside of PER_MASK when setting
   personality value.
3. Set personality for static executables.

Bug: http://b/21900686
Change-Id: I4c7e34079cbd59b818ce221eed325c05b9bb2303
2015-06-30 18:45:59 -07:00
Neil Fuller
ae02a0ae00 Update timezone data to 2015e
Changes affecting future time stamps

    Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
    not 06-13 and 07-18 as we had guessed.  (Thanks to Milamber.)

    Assume Cayman Islands will observe DST starting next year, using US rules.
    Although it isn't guaranteed, it is the most likely.

Bug: 21836574
Change-Id: I30ab9ba8524c79e389ed0ff8c4af4378b7048265
2015-06-30 16:21:34 +01:00
Erik Kline
754f669076 Pass around struct android_net_context for better behaviour
Group network context elements in to a single struct and
add a version of android_getaddrinfofornet() that accepts it.

The introduction of UID-based routing means that the UID is an
integral part of the network context when evaluating connectivity,
sorting addresses, etc.

Also, introduce a distinction between DNS netids/marks and those
expected to be used by the application.  This can be important
when the network an application is using is not the same as the
network on which DNS queries will be issued.

Additionally, de-duplicate the UDP connect logic (collapse both
_test_connect() and _find_src_addr() into just the latter).

Bug: 19470192
Bug: 20733156
Bug: 21832279
Change-Id: If16c2f4744695f507993afdac078ca105eb5d3e4
(cherry picked from commit 01e37c9665)
2015-06-30 12:12:08 +09:00
Dmitriy Ivanov
f7d5bf334d Lock on dl_interate_phdr
There is possibility of someone dlclosing a library
while dl_iterate_phdr in progress which can lead to
dl_iterate_phdr calling callback with invalid address
if it was unmapped by dlclose.

Bug: http://b/22047255
Change-Id: I3fc0d9fd2c51fb36fd34cb035f37271fa893a7be
2015-06-29 14:48:25 -07:00
Dmitriy Ivanov
e89c2048d6 Fix crash when trying to load invalid ELF file.
Bug: http://b/22047255
Bug: http://b/22091640
Change-Id: I6c51cff43287a6ac4b25fa9ce6a6fc3d232fd047
2015-06-25 19:58:03 -07:00
Dmitriy Ivanov
06700b2b5e Fix crash when trying to load invalid ELF file.
Bug: http://b/22047255
Bug: http://b/22091640
Change-Id: I6c51cff43287a6ac4b25fa9ce6a6fc3d232fd047
2015-06-25 17:03:26 -07:00
The Android Automerger
2fdf2ea2b1 merge in mnc-release history after reset to mnc-dev 2015-06-25 01:00:37 -07:00
Dimitry Ivanov
fb3357e2eb Revert "[MIPS] Support FR=0 emulation on FR=1 64-bit FP registers"
This reverts commit 40d9e7bf84.

Bug: http://b/22045439
Change-Id: Ia9c56f65d35e404332a462f46460335cef39f0a4
2015-06-24 20:42:33 +00:00
The Android Automerger
aae28448f2 merge in mnc-release history after reset to mnc-dev 2015-06-24 02:51:57 -07:00
Duane Sand
40d9e7bf84 [MIPS] Support FR=0 emulation on FR=1 64-bit FP registers
Enables running of older MIPS NDK-built apps on mips64r6.

Works with kernel supporting FRE emulation, and old kernels.

Bug: http://b/21555893
Change-Id: I13923fe62cd83ad1d337f13a50f2eda2dfdd906f
(cherry picked from commit d02ec08427)
2015-06-23 10:33:37 -07:00
Elliott Hughes
2b028f5ce4 Fix bad merge of 64e9e71cdb.
Bug: http://b/22029751
Change-Id: I6245fe5f274c9af8a632da5eebe50cf9fe29dc4a
2015-06-23 09:14:16 -07:00
The Android Automerger
d1b93d0823 merge in mnc-release history after reset to mnc-dev 2015-06-23 01:01:18 -07:00
Dmitriy Ivanov
d6d6c0c4f1 Merge "Remove libdl* tests from bionic-unit-tests-static" into mnc-dev 2015-06-22 19:25:37 +00:00
Dmitriy Ivanov
5fa858c565 Merge "Remove text-relocs support for apps targeting M+" into mnc-dev 2015-06-22 19:25:15 +00:00
Dmitriy Ivanov
96ebdcdca0 Remove libdl* tests from bionic-unit-tests-static
Bug: http://b/21900592
Change-Id: I907cc15684b121ec2fbdeca49fc584bb6d2eaacc
(cherry picked from commit de4e27e231)
2015-06-22 12:24:36 -07:00
Yabin Cui
cb06075903 am 8beb0c34: am b245bc75: am 0f455612: Merge "Fix flaky test of timer_create_multiple in L." into lollipop-mr1-cts-dev
* commit '8beb0c34da46a5146a2de8256db8bb42febb283c':
  Fix flaky test of timer_create_multiple in L.
2015-06-19 19:06:22 +00:00
Yabin Cui
8beb0c34da am b245bc75: am 0f455612: Merge "Fix flaky test of timer_create_multiple in L." into lollipop-mr1-cts-dev
* commit 'b245bc750021ce6d220e71625fca66620cdd1f05':
  Fix flaky test of timer_create_multiple in L.
2015-06-19 18:55:51 +00:00
Yabin Cui
b245bc7500 am 0f455612: Merge "Fix flaky test of timer_create_multiple in L." into lollipop-mr1-cts-dev
* commit '0f455612d3325932a851418634a17a61307948c5':
  Fix flaky test of timer_create_multiple in L.
2015-06-19 18:40:59 +00:00
David Srbecky
c08c88b5fc Merge "Add flag that makes linker honor min(p_vaddr)" into mnc-dev 2015-06-19 18:26:21 +00:00
Yabin Cui
0f455612d3 Merge "Fix flaky test of timer_create_multiple in L." into lollipop-mr1-cts-dev 2015-06-19 18:00:53 +00:00
Yabin Cui
410c1adf5f Fix flaky test of timer_create_multiple in L.
Bug: 20677618
Change-Id: I0cb5faf77edce042b10611543180f3e2e73d3d05
2015-06-18 16:19:02 -07:00
Dmitriy Ivanov
34e8e47d32 Add flag that makes linker honor min(p_vaddr)
(cherry picked from commit 8a11628355)

Bug: 21924613
Bug: http://b/21523078
Change-Id: I3f944a08dd2ed1df4d8a807da4fee423fdd35eb7
2015-06-18 23:58:34 +01:00
The Android Automerger
2cddffe900 merge in mnc-release history after reset to mnc-dev 2015-06-18 01:00:43 -07:00
Christopher Ferris
7d6410e957 Merge "[MIPS] Add optimized string functions" into mnc-dev 2015-06-18 00:18:40 +00:00
Nikola Veljkovic
1d824c3912 [MIPS] Add optimized string functions
Use same string functions for all MIPS architectures.

Bug: 21555893
(cherry picked from commit 38f2eaa07b)

Change-Id: I94521f023d0bb136a4672782148a9f6e77cc6f1e
2015-06-17 17:02:11 -07:00
Dmitriy Ivanov
28154f5c56 Improve library lookup logic
Linker tries to open a library even if it can
be found by soname. This only happens if the
library was previously opened under different
target sdk version.

Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: I7dbbcc3b49933bffd89ca0af55371e1a1f2bf4c2
2015-06-17 16:36:03 -07:00
Dmitriy Ivanov
4d0d31475f Add versions to libm.so symbols
Bug: http://b/20139821
Change-Id: Ifdfcac62d59eb8f0985990aa8512046ecb87449e
(cherry picked from commit 636f5ddddc)
2015-06-17 13:50:37 -07:00
Dimitry Ivanov
6b37515c38 Merge "Revert "Improve library lookup logic"" into mnc-dev 2015-06-17 20:43:23 +00:00
Dimitry Ivanov
1eba2f4ce1 Revert "Improve library lookup logic"
This reverts commit ea4ef52fa4.

Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: I23ddbd69294023c56c9cbabad29d26c8f736ab43
2015-06-17 20:42:20 +00:00
Dmitriy Ivanov
462df82902 Merge "Improve library lookup logic" into mnc-dev 2015-06-17 17:15:06 +00:00
The Android Automerger
04363e4437 merge in mnc-release history after reset to mnc-dev 2015-06-17 01:00:50 -07:00
Elliott Hughes
d49850d6ab Fixes for building gdbserver (and gdb) out of the box.
Bug: http://b/21695943
Change-Id: Iadb600b2ae619515d7038a4db9bf464ba31adb36
(cherry picked from commit 895241efbb)
2015-06-16 16:59:49 -07:00
Dmitriy Ivanov
ea4ef52fa4 Improve library lookup logic
Linker tries to open a library even if it can
be found by soname. This only happens if the
library was previously opened under different
target sdk version.

Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: I769a04b6b1368a107d43f399297be14050338bbc
2015-06-16 16:52:21 -07:00
Tim Murray
848276051a Merge "Add support for cortex-a53 in bionic." into mnc-dev 2015-06-16 20:47:17 +00:00
Tim Murray
c34df8b280 Add support for cortex-a53 in bionic.
allows -mcpu=cortex-a53 to be passed as part of a command line.

Change-Id: Id4203a9fd197f4c3b661bad21ac58c32819fd687
2015-06-16 13:43:19 -07:00
Dmitriy Ivanov
420574690c Add version to libc.so symbols
Bug: http://b/21617095
Bug: http://b/20139821
Change-Id: If3d42d2a0b4a0c49721fd9b9ecbb4f7bee5a1eff
(cherry picked from commit 665607a6b7)
2015-06-16 11:08:01 -07:00
Elliott Hughes
929be68849 Hide accidentally-exposed __clock_nanosleep.
Bug: http://b/21858067
Change-Id: Iaa83a5e17cfff796aed4f641d0d14427614d9399
(cherry picked from commit b1304935b6)
2015-06-16 10:44:24 -07:00
The Android Automerger
01c72f8c1c merge in mnc-release history after reset to mnc-dev 2015-06-16 01:00:37 -07:00
Elliott Hughes
f1c85411a8 Avoid name collision with user_fpsimd_state in <asm/ptrace.h>.
We don't want to use <asm/ptrace.h> because (a) it'll drag in a bunch of
namespace pollution and (b) the registers should be "long double" for
userspace, not the kernel's uint128s. So just use a slightly different
name for our struct (which matches the traditional names for these structs
anyway).

Bug: http://b/21695943
Bug: https://code.google.com/p/android/issues/detail?id=86712
Change-Id: I8812ca98cfe6b649dbd31f7d6aea41928ba2acbd
(cherry picked from commit 0577733c2e)
2015-06-15 19:02:40 -07:00
Dan Albert
cce405a134 Add a sys/procfs.h.
Needed for building gdbserver out of the box.

Bug: http://b/21695943
Bug: https://code.google.com/p/android/issues/detail?id=86712
Change-Id: Ieadda2b595f08bfddfa61fcd68006b8e7c1a438d
(cherry picked from commit bf18c61798)
2015-06-15 18:39:02 -07:00
Elliott Hughes
7051c0f2a5 Fix two accidentally leaked mips64 symbols.
Bug: http://b/21857154
Change-Id: Ie1fb63f54c6c527b8c1172e8f6ce48f23fca9b41
(cherry picked from commit 469b418784)
2015-06-15 18:36:48 -07:00
The Android Automerger
0e7aca1dff merge in mnc-release history after reset to mnc-dev 2015-06-15 11:57:26 -07:00
Sharvil Nanavati
fdcaeac1a9 am 00cef820: am 64e9e71c: Define nonportable pthread mutex macros with the _NP suffix.
* commit '00cef82013c0826bb43c11651d25de8b99335618':
  Define nonportable pthread mutex macros with the _NP suffix.
2015-06-15 15:48:00 +00:00
The Android Automerger
1a78032e30 merge in mnc-release history after reset to mnc-dev 2015-06-13 01:00:53 -07:00
Dmitriy Ivanov
3e6f780754 Remove text-relocs support for apps targeting M+
Remove support of text-relocations for apps targeting sdk version > 22

Bug: http://b/20013628
Change-Id: I2127739544480c747315e32df15dfbd1b79de4f5
2015-06-12 15:09:54 -07:00
Sharvil Nanavati
00cef82013 am 64e9e71c: Define nonportable pthread mutex macros with the _NP suffix.
* commit '64e9e71cdb7d88397e510e1986d494b797ed3b45':
  Define nonportable pthread mutex macros with the _NP suffix.
2015-06-12 20:13:46 +00:00
Sharvil Nanavati
64e9e71cdb Define nonportable pthread mutex macros with the _NP suffix.
Change-Id: I1066352e5b2607f64daf6aeb0030d0bbe88ead8d
2015-06-12 10:56:17 -07:00
Dmitriy Ivanov
ae1e75458a Merge "Make path to apk compliant with jar url format" into mnc-dev 2015-06-11 21:55:09 +00:00
The Android Automerger
64eb843f74 merge in mnc-release history after reset to mnc-dev 2015-06-11 01:00:38 -07:00
Dmitriy Ivanov
38263dd91a Fix l_addr for the linker
Bug: http://b/21765603
Change-Id: I97710ef2436eac2160e29ba3e4521f6e63a1907c
(cherry picked from commit 175dae92d7)
2015-06-10 20:05:48 -07:00
Elliott Hughes
25ac753f47 Add process_vm_readv and process_vm_writev.
Bug: http://b/21761353
Change-Id: Ic8ef3f241d62d2a4271fbc783c8af50257bac498
(cherry picked from commit be57a40d29)
2015-06-10 18:55:06 -07:00
Elliott Hughes
eeb1d33a31 Merge "Statically linked executables should honor AT_SECURE." into mnc-dev 2015-06-11 00:55:40 +00:00
Dmitriy Ivanov
79b3877a13 Fix application_sdk_versions_smoke test
Bug: http://b/21364029
Change-Id: I9716d6b0ea7fae6483629a290dbe695b68526588
2015-06-10 16:55:50 -07:00
Elliott Hughes
66c3b2db2f Statically linked executables should honor AT_SECURE.
Bug: http://b/19647373
Change-Id: I10e7682d9cec26a523f1a3597ca5326c3ca42ebe
(cherry picked from commit 1801db3d3f)
2015-06-10 16:10:18 -07:00
Dmitriy Ivanov
07f4f5f9ed Check if strtab exists before using it
Bug: http://b/21696087
Change-Id: I1e22d5fd6fe2faead332249493123c9a085081e9
(cherry picked from commit 624b8f17a1)
2015-06-10 15:25:48 -07:00
Christopher Ferris
511cfd9dc8 Allow NULL in pthread_mutex_lock/unlock.
The pthread_mutex_lock and pthread_mutex_unlock were allowed to
fail silently on L 32 bit devices when passed a NULL. We changed
this to a crash on 32 bit devices, but there are still games that make
these calls and are not likely to be updated. Therefore, once again
allow NULL to be passed in on 32 bit devices.

Bug: 19995172
Change-Id: If7e8860075ecd63c0064d80f64e226fad7bd3c26
2015-06-09 18:46:15 -07:00
Dmitriy Ivanov
524f1f1efe Make path to apk compliant with jar url format
Bug: http://b/21726698
Bug: http://b/8076853
Change-Id: I8c1942a98fe3119746b4dc9f60a7ff215ea7009c
2015-06-09 13:47:46 -07:00
The Android Automerger
8b18a3c922 merge in mnc-release history after reset to mnc-dev 2015-06-09 01:00:42 -07:00
Ying Wang
26e663d479 Fix Mac checkbuild.
Bug: 21669400
Change-Id: I54691661605a2e2c1871781964aed343840b8560
(cherry-pick from commit 33c2d441b8f816722bed984c6e12b82b888c3ca2)
2015-06-08 12:20:16 -07:00
The Android Automerger
741df2881b merge in mnc-release history after reset to mnc-dev 2015-06-07 01:00:29 -07:00
Christopher Ferris
e49af9bca5 Export two dlmalloc functions everywhere.
The functions dlmalloc_inspect_all and dlmalloc_trim get
exported on devices that use dlmalloc, so be consistent and
export them everywhere.

Bug: 21640784
(cherry picked from commit f9554a1776)

Change-Id: I1000221423c16c356bb6301e55f726db01c3f209
2015-06-06 13:25:56 -07:00
Christopher Ferris
7a799f2b02 Fix a few libc makefile mishaps.
These are the problems fixed in this CL:

- The ndk_cruft.cpp file was not compiled for 64 bit.
- Some files where not compiled for libc_bionic.a due to a missing
  patch-up-arch-specific-flags call.
- The libc_bionic_ndk.a patch up call was using bionic src, not
  the bionic_ndk_src_files.
- Move mmap.cpp to the ndk src list where it was before because of
  the above errors.

Bug: 21640784
(cherry picked from commit 19fee2ca8b)

Change-Id: Ib9a9cfd72720586d3400b11cd7189f021e9a06c6
2015-06-06 13:25:32 -07:00
The Android Automerger
9660d32e74 merge in mnc-release history after reset to mnc-dev 2015-06-06 01:01:01 -07:00
Yabin Cui
e997e9155e am 61b040a5: resolved conflicts for merge of ea248d9c to lmp-mr1-ub-dev
* commit '61b040a57094093cfb090ebb1c321d4a69c20b64':
  Make sys_resource test more robust.
2015-06-05 02:18:45 +00:00
Dmitriy Ivanov
c534603f8d Hide __atexit
Bug: http://b/21640806
Change-Id: I778b35c8c7538859179e97fcf5a82db2fcd9e50f
(cherry picked from commit 9cf6fc304b)
2015-06-04 14:51:26 -07:00
Christopher Ferris
f2e86cd980 Merge "Reorder DIR structure due to bad apps." into mnc-dev 2015-06-04 20:57:57 +00:00
Christopher Ferris
5edb0f40f6 Reorder DIR structure due to bad apps.
It turns out that apportable apps expect that the DIR structure is
the same as in L and below. Modify the structure to have the same
order, and move the new variable to the end of the structure.

Bug: 21037208
Change-Id: Id1258e9dc19423109a2c3a8086d3022965591166
2015-06-04 13:30:45 -07:00
Dmitriy Ivanov
34de7f8497 Strip version info when extracting symbols
Bug: http://b/20139821
Change-Id: I1c1ed1b97a75936407e996698b98b94a7175ac30
(cherry picked from commit 6cda074289)
2015-06-04 11:15:13 -07:00
The Android Automerger
2ff7422771 merge in mnc-release history after reset to mnc-dev 2015-06-03 01:01:03 -07:00
Dmitriy Ivanov
0c29aabad2 Merge "Backward compatibility for dlsym(RTLD_DEFAULT, ...)" into mnc-dev 2015-06-03 01:09:34 +00:00
Dmitriy Ivanov
04f7e3e955 Backward compatibility for dlsym(RTLD_DEFAULT, ...)
Do not skip RTLD_LOCAL libraries in dlsym(RTLD_DEFAULT, ...)
 if the library is opened by application with target api level <= 22

Bug: http://b/21565766
Bug: http://b/17512583
Change-Id: Ic45ed1e4f53e84cba9d74cab6b0049c0c7aa8423
2015-06-02 18:06:24 -07:00
Yabin Cui
61b040a570 resolved conflicts for merge of ea248d9c to lmp-mr1-ub-dev
Change-Id: I362ab2e25e3368c71cb1af51cee2e8fb5ce53e61
2015-06-02 16:47:42 -07:00
Yabin Cui
ea248d9ca8 Merge "Make sys_resource test more robust." into lollipop-cts-dev
automerge: 492a0bf

* commit '492a0bf212973baa1c33d584d57e75395774447f':
  Make sys_resource test more robust.
2015-06-02 22:03:23 +00:00
Nick Kralevich
f56bad974b Merge "libc: Add O_PATH support for fgetxattr / fsetxattr" into mnc-dev 2015-06-02 22:02:43 +00:00
Yabin Cui
492a0bf212 Merge "Make sys_resource test more robust." into lollipop-cts-dev 2015-06-02 22:02:29 +00:00
Yabin Cui
e7ece90b50 Make sys_resource test more robust.
Bug: 19482626

"ulimit -c xxx" command may run before bionic-unit-tests.
Make sure sys_resource test fails gently in that case.

Change-Id: Ic3b5ed8b20acba56df8c5ef082c88e5050e761aa
(cherry picked from commit 4853f40f3f)
2015-06-02 14:40:26 -07:00
Dmitriy Ivanov
38c37d6705 Work around for libraries without dt_soname
Applies only for apps targeting sdk version <= 22

Bug: http://b/21565766
Change-Id: If0bf2229dc1341e9ca09f9a05d0890515273d5a2
2015-06-02 13:45:15 -07:00
Nick Kralevich
c92f9f8069 libc: Add O_PATH support for fgetxattr / fsetxattr
Support O_PATH file descriptors when handling fgetxattr and fsetxattr.
This avoids requiring file read access to pull extended attributes.

This is needed to support O_PATH file descriptors when calling
SELinux's fgetfilecon() call. In particular, this allows the querying
and setting of SELinux file context by using something like the following
code:

  int dirfd = open("/path/to/dir", O_DIRECTORY);
  int fd = openat(dirfd, "file", O_PATH | O_NOFOLLOW);
  char *context;
  fgetfilecon(fd, &context);

This change was motivated by a comment in
https://android-review.googlesource.com/#/c/152680/1/toys/posix/ls.c

(cherrypicked from commit 2825f10b7f)

Change-Id: Ic0cdf9f9dd0e35a63b44a4c4a08400020041eddf
2015-06-02 10:08:05 -07:00
The Android Automerger
3619d6b922 merge in mnc-release history after reset to mnc-dev 2015-06-02 01:00:48 -07:00
Dmitriy Ivanov
c4ebe60e1a Fix dlsym(handle_of_main_executable, ...)
According to man dlopen(3) and posix docs in the case when si is handle
  of the main executable we need to search not only in the executable and its
  dependencies but also in all libraries loaded with RTLD_GLOBAL.

  see also: http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlopen.html

Bug: http://b/21528224
Bug: http://b/17512583
Bug: https://code.google.com/p/android/issues/detail?id=173822
Change-Id: Ib2801367ba48b6f3704da89a6d9f5e6911430013
(cherry picked from commit f439b5a318)
2015-06-01 16:57:33 -07:00
Dan Albert
c5e02eeb35 Cleanup ftruncate negative test.
Addresses post-submit comments from
I54692ab8105dd09db6af7a2c0894a17bdd118aa0.

Bug: http://b/21309901
Change-Id: Ie19ee8cdcc4055a65fe7dfc103156e54eafe8977
(cherry picked from commit 9d476a02e9)
2015-06-01 13:24:36 -07:00
Dan Albert
5f3e19dbbe Fix error handling for negative size in ftruncate.
Bug: 21309901
Change-Id: I54692ab8105dd09db6af7a2c0894a17bdd118aa0
(cherry picked from commit c05554ec5c)
2015-06-01 11:28:13 -07:00
The Android Automerger
2783166c35 merge in mnc-release history after reset to mnc-dev 2015-05-30 01:01:05 -07:00
Dmitriy Ivanov
c3351ea94d Work around incorrect dt_needed entries
This applies for apps targeting sdk<=22 and
  only for lp32 platforms.

Bug: http://b/21364029
Change-Id: I903e81c9ccda2a8beaba1d132d68c77d30a4cdb2
(cherry picked from commit d974e88046)
2015-05-28 17:42:27 -07:00
Dmitriy Ivanov
ca10ac6dd4 Improve some of error/warning messages
Bug: http://b/20464031
Change-Id: I948141c46f9e054fc45f5934153dee56ce3cd558
(cherry picked from commit 087005f37e)
2015-05-28 15:28:41 -07:00
Dmitriy Ivanov
4a7c3af054 Work around incorrect dt_needed entries
This applies for apps targeting sdk<=22 and
  only for lp32 platforms.

Bug: http://b/21364029
Change-Id: I903e81c9ccda2a8beaba1d132d68c77d30a4cdb2
(cherry picked from commit d974e88046)
2015-05-28 15:25:55 -07:00
The Android Automerger
730c0a475c merge in mnc-release history after reset to mnc-dev 2015-05-28 01:00:47 -07:00
Dmitriy Ivanov
d8ead18145 Add functions to provide target sdk version
Bug: http://b/21364029
Change-Id: I8648d1bff6c8fd6e7cd12da7f128e048b9f2829a
(cherry picked from commit 79fd668bb4)
2015-05-27 16:20:16 -07:00
The Android Automerger
c8e23a4c1a merge in mnc-release history after reset to mnc-dev 2015-05-23 01:00:56 -07:00
Dmitriy Ivanov
15309fde91 Fix RTLD_NEXT lookup for the local_group
Linker used to skip RTLD_NEXT within local_group when
  caller->next is nullptr (which represents load order
  but not the order within local_group dependency tree)

Bug: http://b/21380474
Change-Id: I178fc4657b19bceb871635b177c1df67855b1708
(cherry picked from commit b96ac41b32)
2015-05-22 15:24:13 -07:00
The Android Automerger
4d49212a5f merge in mnc-release history after reset to mnc-dev 2015-05-21 01:00:54 -07:00
Yabin Cui
c15a935202 am fd20a8c2: resolved conflicts for merge of 473d96c0 to lmp-mr1-ub-dev
* commit 'fd20a8c2d669b3f2d63e2d33a32b90d1b7f17b82':
  Fix timer flaky test in lollipop-mr1-cts-dev.
2015-05-20 21:48:09 +00:00
Yabin Cui
fd20a8c2d6 resolved conflicts for merge of 473d96c0 to lmp-mr1-ub-dev
Change-Id: I48269218b152054d527d9257d40490b54205140f
2015-05-20 13:36:56 -07:00
The Android Automerger
aa3ef00a43 merge in mnc-release history after reset to mnc-dev 2015-05-19 01:01:19 -07:00
Yabin Cui
7490c5c594 Hide rt_sigqueueinfo.
Bug: 19358804
Change-Id: I38a53ad64c81d0eefdd1d24599e769fd8a477a56
(cherry picked from commit 40a8f214a5)
2015-05-18 13:34:51 -07:00
Yabin Cui
2b5c2285c0 Remove pthread_detach_no_leak test.
This test has lost its purpose as we are using mmap/munmap for pthread_internal_t. And it is a flaky test.

Bug: 21205574
Bug: 20860440
Change-Id: I7cbb6bc3fd8a2ca430415beab5ee27a856ce4ea7
(cherry picked from commit 2957cc5f10)
2015-05-18 10:31:20 -07:00
The Android Automerger
304307243f merge in mnc-release history after reset to mnc-dev 2015-05-17 01:00:23 -07:00
Dmitriy Ivanov
8557eeb0ad Merge "Apply work around b/19059885 to x86" into mnc-dev 2015-05-16 16:57:16 +00:00
The Android Automerger
51d3926d8a merge in mnc-release history after reset to mnc-dev 2015-05-16 01:00:43 -07:00
Dmitriy Ivanov
69a5fb951d Apply work around b/19059885 to x86
Bug: http://b/19059885
Bug: http://b/21203348
Change-Id: Ic375e9f877d68de8f866d17362879a7dde638465
2015-05-15 18:39:16 -07:00
Chih-Hung Hsieh
43850d19f4 Use unified syntax to compile with both llvm and gcc.
All arch-arm and arch-arm64 .S files were compiled
by gcc with and without this patch. The output object files
were identical. When compiled with llvm and this patch,
the output files were also identical to gcc's output.

BUG: 18061004
Change-Id: I458914d512ddf5496e4eb3d288bf032cd526d32b
(cherry picked from commit 33f33515b5)
2015-05-15 16:29:10 -07:00
Chih-Hung Hsieh
22c21c6b4e Fix opcode to compile with both gcc and llvm.
BUG: 17302991

Change-Id: I31febd9ad24312388068803ce247b295bd73b607
(cherry picked from commit 0a93df369c)
2015-05-15 16:28:38 -07:00
Elliott Hughes
fa7ba6227f Don't use TEMP_FAILURE_RETRY on close in bionic.
Bug: http://b/20501816
Change-Id: Id64b5109cc2b165fa0351b6edbb865a5e5058008
(cherry picked from commit 4e8ef698d0)
2015-05-15 16:24:33 -07:00
John Reck
4cb434df9b Fix regression in crash reporting
Bug: 19532651

Partial revert of be0e43b776

Change-Id: I99e220328aff985facb920ebcd84ac1a016759b5
2015-05-15 15:12:36 -07:00
Dmitriy Ivanov
ff407803db Remove -z global workaround for target x86
Change-Id: I08e75a1c7437c97e4af59316d2c14c7fa3f65e03
(cherry picked from commit 933332462d)
2015-05-15 10:30:47 -07:00
John Reck
d7ad443cfd Fix regression in crash reporting
Bug: 19532651

Partial revert of be0e43b776

Change-Id: I99e220328aff985facb920ebcd84ac1a016759b5
2015-05-15 07:48:33 -07:00
Spencer Low
2a44cfbd7d ScopedFd: Don't use TEMP_FAILURE_RETRY() with close()
According to the comments in Posix_close(), TEMP_FAILURE_RETRY() should
not be used with close():

462bdac45c%5E%21/#F12

Kill ScopedFd by simplifying the single caller.

Bug: http://b/20501816
Change-Id: I248c40b8c2fc95f1938a6edfc245c81847fc44af
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
(cherry picked from commit 0346ad7a4f)
2015-05-13 17:47:08 -07:00
Dmitriy Ivanov
4bac6ea463 Improved dlsym tests and fixes to linker
Answers the question: what if dependent library
 was preloaded with RTLD_LOCAL flag.

 Also add test for RTLD_NEXT within local_group.

Bug: http://b/17512583
Change-Id: I79e081e68b3a8c0ed8980d4275a06515fea94ec9
(cherry picked from commit 697bd9fd38)
2015-05-12 13:49:13 -07:00
Elliott Hughes
9cde1dc007 Update NOTICE files (the second time today).
Change-Id: Ifb031d29ee697ee0682bd651e0081493e8016e67
(cherry picked from commit f58ac87182)
2015-05-12 10:52:52 -07:00
Elliott Hughes
dd57029ed1 Simplify three copyright headers.
There's no reason to have multiple years in our own copyright headers,
and given the stupidity of our NOTICE file generation, it just creates
more junk.

Change-Id: I065a3811c2e2584e3b649a18ad9460286bc72b92
(cherry picked from commit c69ace87ec)
2015-05-12 10:34:22 -07:00
Elliott Hughes
97139e6adc Merge "Update NOTICE files." into mnc-dev 2015-05-12 17:29:25 +00:00
Elliott Hughes
f0bd92db89 Update NOTICE files.
Change-Id: I4e170118abf452dd87ffe79d343ba1e2b53955de
2015-05-12 10:09:01 -07:00
Yabin Cui
473d96c0a8 Merge "Fix timer flaky test in lollipop-mr1-cts-dev." into lollipop-mr1-cts-dev 2015-05-09 00:07:45 +00:00
Yabin Cui
5c0996a969 Fix timer flaky test in lollipop-mr1-cts-dev.
It is partically cherry-pick from https://android-review.googlesource.com/#/c/123410/.
And as lollipop-mr1-cts-dev still uses stlport, <stdatomic.h> is used instead of <atomic>.

Bug: 20677618
Change-Id: I952a6fd074facc4227c955fecf3ecbfbbaec4193
2015-05-08 13:12:01 -07:00
Dmitriy Ivanov
f7009f450e Switch libc/libcstdc++/libm to hash-style=both
Bug: http://b/19059885
Change-Id: Ie42703d91f291fd689a1cf9c35bcab5c487b9a84
(cherry picked from commit 88e777d6f4)
2015-05-08 12:17:21 -07:00
Dan Albert
5040aa4c39 Merge changes from topic 'blobs' into mnc-dev
* changes:
  Revert "Fix volantis boot."
  Revert "Fix clang build."
  Revert "Try again to fix clang build."
2015-05-08 17:01:29 +00:00
Dan Albert
6b27e6e8e0 Revert "Fix volantis boot."
Bug: http://b/20065774
This reverts commit 76e1cbca75.

(cherry picked from commit 7c2c01d681)
2015-05-08 09:36:03 -07:00
Dan Albert
20db140181 Revert "Fix clang build."
Bug: http://b/20065774
This reverts commit 0975a5d9d2.

(cherry picked from commit 6f0d7005f9)
2015-05-08 09:35:54 -07:00
Dan Albert
6accf55bf3 Revert "Try again to fix clang build."
Bug: http://b/20065774
This reverts commit dffd3c5838.

Change-Id: I5dd095ff4ab133baa2afcbd4c79fbee55d05c459
(cherry picked from commit f920f821e2)
2015-05-08 09:35:48 -07:00
Andres Morales
271f051482 Merge "remove rootdir build.prop" into mnc-dev 2015-05-08 15:00:42 +00:00
Dmitriy Ivanov
f41ed6e549 Add definitions of Elf32_Sxword and ELFXX_R_INFO
Bug: http://b/17056684
Change-Id: If35302245ac3ab40d1c80fb2b04620778c114f87
(cherry picked from commit ce16a53d39)
2015-05-07 23:49:40 -07:00
Andres Morales
d3cea8725f remove rootdir build.prop
merge with default.prop

Change-Id: I6cff4527dec2b31bdde42ec26c42ef2782f8deb4
2015-05-07 15:15:46 -07:00
Dmitriy Ivanov
af7e806cec Properly align init/fini_arrays for crtend.o
Also remove them from crtend_so.o

Bug: http://b/20532404
Change-Id: I56a0f80c4b3a83cf11d28bbf17791ff4ce10c5d2
(cherry picked from commit e543c7612e)
2015-05-07 12:56:15 -07:00
Dmitriy Ivanov
b3c01d0538 Use realpath for log and error messages
Bug: http://b/20885931
Change-Id: Ida8ab7982ca75fa73da13c4cb10a6b2e53bc2c8e
(cherry picked from commit 3edb9182ff)
2015-05-07 11:04:28 -07:00
Dmitriy Ivanov
a60fd09e26 Move pthread_atfork_dlclose test out of static lib
Bug: http://b/20858755
Change-Id: I0d84e8b43dc33902d75af18db6b7c8e0b619d718
(cherry picked from commit 5624a6a1e5)
2015-05-06 16:47:54 -07:00
Dmitriy Ivanov
8264afb377 VersionTracker: Ignore libraries without soname
Bug: http://b/20872443
Change-Id: I7bd076885c1feae39af6ea64c9442bcc5ae5a1dc
2015-05-06 11:06:32 -07:00
Dmitriy Ivanov
456afe24b6 Fix protected symbol lookups for mips
Bug: http://b/20694161
Change-Id: I5cc58034f9776e1db9cddc34abe48ef85f6048f4
(cherry picked from commit dbe26fdcc7)
2015-05-05 15:39:42 -07:00
Dmitriy Ivanov
064a9800f3 Do not adjust PT_GNU_STACK segment
Bug: http://b/20687795
Bug: http://b/18051137
Change-Id: Ie8af3892cfbebcc0249e7981284c4ad97ff40317
2015-05-04 18:35:43 +00:00
Dmitriy Ivanov
dc145b5106 Lookup version info when relocating mips got
Bug: http://b/20693971
Bug: http://b/20139821
Change-Id: I28bd3bc44dafe048761b2c598facfe20320128c4
(cherry picked from commit f39cb63603)
2015-05-01 15:45:51 -07:00
Dmitriy Ivanov
f92a417d07 Refactoring: move VersionTracker to link_image
Use one instance of VersionTracker per link (instead of 2).

Change-Id: I6860013df65f5969975c82ebdae8bd90a82e0a82
(cherry picked from commit 7e4bbbae4a)
2015-05-01 15:44:50 -07:00
Neil Fuller
f6fdb79b4f Merge "Update to tzdata 2015d" into mnc-dev 2015-05-01 08:18:15 +00:00
Dmitriy Ivanov
114bd835a7 Refactoring: extract lookup_version_info(..)
Change-Id: I47f9c21a1738dc520fd83281c8227dc3a7e79650
(cherry picked from commit 31b408d2c2)
2015-04-30 17:42:01 -07:00
Mark Salyzyn
62075bcc91 bionic: fortify comments in _system_properties.h
(Cherry pick from commit c3f4c964a3)

Change-Id: I2ef8fb7ae5ae03d5d2a50b5a417d585710099760
2015-04-30 14:00:09 -07:00
Neil Fuller
3a7ed8f55c Update to tzdata 2015d
Changes affecting future time stamps

    Egypt will not observe DST in 2015 and will consider canceling it
    permanently.  For now, assume no DST indefinitely.
    (Thanks to Ahmed Nazmy and Tim Parenti.)

  Changes affecting past time stamps

    America/Whitehorse switched from UTC-9 to UTC-8 on 1967-05-28, not
    1966-07-01.  Also, Yukon's time zone history is documented better.
    (Thanks to Brian Inglis and Dennis Ferguson.)

  Change affecting past and future time zone abbreviations

    The abbreviations for Hawaii-Aleutian standard and daylight times
    have been changed from HAST/HADT to HST/HDT, as per US Government
    Printing Office style.  This affects only America/Adak since 1983,
    as America/Honolulu was already using the new style.

Bug: 20551453
(cherry-picked from commit 520cbf51b1)

Change-Id: I60d3b683aeccbc44bd038ff6aebd75045809b1c5
2015-04-30 16:48:11 +01:00
Dmitriy Ivanov
126b5efa9d Adjust DT_MIPS_RLD_MAP2 value
DT_MIPS_RLD_MAP2 stores the difference between dynamic
  entry address and the address of the _r_debug (used by GDB)
  since the dynamic section and target address are on the
  different sides of the hole it needs to be adjusted accordingly

Bug: http://b/20658994
Bug: http://b/18051137
Change-Id: I4c5e379e8a4c68f029467df6dc660f81a7013a09
(cherry picked from commit 18c935ceab)
2015-04-29 22:10:53 -07:00
Dmitriy Ivanov
0b9e1c6051 linker: initialize system properties
Bug: http://b/20567629
Bug: https://code.google.com/p/chromium/issues/detail?id=478886
Change-Id: I8d2d89b749015e7fcd6e7ea646911f2e617dd1ba
(cherry picked from commit b4e5067cab)
2015-04-29 16:46:41 -07:00
Dmitriy Ivanov
e97d519a6b Fix mips relocation to use load_bias as intended
Bug: http://b/20658994
Change-Id: I5a15605fe34db359e26d563e13841ae993083c4a
(cherry picked from commit 0373d4f473)
2015-04-29 15:02:50 -07:00
Dmitriy Ivanov
53ba663617 Fix LD_PRELOAD for dlopen()
We did not set DF_1_GLOBAL flag for LD_PRELOADed
 libraries which led to the situation when ld_preloads
 where ignored during on dlopen()

Change-Id: I696b3b2506a8ed4c0984ad2c803210a7a4f8e686
(cherry picked from commit f8093a9485)
2015-04-28 19:01:01 -07:00
Jeff Brown
cb73d0e0da Merge "Add float support to binary event log." into mnc-dev 2015-04-29 01:18:13 +00:00
Jeff Brown
66fd2a278b Add float support to binary event log.
Bug: 20664753
Change-Id: I6e43c07daa727c19d87f5192bb719af63dd93654
2015-04-28 17:51:45 -07:00
Mark Salyzyn
123927dffc bionic: add __system_property_area_serial()
Adds a new _internal_ function. Provide a global serial number to
support more efficient private caching algorithms. This allows
to skip re-running the __system_property_find() call on misses until
there is a global change in the properties. This call is a read
barrier, the property data to be read following this call will be
read sequentially and up to date.

(Cherry pick from bfd65279a5)

Bug: 19544788
Change-Id: I58e6a92baa0f3e8e7b9ec79b10af6d56407dab48
2015-04-28 22:20:41 +00:00
Dmitriy Ivanov
452742d2bf Do not pack relocations for libc.so
Bug: http://b/20645321
Bug: http://b/20655855
Change-Id: Ia4470e0a6d388a7f8445c7f7f9a5639689c0fe32
2015-04-28 14:54:11 -07:00
Dmitriy Ivanov
62a0a63e07 linker: use libc's environ variable to store envp
This is to make getenv() work correctly.

Bug: http://b/20567629
(cherry picked from commit a85bcc2e99)

Change-Id: I7c2289279b331793335029dc17a792d416efff4b
2015-04-28 14:43:58 -07:00
Neil Fuller
17b602c903 Update to tzdata 2015c
Changes affecting future time stamps

    Egypt's spring-forward transition is at 24:00 on April's last Thursday,
    not 00:00 on April's last Friday.  2015's transition will therefore be on
    Thursday, April 30 at 24:00, not Friday, April 24 at 00:00.  Similar fixes
    apply to 2026, 2037, 2043, etc.  (Thanks to Steffen Thorsen.)

  Changes affecting past time stamps

    The following changes affect some pre-1991 Chile-related time stamps
    in America/Santiago, Antarctica/Palmer, and Pacific/Easter.

      The 1910 transition was January 10, not January 1.

      The 1918 transition was September 10, not September 1.

      The UTC-4 time observed from 1932 to 1942 is now considered to be
      standard time, not year-round DST.

      Santiago observed DST (UTC-3) from 1946-07-15 through 1946-08-31,
      then reverted to standard time, then switched its time zone to
      UTC-5 on 1947-04-01.

      Assume transitions before 1968 were at 00:00, since we have no data
      saying otherwise.

      The spring 1988 transition was 1988-10-09, not 1988-10-02.
      The fall 1990 transition was 1990-03-11, not 1990-03-18.

      Assume no UTC offset change for Pacific/Easter on 1890-01-01,
      and omit all transitions on Pacific/Easter from 1942 through 1946
      since we have no data suggesting that they existed.

    One more zone has been turned into a link, as it differed
    from an existing zone only for older time stamps.  As usual,
    this change affects UTC offsets in pre-1970 time stamps only.
    The zone's old contents have been moved to the 'backzone' file.
    The affected zone is America/Montreal.

Bug: 20287125
(cherry-picked from commit d2177404e2)

Change-Id: I55224cc63b314a8e4c2f1c83f8bc4921316c8e4d
2015-04-28 10:51:48 +01:00
Dmitriy Ivanov
7936fa6536 Reduce p_align for program header to page size.
Having p_align > page_size leads to the situation when striping
 packed executables results in unnecessary p_vaddr adjustments.
 And it also may result (with probability 1 - 1/sizeof(uintptr_t)) in
 misaligned segments following .dynstr

Bug: http://b/20629834
Bug: http://b/18051137

(cherry picked from commit b293969c6d)

Change-Id: I2fb15cf5cb52fada6511d5af93df099fc2cbf7ba
2015-04-27 20:45:04 -07:00
Nick Kralevich
9e22d0ff3c am bb4961cd: am 1d76f1cc: Merge "add a fortified implementation of realpath"
* commit 'bb4961cd4f0348b5e88bdf81dded7b63d1aadb0b':
  add a fortified implementation of realpath
2015-04-26 18:39:37 +00:00
Nick Kralevich
bb4961cd4f am 1d76f1cc: Merge "add a fortified implementation of realpath"
* commit '1d76f1cc8be1f40141adac6147cd51061f1ee0b4':
  add a fortified implementation of realpath
2015-04-26 02:44:29 +00:00
Nick Kralevich
1d76f1cc8b Merge "add a fortified implementation of realpath" 2015-04-26 02:23:04 +00:00
Nick Kralevich
51069872d1 am 73621d02: am 42502d70: Merge "add fortified memchr/memrchr implementations"
* commit '73621d02ec3ff45315ee6ddff534a46309723baf':
  add fortified memchr/memrchr implementations
2015-04-25 22:00:20 +00:00
Nick Kralevich
73621d02ec am 42502d70: Merge "add fortified memchr/memrchr implementations"
* commit '42502d702e1625c9f3337f7a18ea5fc4cfc6090c':
  add fortified memchr/memrchr implementations
2015-04-25 21:41:45 +00:00
Nick Kralevich
42502d702e Merge "add fortified memchr/memrchr implementations" 2015-04-25 21:29:57 +00:00
Dmitriy Ivanov
d14f85df52 am a6441765: am 2eaff078: Merge "Include pthread_atfork.h to mips64 crtbegin"
* commit 'a644176578e73b0ab1bf6adfed6bba944d6e7b00':
  Include pthread_atfork.h to mips64 crtbegin
2015-04-25 20:04:32 +00:00
Dmitriy Ivanov
a644176578 am 2eaff078: Merge "Include pthread_atfork.h to mips64 crtbegin"
* commit '2eaff07839393485fec522fd0bd17bbf1af72ca6':
  Include pthread_atfork.h to mips64 crtbegin
2015-04-25 19:42:22 +00:00
Dmitriy Ivanov
2eaff07839 Merge "Include pthread_atfork.h to mips64 crtbegin" 2015-04-25 19:20:00 +00:00
Dmitriy Ivanov
f327fae69c Include pthread_atfork.h to mips64 crtbegin
Bug: http://b/20339788
Change-Id: I2a8c7881f90a05ca768cb9b4c2f8b07c74c64469
2015-04-25 11:59:32 -07:00
Elliott Hughes
704b3164b3 am ea46b36f: am 9a2744df: Merge "Fix POSIX timer thread naming."
* commit 'ea46b36f894477755487d8caec15a8f35f81ac2c':
  Fix POSIX timer thread naming.
2015-04-25 18:44:05 +00:00
Elliott Hughes
ea46b36f89 am 9a2744df: Merge "Fix POSIX timer thread naming."
* commit '9a2744df301c509ea48361016ab441c792ec6d5a':
  Fix POSIX timer thread naming.
2015-04-25 18:23:51 +00:00
Elliott Hughes
9a2744df30 Merge "Fix POSIX timer thread naming." 2015-04-25 18:01:18 +00:00
Elliott Hughes
d1aea30b2a Fix POSIX timer thread naming.
Spencer Low points out that we never actually set a name because the constant
part of the string was longer than the kernel's maximum, and the kernel
rejects long names rather than truncate.

Shorten the fixed part of the string while still keeping it meaningful. 9999
POSIX timers should be enough for any process...

Bug: https://code.google.com/p/android/issues/detail?id=170089
Change-Id: Ic05f07584c1eac160743519091a540ebbf8d7eb1
2015-04-25 10:05:24 -07:00
Dmitriy Ivanov
988cb3bd69 am f41ab7fa: am 2c256a0f: Merge "Unregister pthread_atfork handlers on dlclose()"
* commit 'f41ab7fa68cfab33881a97d25f1c046e26e35d99':
  Unregister pthread_atfork handlers on dlclose()
2015-04-25 06:14:51 +00:00
Dmitriy Ivanov
f41ab7fa68 am 2c256a0f: Merge "Unregister pthread_atfork handlers on dlclose()"
* commit '2c256a0f0927abd94f2210b37c18ead210d30477':
  Unregister pthread_atfork handlers on dlclose()
2015-04-25 05:52:51 +00:00
Dmitriy Ivanov
2c256a0f09 Merge "Unregister pthread_atfork handlers on dlclose()" 2015-04-25 05:36:07 +00:00
Dmitriy Ivanov
2a1badcfcd am 504e7605: am 440242f0: Merge "Use bfd linker for x86/x86_64 targets"
* commit '504e76055c29a3cb7cdbe1e6f731cd3ca9d1a91e':
  Use bfd linker for x86/x86_64 targets
2015-04-25 04:49:52 +00:00
Dmitriy Ivanov
504e76055c am 440242f0: Merge "Use bfd linker for x86/x86_64 targets"
* commit '440242f03805872a0c62528d763e5e98dad9b580':
  Use bfd linker for x86/x86_64 targets
2015-04-25 04:27:52 +00:00
Dmitriy Ivanov
440242f038 Merge "Use bfd linker for x86/x86_64 targets" 2015-04-25 04:09:43 +00:00
Dmitriy Ivanov
e91e66f223 Use bfd linker for x86/x86_64 targets
ld.gold in current toolchain for x86_64
 does not support -z global.

Change-Id: Iea2b192f0f0aa998a02adb356fd4eec4e10a1739
2015-04-24 21:05:49 -07:00
Dmitriy Ivanov
6a76d3a2fe am 1f4c9067: am ebfb55e4: Merge "Enable dlsym_df_1_global test for arm/arm64"
* commit '1f4c9067af716dc9419cb2e33adc3abf9b2dcb2c':
  Enable dlsym_df_1_global test for arm/arm64
2015-04-25 02:07:39 +00:00
Dmitriy Ivanov
1f4c9067af am ebfb55e4: Merge "Enable dlsym_df_1_global test for arm/arm64"
* commit 'ebfb55e4cdf03473d66eaf5928fb3c3a8b0c2f85':
  Enable dlsym_df_1_global test for arm/arm64
2015-04-25 01:10:54 +00:00
Dmitriy Ivanov
ea295f68f1 Unregister pthread_atfork handlers on dlclose()
Bug: http://b/20339788
Change-Id: I874c87faa377645fa9e0752f4fc166d81fd9ef7e
2015-04-24 17:57:37 -07:00
Dmitriy Ivanov
ebfb55e4cd Merge "Enable dlsym_df_1_global test for arm/arm64" 2015-04-25 00:50:05 +00:00
Dmitriy Ivanov
6612d7a347 Enable dlsym_df_1_global test for arm/arm64
Change-Id: I1fdebced93175cb14053e2239e79f97239fc2dc2
2015-04-24 16:26:03 -07:00
Dmitriy Ivanov
7336ab23ee am 71abd9cc: am 2bb93482: Merge "Exit normally when relocations are already packed."
* commit '71abd9cc2ffb0c75288f5064e5e5d5a223e15a41':
  Exit normally when relocations are already packed.
2015-04-24 21:09:41 +00:00
Dmitriy Ivanov
71abd9cc2f am 2bb93482: Merge "Exit normally when relocations are already packed."
* commit '2bb93482a7793640205ade2f7316db5b3f5cac19':
  Exit normally when relocations are already packed.
2015-04-24 20:05:05 +00:00
Dmitriy Ivanov
2bb93482a7 Merge "Exit normally when relocations are already packed." 2015-04-24 19:42:39 +00:00
Dmitriy Ivanov
b0b9338ff8 Exit normally when relocations are already packed.
Bug: http://b/18051137
Change-Id: Idfffac5fe965e3cdeabe6d3b2dcd8c275c6ae5df
2015-04-24 12:39:14 -07:00
Dimitry Ivanov
690a87096b am e5d3ad4a: am 6c63ee41: Merge "Revert "Unregister pthread_atfork handlers on dlclose()""
* commit 'e5d3ad4abe6331955c172a2151d19e64f3c39549':
  Revert "Unregister pthread_atfork handlers on dlclose()"
2015-04-24 04:32:20 +00:00
Dimitry Ivanov
e5d3ad4abe am 6c63ee41: Merge "Revert "Unregister pthread_atfork handlers on dlclose()""
* commit '6c63ee41ac5a246fb46c51753cd4d50ccae0dd8f':
  Revert "Unregister pthread_atfork handlers on dlclose()"
2015-04-24 04:07:13 +00:00
Dimitry Ivanov
6c63ee41ac Merge "Revert "Unregister pthread_atfork handlers on dlclose()"" 2015-04-24 03:49:30 +00:00
Dimitry Ivanov
094f58fb2a Revert "Unregister pthread_atfork handlers on dlclose()"
The visibility control in pthread_atfork.h is incorrect.
 It breaks 64bit libc.so by hiding pthread_atfork.

 This reverts commit 6df122f852.

Change-Id: I21e4b344d500c6f6de0ccb7420b916c4e233dd34
2015-04-24 03:46:57 +00:00
Dmitriy Ivanov
08d62b2310 am 83ebe0c3: am 41ebceaf: Merge "Exit normally when packing relocs saves no space."
* commit '83ebe0c37b5338d0940d45497144fe8aa4a4bfea':
  Exit normally when packing relocs saves no space.
2015-04-23 23:44:36 +00:00
Dmitriy Ivanov
e8743e2759 am 24ffcb3e: am e3ecedd3: Merge "Remove jemalloc.a from libc_nomalloc.a"
* commit '24ffcb3ec6e488b469ebe148361915a3d75b9e3d':
  Remove jemalloc.a from libc_nomalloc.a
2015-04-23 23:16:05 +00:00
Elliott Hughes
788b063961 am 347b83ff: am 3da9373f: Merge "Simplify close(2) EINTR handling."
* commit '347b83ff9c6d53322b8bfbaac05f4a71b2855bbb':
  Simplify close(2) EINTR handling.
2015-04-23 23:16:04 +00:00
Dmitriy Ivanov
e80f32521a am 4d9c009f: am dc405b52: Merge "Unregister pthread_atfork handlers on dlclose()"
* commit '4d9c009faeb091766139621be118acd04dd8b1e2':
  Unregister pthread_atfork handlers on dlclose()
2015-04-23 23:16:02 +00:00
Dmitriy Ivanov
83ebe0c37b am 41ebceaf: Merge "Exit normally when packing relocs saves no space."
* commit '41ebceaf3ad392b4a3f40d96d5750d95ef206546':
  Exit normally when packing relocs saves no space.
2015-04-23 23:13:57 +00:00
Dmitriy Ivanov
41ebceaf3a Merge "Exit normally when packing relocs saves no space." 2015-04-23 22:55:34 +00:00
Dmitriy Ivanov
adfcb97317 Exit normally when packing relocs saves no space.
Bug: http://b/18051137
Change-Id: I43ea5678a677e5d39fb54fafcf3a2f3a252c79b0
2015-04-23 22:54:25 +00:00
Dmitriy Ivanov
24ffcb3ec6 am e3ecedd3: Merge "Remove jemalloc.a from libc_nomalloc.a"
* commit 'e3ecedd306ec16ecb31c6b7d6f9fdcb65c03b70f':
  Remove jemalloc.a from libc_nomalloc.a
2015-04-23 22:12:41 +00:00
Dmitriy Ivanov
e3ecedd306 Merge "Remove jemalloc.a from libc_nomalloc.a" 2015-04-23 21:50:15 +00:00
Elliott Hughes
347b83ff9c am 3da9373f: Merge "Simplify close(2) EINTR handling."
* commit '3da9373fe0ada19d13c6c3f9831dee93ec0ba7a6':
  Simplify close(2) EINTR handling.
2015-04-23 21:33:07 +00:00
Elliott Hughes
3da9373fe0 Merge "Simplify close(2) EINTR handling." 2015-04-23 21:14:25 +00:00
Dmitriy Ivanov
7280e507b6 Remove jemalloc.a from libc_nomalloc.a
Change-Id: I86edc1a6cf3a26c46e6daef2c859459c1b0f29af
2015-04-23 12:24:43 -07:00
Elliott Hughes
3391a9ff13 Simplify close(2) EINTR handling.
This doesn't affect code like Chrome that correctly ignores EINTR on
close, makes code that tries TEMP_FAILURE_RETRY work (where before it might
have closed a different fd and appeared to succeed, or had a bogus EBADF),
and makes "goto fail" code work (instead of mistakenly assuming that EINTR
means that the close failed).

Who loses? Anyone actively trying to detect that they caught a signal while
in close(2). I don't think those people exist, and I think they have better
alternatives available.

Bug: https://code.google.com/p/chromium/issues/detail?id=269623
Bug: http://b/20501816
Change-Id: I11e2f66532fe5d1b0082b2433212e24bdda8219b
2015-04-23 08:41:45 -07:00
Dmitriy Ivanov
4d9c009fae am dc405b52: Merge "Unregister pthread_atfork handlers on dlclose()"
* commit 'dc405b5230c3d72107b57798a2c23b1a46069f4d':
  Unregister pthread_atfork handlers on dlclose()
2015-04-23 09:56:57 +00:00
Dmitriy Ivanov
dc405b5230 Merge "Unregister pthread_atfork handlers on dlclose()" 2015-04-23 08:05:25 +00:00
Dmitriy Ivanov
6df122f852 Unregister pthread_atfork handlers on dlclose()
Change-Id: I326fdf6bb06bed12743f08980b5c69d849c015b8
2015-04-22 19:19:37 -07:00
Dmitriy Ivanov
f75e6efbe4 am 8f01955d: am ff181089: Merge "Always use signed leb128 decoder"
* commit '8f01955d1ef985d79f581f2913eea30cb0258bb4':
  Always use signed leb128 decoder
2015-04-23 00:56:57 +00:00
Dmitriy Ivanov
eb98813e1a am 511e09c5: am 9ceec1a7: Merge "Always use signed leb128 encoding"
* commit '511e09c5282bdf68c2d3aaa85bc93cbc9ad4449b':
  Always use signed leb128 encoding
2015-04-23 00:06:12 +00:00
Dmitriy Ivanov
8f01955d1e am ff181089: Merge "Always use signed leb128 decoder"
* commit 'ff18108981aa1fa73696d6db1919cdc38788bd4e':
  Always use signed leb128 decoder
2015-04-22 22:38:01 +00:00
Dmitriy Ivanov
ff18108981 Merge "Always use signed leb128 decoder" 2015-04-22 22:16:31 +00:00
Dmitriy Ivanov
18870d350c Always use signed leb128 decoder
Relocation packer no longer encodes relocation tables
  using unsigned leb128: https://android-review.googlesource.com/147745

Bug: http://b/18051137
Change-Id: I620b7188e5f3dd9d5123431aa1fc7feca76be607
2015-04-22 13:29:42 -07:00
Dmitriy Ivanov
511e09c528 am 9ceec1a7: Merge "Always use signed leb128 encoding"
* commit '9ceec1a75dfcc8b032aa3a974b0cfc3bff5a306e':
  Always use signed leb128 encoding
2015-04-22 20:23:01 +00:00
Tao Bao
0223d2c018 am 423a0e91: am 457c34ad: Merge "Update the search path for libclang.so"
* commit '423a0e9123a14f7b716268d7883b61b11ab90152':
  Update the search path for libclang.so
2015-04-22 20:18:52 +00:00
Dmitriy Ivanov
22e7ddd56e am 9f49c34e: am 913fe559: Merge "Statically link libc++ for prebuilts"
* commit '9f49c34eecc7407fce674a82ae3a6126911efa34':
  Statically link libc++ for prebuilts
2015-04-22 20:18:48 +00:00
Dmitriy Ivanov
9ceec1a75d Merge "Always use signed leb128 encoding" 2015-04-22 20:02:04 +00:00
Dmitriy Ivanov
f15ceeb784 Always use signed leb128 encoding
According to runs on /system/lib there using
 unsigned leb128 does not save us any additional
 space. In order to keep packing as simple as
 possible switch to using signed leb128 for
 everything.

Bug: http://b/18051137
Change-Id: I1a47cb9eb2175895b3c3f7c13b4c6b1060de86c0
2015-04-22 12:58:38 -07:00
Tao Bao
423a0e9123 am 457c34ad: Merge "Update the search path for libclang.so"
* commit '457c34ad84093ec45ebe2e2f1ef635e3dcaddbe0':
  Update the search path for libclang.so
2015-04-22 18:55:11 +00:00
Dmitriy Ivanov
9f49c34eec am 913fe559: Merge "Statically link libc++ for prebuilts"
* commit '913fe559f69395aaf160653c1d3994df3272810b':
  Statically link libc++ for prebuilts
2015-04-22 18:46:43 +00:00
Tao Bao
457c34ad84 Merge "Update the search path for libclang.so" 2015-04-22 18:25:45 +00:00
Dmitriy Ivanov
913fe559f6 Merge "Statically link libc++ for prebuilts" 2015-04-22 18:15:27 +00:00
Tao Bao
7592008030 Update the search path for libclang.so
Prebuilt shared libraries (libclang.so, libLLVM.so and etc) have been
moved to prebuilts/sdk/tools/linux/lib64. Update the search path in
cpp.py to match the change.

Bug: 20485471
Change-Id: Ib7784db4d5529d16a1e2bfc07cb0237929bc5a64
2015-04-22 10:47:01 -07:00
Dmitriy Ivanov
2a6342187a Statically link libc++ for prebuilts
Statically link libc++ to relocation_packer in
 order to make it work from prebuilts

Bug: http://b/18051137
Change-Id: I933ed6a0e48780a26b261069eb6a293432824fe7
2015-04-22 10:43:12 -07:00
Chih-Hung Hsieh
76a24d0584 am 7f5d7b2b: am a00a9f0b: Merge "Allow building libc long double code with clang/llvm."
* commit '7f5d7b2b7642cb9f89505fe22e94006628c5efd9':
  Allow building libc long double code with clang/llvm.
2015-04-22 00:23:44 +00:00
Chih-Hung Hsieh
7f5d7b2b76 am a00a9f0b: Merge "Allow building libc long double code with clang/llvm."
* commit 'a00a9f0b7ed39589a768798de6a584a4baae030b':
  Allow building libc long double code with clang/llvm.
2015-04-22 00:05:31 +00:00
Chih-Hung Hsieh
a00a9f0b7e Merge "Allow building libc long double code with clang/llvm." 2015-04-21 23:44:59 +00:00
Dmitriy Ivanov
0eb4326023 am 2cfdac5c: am da3c4f2f: Merge "Adjust DT_VERSYM/VERNEED/VERDEF dynamic sections"
* commit '2cfdac5cb286525f4f2117faddc9ba7b60dde5fb':
  Adjust DT_VERSYM/VERNEED/VERDEF dynamic sections
2015-04-21 23:33:43 +00:00
Dmitriy Ivanov
2cfdac5cb2 am da3c4f2f: Merge "Adjust DT_VERSYM/VERNEED/VERDEF dynamic sections"
* commit 'da3c4f2f0d86b7e249c9b9b6cdf3bc0225b7178e':
  Adjust DT_VERSYM/VERNEED/VERDEF dynamic sections
2015-04-21 23:08:41 +00:00
Chih-Hung Hsieh
6fb8e96e5f Allow building libc long double code with clang/llvm.
This requires fix of clang's Android x86 long double size and format.
That bug has been fixed in https://android-review.git.corp.google.com/#/c/146254/

Change-Id: I182c6c493085212f88c694356659f72227c8b8c7
2015-04-21 21:20:37 +00:00
Dmitriy Ivanov
da3c4f2f0d Merge "Adjust DT_VERSYM/VERNEED/VERDEF dynamic sections" 2015-04-21 19:29:19 +00:00
Dmitriy Ivanov
bb25bbe19e Adjust DT_VERSYM/VERNEED/VERDEF dynamic sections
This is recent addition to bionic linker. The symbol
  versioning was not supported before therefore this bug
  went unnoticed.

  Also normal exit when there is not enought relocations
  to pack. This is to enable integration of relocation_packer
  to android build system.

Bug: http://b/20139821
Bug: http://b/18051137
Change-Id: Iaf36ae11c8e4b15cf785b6dd1712a3bdcf47cc45
2015-04-21 12:28:21 -07:00
Dmitriy Ivanov
94146a09ae am ec44b45a: am 0776f0f6: Merge "Add library name to error message"
* commit 'ec44b45aa7cc55037c0fba12f36e3e723da02885':
  Add library name to error message
2015-04-21 02:13:59 +00:00
Dmitriy Ivanov
ec44b45aa7 am 0776f0f6: Merge "Add library name to error message"
* commit '0776f0f6e2fc926ae90f460ceac2b0e025292363':
  Add library name to error message
2015-04-21 01:17:34 +00:00
Dmitriy Ivanov
0776f0f6e2 Merge "Add library name to error message" 2015-04-21 00:51:36 +00:00
Dmitriy Ivanov
3d7bea1fa0 Add library name to error message
Change-Id: I079e6f1dd95fe9cae2135fcd7358c51f8b584ac9
2015-04-20 17:40:39 -07:00
Daniel Micay
3244d9f07f add a fortified implementation of realpath
Change-Id: Icc59eacd1684f7cddd83d7a2b57dad0c7ada5eb7
2015-04-20 17:31:24 -04:00
Yabin Cui
80e1d86701 am 8b44eab5: am c5bd96ef: Merge "Fix bug in app_id_from_name in stubs.cpp."
* commit '8b44eab5b84c82de204f05291b9551043fd3310c':
  Fix bug in app_id_from_name in stubs.cpp.
2015-04-18 23:38:16 +00:00
Yabin Cui
8b44eab5b8 am c5bd96ef: Merge "Fix bug in app_id_from_name in stubs.cpp."
* commit 'c5bd96efd27f756d07f1a306e4120cede17b39f5':
  Fix bug in app_id_from_name in stubs.cpp.
2015-04-18 23:15:50 +00:00
Yabin Cui
c5bd96efd2 Merge "Fix bug in app_id_from_name in stubs.cpp." 2015-04-18 22:54:35 +00:00
Yabin Cui
72a6fdcdc7 Fix bug in app_id_from_name in stubs.cpp.
It seems that a break statement is missing.

Bug: 19872411
Change-Id: I9362783ab726d01f6eb27418563e716dd95688dc
2015-04-18 14:10:12 -07:00
Nick Kralevich
8db4332814 am 546cf0a0: am af7538b4: Merge "add fortified readlink/readlinkat implementations"
* commit '546cf0a06ff120a8db51ed31eec5a1ff4b3f1446':
  add fortified readlink/readlinkat implementations
2015-04-18 16:12:44 +00:00
Nick Kralevich
546cf0a06f am af7538b4: Merge "add fortified readlink/readlinkat implementations"
* commit 'af7538b49625f1c1c82e984610f26729a18d56bf':
  add fortified readlink/readlinkat implementations
2015-04-18 15:51:28 +00:00
Nick Kralevich
af7538b496 Merge "add fortified readlink/readlinkat implementations" 2015-04-18 15:30:18 +00:00
Dan Albert
906c4bb029 am c269aca7: am 7a8c7c48: Merge "Also send bionicbb logs to a file."
* commit 'c269aca791fe6f01a906135c1104b7eee5214901':
  Also send bionicbb logs to a file.
2015-04-18 01:43:02 +00:00
Dan Albert
09980c4ca3 am 02a25c49: am cb6ae56b: Merge "Merge the two bionicbb services into one."
* commit '02a25c49edc3d6b6b33561fd5740a73dcd1b3440':
  Merge the two bionicbb services into one.
2015-04-18 01:43:00 +00:00
Daniel Micay
4ae773633a add fortified memchr/memrchr implementations
Change-Id: I38c473cc0c608b08f971409a95eb8b853cb2ba1c
2015-04-17 21:17:12 -04:00
Dan Albert
c269aca791 am 7a8c7c48: Merge "Also send bionicbb logs to a file."
* commit '7a8c7c48db11b81bc53c63ddfbaeca12e7f5e8cb':
  Also send bionicbb logs to a file.
2015-04-18 01:10:22 +00:00
Dan Albert
02a25c49ed am cb6ae56b: Merge "Merge the two bionicbb services into one."
* commit 'cb6ae56b3e4ee50e99e9f3335d2676a21000d400':
  Merge the two bionicbb services into one.
2015-04-18 01:10:21 +00:00
Dan Albert
7a8c7c48db Merge "Also send bionicbb logs to a file." 2015-04-18 00:58:23 +00:00
Dan Albert
21988a3b16 Also send bionicbb logs to a file.
Change-Id: If9a6fdbe004e3b4bb7d868b7255f83c232759f80
2015-04-17 17:57:15 -07:00
Dan Albert
cb6ae56b3e Merge "Merge the two bionicbb services into one." 2015-04-18 00:55:31 +00:00
Dan Albert
d3fe4f1229 Merge the two bionicbb services into one.
Change-Id: I6490da1ec96b2e24b330296950be84424e11bd35
2015-04-17 17:39:36 -07:00
Daniel Micay
42281880a8 add fortified readlink/readlinkat implementations
Change-Id: Ia4b1824d20cad3a072b9162047492dade8576779
2015-04-17 18:49:12 -04:00
Dmitriy Ivanov
17dd78472f am d4709744: am 3875744f: Merge "Support symbol versioning"
* commit 'd4709744a26f232500f34c3fd13db21830f29d65':
  Support symbol versioning
2015-04-17 06:13:19 +00:00
Dmitriy Ivanov
d4709744a2 am 3875744f: Merge "Support symbol versioning"
* commit '3875744f89600027c69ea68650fff1eeb4b29723':
  Support symbol versioning
2015-04-17 04:19:39 +00:00
Dmitriy Ivanov
3875744f89 Merge "Support symbol versioning" 2015-04-17 03:57:46 +00:00
Elliott Hughes
84111de007 am 3c35b0a4: am fc4850e3: Merge "Fix clang build."
* commit '3c35b0a427cbc3aa049acfbf9c04084b4c519ed6':
  Fix clang build.
2015-04-17 02:11:32 +00:00
Elliott Hughes
dd44ccdf9d am ea154268: am 31128da2: Merge "add fortified implementations of pread/pread64"
* commit 'ea154268ff7ce0789c5c9093c0a06be44cbf33cf':
  add fortified implementations of pread/pread64
2015-04-17 02:04:28 +00:00
Elliott Hughes
3c35b0a427 am fc4850e3: Merge "Fix clang build."
* commit 'fc4850e37b713eae12d0bde7f6e0b4e9b444bfef':
  Fix clang build.
2015-04-17 01:16:45 +00:00
Elliott Hughes
fc4850e37b Merge "Fix clang build." 2015-04-17 00:57:52 +00:00
Dmitriy Ivanov
2a81536144 Support symbol versioning
Bug: http://b/20139821
Change-Id: I64122a0fb0960c20b2ce614161b7ab048456b681
2015-04-16 17:57:30 -07:00
Elliott Hughes
a9325133aa Fix clang build.
Change-Id: I70a9ebe806cb4f7e23a7d8e486157ddd70ae3008
2015-04-16 17:56:12 -07:00
Elliott Hughes
ea154268ff am 31128da2: Merge "add fortified implementations of pread/pread64"
* commit '31128da28f561152f5b663e6b4849691b3951525':
  add fortified implementations of pread/pread64
2015-04-17 00:54:24 +00:00
Elliott Hughes
31128da28f Merge "add fortified implementations of pread/pread64" 2015-04-17 00:34:26 +00:00
Dan Albert
0a0165e53f am 7e045ce9: am f84a5c6c: Merge "Clean up "logging"."
* commit '7e045ce97cc2c3b27543254e0cdf6f16290502cc':
  Clean up "logging".
2015-04-16 22:53:23 +00:00
Dan Albert
7e045ce97c am f84a5c6c: Merge "Clean up "logging"."
* commit 'f84a5c6c5c5fa2507458086a2f9a077bd9e2c9ec':
  Clean up "logging".
2015-04-16 22:31:49 +00:00
Dan Albert
f84a5c6c5c Merge "Clean up "logging"." 2015-04-16 22:08:39 +00:00
Dan Albert
a4061cddbe Clean up "logging".
Print is bad and I should feel bad. Use the logging module instead.
Will follow up by adding a persistent log destination instead of just
the console.

Change-Id: I396ff10712f88a03f8d8183b6de29ea273815962
2015-04-16 14:20:13 -07:00
Elliott Hughes
e04b476e17 am ecd73583: am 14af27a1: Merge "Remove PROP_PATH_SYSTEM_DEFAULT."
* commit 'ecd73583e16a1337223924e2a9df2185499f5a2b':
  Remove PROP_PATH_SYSTEM_DEFAULT.
2015-04-16 20:43:23 +00:00
Elliott Hughes
ecd73583e1 am 14af27a1: Merge "Remove PROP_PATH_SYSTEM_DEFAULT."
* commit '14af27a147b5e91eeb8632a3f99d4b6cc2ed26dc':
  Remove PROP_PATH_SYSTEM_DEFAULT.
2015-04-16 20:20:31 +00:00
Elliott Hughes
14af27a147 Merge "Remove PROP_PATH_SYSTEM_DEFAULT." 2015-04-16 19:58:00 +00:00
Daniel Micay
e7e1c875b0 add fortified implementations of pread/pread64
Change-Id: Iec39c3917e0bc94371bd81541619392f5abe29b9
2015-04-16 10:33:35 -04:00
Dmitriy Ivanov
9e66105685 am 261ebb63: am a40cb0ca: Merge "Call __cxa_thread_finalize for the main thread."
* commit '261ebb63478e5d30cc3da6c3f37a1ae3e08551da':
  Call __cxa_thread_finalize for the main thread.
2015-04-16 10:02:56 +00:00
Dmitriy Ivanov
261ebb6347 am a40cb0ca: Merge "Call __cxa_thread_finalize for the main thread."
* commit 'a40cb0ca7fe8ddc146831e92ec543be9feb26a65':
  Call __cxa_thread_finalize for the main thread.
2015-04-16 09:40:53 +00:00
Dmitriy Ivanov
a40cb0ca7f Merge "Call __cxa_thread_finalize for the main thread." 2015-04-16 08:06:03 +00:00
Christopher Ferris
80a18851f5 am 22081158: am 12d89027: Merge "Update the number of jemalloc reserved keys."
* commit '22081158da5605e87d5db5c98a1c6d4a24802063':
  Update the number of jemalloc reserved keys.
2015-04-16 05:23:48 +00:00
Christopher Ferris
22081158da am 12d89027: Merge "Update the number of jemalloc reserved keys."
* commit '12d89027457b4d5dce6c3a7fd01a2951f273d9a9':
  Update the number of jemalloc reserved keys.
2015-04-16 05:01:51 +00:00
Christopher Ferris
12d8902745 Merge "Update the number of jemalloc reserved keys." 2015-04-16 04:42:38 +00:00
Yabin Cui
459676c3b3 am 86ad2037: am 2587c6a2: Merge "Change on handling of SIGEV_THREAD timers."
* commit '86ad2037793d1f125d59d115ee90f2f105f94f41':
  Change on handling of SIGEV_THREAD timers.
2015-04-16 01:59:15 +00:00
Yabin Cui
86ad203779 am 2587c6a2: Merge "Change on handling of SIGEV_THREAD timers."
* commit '2587c6a2f0f946bd7c1e526c20b2623c01accd60':
  Change on handling of SIGEV_THREAD timers.
2015-04-16 01:28:28 +00:00
Yabin Cui
2587c6a2f0 Merge "Change on handling of SIGEV_THREAD timers." 2015-04-16 01:08:25 +00:00
Yabin Cui
95f1ee235a Change on handling of SIGEV_THREAD timers.
1. Don't prevent calling callback when SIGEV_THREAD timers are disarmed by timer_settime.
As in POSIX standard: The effect of disarming or resetting a timer with pending
expiration notifications is unspecified. And glibc didn't prevent in this situation, so I
think it is fine to remove the support.
2. Still prevent calling callback when SIGEV_THREAD timers are deleted by timer_delete.
As in POSIX standard: The disposition of pending signals for the deleted timer is unspecified.
However, glibc handles this (although that is not perfect). And some of our tests in
time_test.cpp depend on this feature as described in b/18039727. so I retain the support.
3. Fix some flaky test in time_test.cpp, and make "time*" test pass on bionic-unit-tests-glibcxx.

Bug: 18263854

Change-Id: I8ced184eacdbfcf433fd81b0c69c38824beb8ebc
2015-04-15 17:36:01 -07:00
Christopher Ferris
c0f89283cc Update the number of jemalloc reserved keys.
jemalloc now uses a single key pointing to a structure rather
than multiple keys.

Change-Id: Ib76185a594ab2cd4dc400d9a7a5bc0a57a7ac92d
2015-04-15 17:20:10 -07:00
Elliott Hughes
43e020ce93 Remove PROP_PATH_SYSTEM_DEFAULT.
Change-Id: Ib01d9c2f9d890eb5e7ba1e15bd11767195e84967
2015-04-15 17:03:43 -07:00
Dmitriy Ivanov
a2f29a1375 am 4e8f791b: am c6ccdfaf: Merge "Hide emutls* symbols in libc.so"
* commit '4e8f791b43c0ec44ee884cf90b4241d947bd2b72':
  Hide emutls* symbols in libc.so
2015-04-16 00:00:05 +00:00
Dmitriy Ivanov
4e8f791b43 am c6ccdfaf: Merge "Hide emutls* symbols in libc.so"
* commit 'c6ccdfaf1ff4665ec96962863054263510d73e7b':
  Hide emutls* symbols in libc.so
2015-04-15 23:45:37 +00:00
Dmitriy Ivanov
c6ccdfaf1f Merge "Hide emutls* symbols in libc.so" 2015-04-15 23:27:38 +00:00
Dmitriy Ivanov
163ab8ba86 Call __cxa_thread_finalize for the main thread.
Bug: http://b/20231984
Bug: http://b/16696563
Change-Id: I71cfddd0d404d1d4a593ec8d3bca9741de8cb90f
2015-04-15 16:24:21 -07:00
Dmitriy Ivanov
66aa0b61f7 Hide emutls* symbols in libc.so
Also make thread_local in test static to avoid ld.bfd
 warning for arm64.

Change-Id: I09a3f2aa9b73a4fafa3f3bbc64ddc2a128ad50ee
2015-04-15 14:23:00 -07:00
Christopher Ferris
27b6c01562 am 4a9e3d76: am cafc9480: Merge "Fix addition of extra arg to cfi_restore."
* commit '4a9e3d76a5be7d60e259cb36a2e467ee34c46a26':
  Fix addition of extra arg to cfi_restore.
2015-04-15 00:47:51 +00:00
Christopher Ferris
4a9e3d76a5 am cafc9480: Merge "Fix addition of extra arg to cfi_restore."
* commit 'cafc948069d447aa1e4dde599ee83bf6c0c5d5d8':
  Fix addition of extra arg to cfi_restore.
2015-04-15 00:22:59 +00:00
Christopher Ferris
7707542aa1 am ffecd6ce: am a529efac: Merge "Add missing cfi directives for x86 assembler."
* commit 'ffecd6cef91cbd3d01b1a09737d9e2b3bdfe9818':
  Add missing cfi directives for x86 assembler.
2015-04-15 00:22:44 +00:00
Christopher Ferris
cafc948069 Merge "Fix addition of extra arg to cfi_restore." 2015-04-15 00:07:35 +00:00
Christopher Ferris
940d3122c9 Fix addition of extra arg to cfi_restore.
Change-Id: I8fdcc1ae3e91b69ccbcec756a89e1ccb4fa1be53
2015-04-14 17:02:31 -07:00
Christopher Ferris
ffecd6cef9 am a529efac: Merge "Add missing cfi directives for x86 assembler."
* commit 'a529efac4efa4641186fef5003752cc1c43ec763':
  Add missing cfi directives for x86 assembler.
2015-04-15 00:00:48 +00:00
Christopher Ferris
a529efac4e Merge "Add missing cfi directives for x86 assembler." 2015-04-14 23:43:09 +00:00
Christopher Ferris
605ee81b06 Add missing cfi directives for x86 assembler.
Change-Id: I80d3e33a71bbaeab5f39b667ebe61e865fd54b80
2015-04-14 16:42:10 -07:00
Yabin Cui
530288f1be am c2eac94a: am 8f3f0418: Merge "Prevent using static-allocated pthread keys before creation."
* commit 'c2eac94a8792b621765d102f918103b58bed693e':
  Prevent using static-allocated pthread keys before creation.
2015-04-14 21:53:45 +00:00
Yabin Cui
c2eac94a87 am 8f3f0418: Merge "Prevent using static-allocated pthread keys before creation."
* commit '8f3f04184a5772b421867b59acd3d0dfbc6fa4eb':
  Prevent using static-allocated pthread keys before creation.
2015-04-14 21:00:19 +00:00
Yabin Cui
8f3f04184a Merge "Prevent using static-allocated pthread keys before creation." 2015-04-14 20:35:08 +00:00
Yabin Cui
5ddbb3f936 Prevent using static-allocated pthread keys before creation.
Bug: 19993460

Change-Id: I244dea7f5df3c8384f88aa48d635348fafc9cbaf
2015-04-14 13:32:09 -07:00
Dan Albert
43b59137e7 am 2bd1560e: am 447cd196: Merge "Skip merge-failed messages from Gerrit."
* commit '2bd1560eda2f51bd34d70d56087e59888709753d':
  Skip merge-failed messages from Gerrit.
2015-04-14 03:01:38 +00:00
Dan Albert
2bd1560eda am 447cd196: Merge "Skip merge-failed messages from Gerrit."
* commit '447cd19681cfd0a71282c87d1b32a7757bbaba81':
  Skip merge-failed messages from Gerrit.
2015-04-14 01:52:51 +00:00
Dan Albert
447cd19681 Merge "Skip merge-failed messages from Gerrit." 2015-04-14 01:33:35 +00:00
Dan Albert
a0ecd5b2b4 Skip merge-failed messages from Gerrit.
Change-Id: I2d8055a44cd78f95e64d6cf88e9efdd610a4fa88
2015-04-13 17:33:51 -07:00
Dmitriy Ivanov
2eff46f170 am ffc34e51: am de889741: Merge "Fix dl* tests to run-on-host"
* commit 'ffc34e51f71cbf88230023b7ce1d7a2c5b253c0c':
  Fix dl* tests to run-on-host
2015-04-11 01:06:30 +00:00
Dmitriy Ivanov
ffc34e51f7 am de889741: Merge "Fix dl* tests to run-on-host"
* commit 'de889741201faa338e01babdfd10bbd597769e60':
  Fix dl* tests to run-on-host
2015-04-11 00:45:59 +00:00
Dmitriy Ivanov
de88974120 Merge "Fix dl* tests to run-on-host" 2015-04-11 00:28:05 +00:00
Dan Albert
bdf9bb8fc4 am 1adfe6b2: am c921eb67: Merge "Don\'t build any changes that touch bionicbb."
* commit '1adfe6b20d096b5271b5eef1c15f8fc37e3caaf8':
  Don't build any changes that touch bionicbb.
2015-04-10 04:34:56 +00:00
Dmitriy Ivanov
34ecca9c3c am 1eb37bae: am 9ce9bf5a: Merge "Add Elfxx_Ver* types"
* commit '1eb37baed8b9cb90cf6f59a876f7e9b1c817e45b':
  Add Elfxx_Ver* types
2015-04-10 04:32:44 +00:00
Dan Albert
1adfe6b20d am c921eb67: Merge "Don\'t build any changes that touch bionicbb."
* commit 'c921eb677077f96c09c66ac34cad490356afde6c':
  Don't build any changes that touch bionicbb.
2015-04-10 00:37:47 +00:00
Dan Albert
c921eb6770 Merge "Don't build any changes that touch bionicbb." 2015-04-10 00:25:18 +00:00
Dan Albert
d032378790 Don't build any changes that touch bionicbb.
Right now any changes in here would be innocuous because I manually
update bionicbb, but I'd like to check in the various job
configurations. Once I have we don't want anyone to be able to make
the buildbot run any untrusted code.

Change-Id: Ic050859cd5017615f71c75f995ba21bb45407b05
2015-04-09 17:18:53 -07:00
Dmitriy Ivanov
1eb37baed8 am 9ce9bf5a: Merge "Add Elfxx_Ver* types"
* commit '9ce9bf5aec5ed2ec75acdc05f00a49728563a782':
  Add Elfxx_Ver* types
2015-04-09 22:34:29 +00:00
Dmitriy Ivanov
9ce9bf5aec Merge "Add Elfxx_Ver* types" 2015-04-09 22:14:09 +00:00
Dmitriy Ivanov
ef25592f14 Fix dl* tests to run-on-host
Bug: http://b/20121152
Change-Id: I1e1f41d885c75dbb26f91565a53a15d62ef72ce6
2015-04-09 14:56:26 -07:00
Dmitriy Ivanov
c0e7dbb1db Add Elfxx_Ver* types
Bug: http://b/20139821
Change-Id: I7a367b08faa3bf5c005996c066cd35709f533265
2015-04-09 13:58:53 -07:00
Christopher Ferris
64420c5fd4 am 0b93c0c1: am 0a92ac88: Merge "Use assembly memmove for all arm32 processors."
* commit '0b93c0c19280bc57c732a8f6a93b4735730f91c5':
  Use assembly memmove for all arm32 processors.
2015-04-09 18:27:19 +00:00
Christopher Ferris
0b93c0c192 am 0a92ac88: Merge "Use assembly memmove for all arm32 processors."
* commit '0a92ac884891b167d6393592fbf9ecf26218f9aa':
  Use assembly memmove for all arm32 processors.
2015-04-09 18:02:53 +00:00
Yabin Cui
56cda5cc09 am e29db673: am 9f2c2f53: Merge "Provide writer preference option in rwlock."
* commit 'e29db67312f4e2856a92b11498fc067d7f46dcac':
  Provide writer preference option in rwlock.
2015-04-09 17:52:17 +00:00
Christopher Ferris
0a92ac8848 Merge "Use assembly memmove for all arm32 processors." 2015-04-09 17:41:58 +00:00
Yabin Cui
e29db67312 am 9f2c2f53: Merge "Provide writer preference option in rwlock."
* commit '9f2c2f53d372001ac6565b060a07d4416ca58e47':
  Provide writer preference option in rwlock.
2015-04-09 17:36:48 +00:00
Yabin Cui
9f2c2f53d3 Merge "Provide writer preference option in rwlock." 2015-04-09 17:19:44 +00:00
Neil Fuller
e42cb680a3 am 37eca951: am f9ff2eea: Merge "Upgrade timezone data to 2015b"
* commit '37eca9511be51e2c37ab843b791c9ab52b604954':
  Upgrade timezone data to 2015b
2015-04-09 14:16:45 +00:00
Neil Fuller
37eca9511b am f9ff2eea: Merge "Upgrade timezone data to 2015b"
* commit 'f9ff2eeaeeb841fa9f197ee8b6bc9521e63210dd':
  Upgrade timezone data to 2015b
2015-04-09 14:01:07 +00:00
Neil Fuller
f9ff2eeaee Merge "Upgrade timezone data to 2015b" 2015-04-09 13:45:03 +00:00
Neil Fuller
753e9836ad am 062795f7: am 694282b1: Merge "Update update-tzdata.py tool to generate ICU4J data jars"
* commit '062795f773764b3576f987f2b90a7c04c53ba60a':
  Update update-tzdata.py tool to generate ICU4J data jars
2015-04-09 10:16:59 +00:00
Neil Fuller
aba687a09c Upgrade timezone data to 2015b
Changes affecting future time stamps

    Mongolia will start observing DST again this year, from the last
    Saturday in March at 02:00 to the last Saturday in September at 00:00.
    (Thanks to Ganbold Tsagaankhuu.)

    Palestine will start DST on March 28, not March 27.  Also,
    correct the fall 2014 transition from September 26 to October 24.
    Adjust future predictions accordingly.  (Thanks to Steffen Thorsen.)

  Changes affecting past time stamps

    The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
    regression.  (Thanks to Stuart Bishop for reporting the problem.)

    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: America/Antigua, America/Cayman,
    Pacific/Midway, and Pacific/Saipan.

  Changes affecting time zone abbreviations

    Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
    (Thanks to Hank W.)

Bug: 19887183
Change-Id: I1b4bdc5ae5cf778908a77893d7f8db8a4117e1e1
2015-04-09 11:15:27 +01:00
Neil Fuller
062795f773 am 694282b1: Merge "Update update-tzdata.py tool to generate ICU4J data jars"
* commit '694282b1726a6c5f64df3695594bf23707cf4771':
  Update update-tzdata.py tool to generate ICU4J data jars
2015-04-09 09:56:53 +00:00
Neil Fuller
694282b172 Merge "Update update-tzdata.py tool to generate ICU4J data jars" 2015-04-09 09:39:57 +00:00
Neil Fuller
4d3abcb033 Update update-tzdata.py tool to generate ICU4J data jars
The ICU4J changes are not necessary for use on Android (since
we use the ICU4C .dat file), but updating them ensures that
the .jars in sync with everything else and the jars are currently
required for host tests.

Change-Id: Ie56b31af87e8fbd27a6489af8287e4b6a7be6b8f
2015-04-09 09:38:31 +00:00
Dan Albert
00627f94b4 am b7460a35: am 5cf46f81: Merge "Reject changes with cleanspecs."
* commit 'b7460a352e8456d2f77d990a6e76edc9de102e98':
  Reject changes with cleanspecs.
2015-04-09 01:13:18 +00:00
Dan Albert
b7460a352e am 5cf46f81: Merge "Reject changes with cleanspecs."
* commit '5cf46f81ead958f43178ee8f613432b5f66045e5':
  Reject changes with cleanspecs.
2015-04-09 00:31:59 +00:00
Christopher Ferris
41efc92e35 Use assembly memmove for all arm32 processors.
Bug: 15110993
Change-Id: Ia3dcd6b8c4032f8c72b6f2e628b635ce99667c09
2015-04-08 16:53:16 -07:00
Dan Albert
5cf46f81ea Merge "Reject changes with cleanspecs." 2015-04-08 22:52:44 +00:00
Yabin Cui
76615dae93 Provide writer preference option in rwlock.
Previous implementation of rwlock contains four atomic variables, which
is hard to maintain and change. So I make following changes in this CL:

1. Add pending flags in rwlock.state, so we don't need to synchronize
between different atomic variables. Using compare_and_swap operations
on rwlock.state is enough for all state change.

2. Add pending_lock to protect readers/writers waiting and wake up
operations. As waiting/wakeup is not performance critical, using a
lock is easier to maintain.

3. Add writer preference option.

4. Add unit tests for rwlock.

Bug: 19109156

Change-Id: Idcaa58d695ea401d64445610b465ac5cff23ec7c
2015-04-08 13:11:13 -07:00
Dmitriy Ivanov
8614073ef3 am e2aa8002: am 598493e7: Merge "Stop libc from cross-referencing unwind symbols"
* commit 'e2aa80028999fbb896d40f27c2fe5f0691f992f0':
  Stop libc from cross-referencing unwind symbols
2015-04-07 20:12:59 +00:00
Dmitriy Ivanov
e2aa800289 am 598493e7: Merge "Stop libc from cross-referencing unwind symbols"
* commit '598493e725e0298ae11ddbdee62c3a7007eb503c':
  Stop libc from cross-referencing unwind symbols
2015-04-07 19:39:40 +00:00
Dmitriy Ivanov
598493e725 Merge "Stop libc from cross-referencing unwind symbols" 2015-04-07 19:21:32 +00:00
Neil Fuller
fb2c7ab1f0 am d4451f13: am 957f6188: Merge "Changes to re-enable overrides for tz data"
* commit 'd4451f130c754243f6c98880fa652874c567c4c3':
  Changes to re-enable overrides for tz data
2015-04-07 13:33:42 +00:00
Neil Fuller
d4451f130c am 957f6188: Merge "Changes to re-enable overrides for tz data"
* commit '957f6188fa7494ea8b7701b14df4c9127d27a9ef':
  Changes to re-enable overrides for tz data
2015-04-07 13:16:45 +00:00
Neil Fuller
957f6188fa Merge "Changes to re-enable overrides for tz data" 2015-04-07 12:55:07 +00:00
Dmitriy Ivanov
5f43c7a9bb am 6c4ef816: am 9fbd8fd4: Merge "Fix x86_64 build"
* commit '6c4ef816db5f7b9b4a659f997327d6edee65973b':
  Fix x86_64 build
2015-04-07 02:48:19 +00:00
Dmitriy Ivanov
6c4ef816db am 9fbd8fd4: Merge "Fix x86_64 build"
* commit '9fbd8fd4bc1767b65abd0fdbdb5e35cdc4dafe13':
  Fix x86_64 build
2015-04-07 02:28:57 +00:00
Dmitriy Ivanov
9fbd8fd4bc Merge "Fix x86_64 build" 2015-04-07 02:08:43 +00:00
Dmitriy Ivanov
1dce3ed249 Fix x86_64 build
Change-Id: Id81c059bf3ecdb9cc84d04d16ffda34baaadc5a1
2015-04-06 19:05:58 -07:00
Dmitriy Ivanov
cd13b14e98 Stop libc from cross-referencing unwind symbols
This makes unwind symbols 'protected',
  which should prevent them from relocating
  against libc++.so/libcutls.so.

  This is temporary file and it is going
  to be removed once libc.so stops exporting
  them.

Bug: http://b/19958712
Change-Id: I96a765afe47e68d2e2ceb288870e63a25ca52081
2015-04-07 01:48:35 +00:00
Dmitriy Ivanov
03930d4476 am 0e67ab32: am 8a1007db: Merge "Add realpath for soinfo"
* commit '0e67ab32f2a7ab6685d9e4c5a38c0d5a5396800a':
  Add realpath for soinfo
2015-04-07 00:52:43 +00:00
Dmitriy Ivanov
0e67ab32f2 am 8a1007db: Merge "Add realpath for soinfo"
* commit '8a1007dbababa6c4812c267ca9119cf0765afc3f':
  Add realpath for soinfo
2015-04-07 00:32:46 +00:00
Dmitriy Ivanov
8a1007dbab Merge "Add realpath for soinfo" 2015-04-07 00:14:57 +00:00
Elliott Hughes
53296ddab0 am 04b59972: am 67de2593: Merge "Add a test for getdelim(3) on a directory."
* commit '04b59972814b8d9c93b0fb72cbcaeeaa761894cd':
  Add a test for getdelim(3) on a directory.
2015-04-06 23:14:43 +00:00
Dan Albert
dadac10fcc Reject changes with cleanspecs.
Cleanspecs must not be removed once they have been built. This means
they can't be reverted, or reliably cherry-picked. Just skip any
changes that include them since they make such a mess.

Change-Id: I3df8d81f93651d573485de7a75ecf5c6278c0001
2015-04-06 14:22:37 -07:00
Dmitriy Ivanov
aae859cc3c Add realpath for soinfo
This change adds realpath to soinfo and
  extends limit on filenames from 128 to PATH_MAX.

  It also removes soinfo::name field, linker uses
  dt_soname instead.

Bug: http://b/19818481
Bug: https://code.google.com/p/android/issues/detail?id=80336
Change-Id: I9cff4cb5bda3ee2bc74e1bbded9594ea7fbe2a08
2015-04-06 21:15:43 +00:00
Elliott Hughes
04b5997281 am 67de2593: Merge "Add a test for getdelim(3) on a directory."
* commit '67de2593b3d7e9e94ac8993efd51da4b512c6af5':
  Add a test for getdelim(3) on a directory.
2015-04-06 19:49:26 +00:00
Elliott Hughes
67de2593b3 Merge "Add a test for getdelim(3) on a directory." 2015-04-06 19:36:13 +00:00
Elliott Hughes
694fd2d880 Add a test for getdelim(3) on a directory.
Apparently uClibc has a bug here. We don't, but let's keep it that way.

Bug: http://landley.net/notes.html#21-03-2015
Change-Id: If406df963db9bee47921d7a1c116ebcab08d96bf
2015-04-05 10:51:56 -07:00
Yabin Cui
f297fca177 am 9c4d0941: am 4bd8f963: Merge "Fix bug for recursive/errorcheck mutex on 32-bit devices."
* commit '9c4d0941f985e2ab9ec5fca579dc98d4ad26fec2':
  Fix bug for recursive/errorcheck mutex on 32-bit devices.
2015-04-04 20:07:23 +00:00
Yabin Cui
9c4d0941f9 am 4bd8f963: Merge "Fix bug for recursive/errorcheck mutex on 32-bit devices."
* commit '4bd8f9637daaada333ff35945b00cfe6cb822376':
  Fix bug for recursive/errorcheck mutex on 32-bit devices.
2015-04-04 19:47:57 +00:00
Yabin Cui
4bd8f9637d Merge "Fix bug for recursive/errorcheck mutex on 32-bit devices." 2015-04-04 19:31:55 +00:00
Yabin Cui
f796985923 Fix bug for recursive/errorcheck mutex on 32-bit devices.
Bug: 19216648
Change-Id: I3b43b2d18d25b9bde352da1e35f9568133dec7cf
2015-04-03 19:01:17 -07:00
Dmitriy Ivanov
ccacf7c16a am 5a811bed: am e686df8d: Merge "Add libdl dependency for target libraries"
* commit '5a811bed273651406c91c543eefb19d12a55f9b4':
  Add libdl dependency for target libraries
2015-04-03 23:34:13 +00:00
Dmitriy Ivanov
5a811bed27 am e686df8d: Merge "Add libdl dependency for target libraries"
* commit 'e686df8d839216460f02cf7db6c4e26a13e49afd':
  Add libdl dependency for target libraries
2015-04-03 23:14:29 +00:00
Dmitriy Ivanov
e686df8d83 Merge "Add libdl dependency for target libraries" 2015-04-03 22:54:06 +00:00
Dmitriy Ivanov
45c57131d2 Add libdl dependency for target libraries
Fixed x86_64 target build with gcc 4.9

Change-Id: Id3b1e9286c2bcbb8e3ac117bcef957304db7cfd3
2015-04-03 15:17:52 -07:00
Elliott Hughes
329aefb20f am d7e64284: am cec2ab20: Merge "Try again to fix clang build."
* commit 'd7e64284ca7fa71d298d26e1ba84ce993bb98c92':
  Try again to fix clang build.
2015-04-03 21:19:41 +00:00
Elliott Hughes
d7e64284ca am cec2ab20: Merge "Try again to fix clang build."
* commit 'cec2ab20a0d2b24c15aa289cbac5d4291c856092':
  Try again to fix clang build.
2015-04-03 20:58:48 +00:00
Elliott Hughes
4c8c63a4de am f29f8ae6: am ec8b3a7d: Merge "Fix clang build."
* commit 'f29f8ae6e3fb8af2944cdbb2c0d29894c51cf3e5':
  Fix clang build.
2015-04-03 20:53:13 +00:00
Elliott Hughes
cec2ab20a0 Merge "Try again to fix clang build." 2015-04-03 20:38:15 +00:00
Elliott Hughes
dffd3c5838 Try again to fix clang build.
I got the condition the wrong way round in the previous change.

Bug: http://b/20065774
Change-Id: I218b224b37f5fb2f7c7ec2f9af27472b340c4b15
2015-04-03 13:37:18 -07:00
Elliott Hughes
f29f8ae6e3 am ec8b3a7d: Merge "Fix clang build."
* commit 'ec8b3a7dde3c282c4f9ca5c8bf5a7e1b7469def0':
  Fix clang build.
2015-04-03 20:36:55 +00:00
Dmitriy Ivanov
c461b78e43 am 5057929f: am aea165cb: Merge "Add ANDROID_DLEXT_FORCE_LOAD flag"
* commit '5057929fc8a71feedffaf7a688468d9f8ea1621f':
  Add ANDROID_DLEXT_FORCE_LOAD flag
2015-04-03 20:24:27 +00:00
Elliott Hughes
003b1639bd am 97c78020: am b1f1de4d: Merge "Fix volantis boot."
* commit '97c7802038b3c2472d2377984e749f398eee078c':
  Fix volantis boot.
2015-04-03 20:24:26 +00:00
Elliott Hughes
ec8b3a7dde Merge "Fix clang build." 2015-04-03 20:12:02 +00:00
Elliott Hughes
0975a5d9d2 Fix clang build.
Apparently clang really doesn't want you to take the address of a builtin.
Since this is only a temporary hack, let's just shrug and accept that
clang-built volantis images won't work until we have new NVIDIA blobs.

Bug: http://b/20065774
Change-Id: I4c8e893b15a1af8f9c54d3f89bfef112b63d09b4
2015-04-03 13:10:04 -07:00
Dmitriy Ivanov
5057929fc8 am aea165cb: Merge "Add ANDROID_DLEXT_FORCE_LOAD flag"
* commit 'aea165cb03abceb85062e94f22f72e1c9d9800a4':
  Add ANDROID_DLEXT_FORCE_LOAD flag
2015-04-03 19:59:03 +00:00
Elliott Hughes
97c7802038 am b1f1de4d: Merge "Fix volantis boot."
* commit 'b1f1de4dd4b1a3802abd5284de9ebfe6a98057f1':
  Fix volantis boot.
2015-04-03 19:59:01 +00:00
Dmitriy Ivanov
aea165cb03 Merge "Add ANDROID_DLEXT_FORCE_LOAD flag" 2015-04-03 19:45:24 +00:00
Elliott Hughes
b1f1de4dd4 Merge "Fix volantis boot." 2015-04-03 19:38:31 +00:00
Elliott Hughes
76e1cbca75 Fix volantis boot.
NVIDIA binary blobs are assuming that __cache_clear, _Unwind_Backtrace,
and _Unwind_GetIP are all in some library that they link, but now we've
cleaned up this leakage, they're no longer getting it. Deliberately leak
the symbols from libc.so until we get new blobs.

Bug: http://b/20065774
Change-Id: I92ef07b2bce8d1ad719bf40dab41d745cd6904d4
2015-04-03 12:37:03 -07:00
Dmitriy Ivanov
9b82136b98 Add ANDROID_DLEXT_FORCE_LOAD flag
This flag allows to force loading of the library
  in the case when for some reason multiple ELF files
  share the same filename (because the already-loaded
  library has been removed and overwritten, for example).

Change-Id: I798d44409ee13d63eaa75d685e99c4d028d2b0c1
2015-04-03 10:50:48 -07:00
Dmitriy Ivanov
3eef109c40 am 76832b63: am 06b6e3c5: Merge "Look into local group on dlsym with RTLD_DEFAULT"
* commit '76832b63967c81549a6628f7bd02eada1b11e238':
  Look into local group on dlsym with RTLD_DEFAULT
2015-04-02 22:35:49 +00:00
Dmitriy Ivanov
76832b6396 am 06b6e3c5: Merge "Look into local group on dlsym with RTLD_DEFAULT"
* commit '06b6e3c51d38d70c5ca99f3a3f795697031ac27f':
  Look into local group on dlsym with RTLD_DEFAULT
2015-04-02 22:14:58 +00:00
Dmitriy Ivanov
06b6e3c51d Merge "Look into local group on dlsym with RTLD_DEFAULT" 2015-04-02 21:55:01 +00:00
Dmitriy Ivanov
76ac1acdac Look into local group on dlsym with RTLD_DEFAULT
Fix dlsym to look into local group when called with
  RTLD_DEFAULT and RTLD_NEXT.

Bug: 17512583
Change-Id: I541354e89539c712af2ea4ec751e546913027084
2015-04-02 14:12:45 -07:00
Elliott Hughes
84afcc3e1e am 918415f3: am d619d6ff: Merge "Remove _memset16 and _memset32 from mips/mips64 bionic."
* commit '918415f3dc8590f422fa3540c0c6877360745466':
  Remove _memset16 and _memset32 from mips/mips64 bionic.
2015-04-02 21:08:58 +00:00
Yabin Cui
9e2f2b4d88 am 801bf53a: am 00d1101c: Merge "Refactor pthread_mutex to support 32-bit owner_tid on 64-bit devices."
* commit '801bf53a2740fadd23752ce8fdb8484fb478897b':
  Refactor pthread_mutex to support 32-bit owner_tid on 64-bit devices.
2015-04-02 21:08:57 +00:00
Elliott Hughes
918415f3dc am d619d6ff: Merge "Remove _memset16 and _memset32 from mips/mips64 bionic."
* commit 'd619d6ffb876de6a8f051c850762a6f7a7e55c76':
  Remove _memset16 and _memset32 from mips/mips64 bionic.
2015-04-02 20:47:54 +00:00
Yabin Cui
801bf53a27 am 00d1101c: Merge "Refactor pthread_mutex to support 32-bit owner_tid on 64-bit devices."
* commit '00d1101cc170ce786f26143a897b4a3e3363b55f':
  Refactor pthread_mutex to support 32-bit owner_tid on 64-bit devices.
2015-04-02 20:47:53 +00:00
Elliott Hughes
d619d6ffb8 Merge "Remove _memset16 and _memset32 from mips/mips64 bionic." 2015-04-02 20:35:22 +00:00
Yabin Cui
00d1101cc1 Merge "Refactor pthread_mutex to support 32-bit owner_tid on 64-bit devices." 2015-04-02 20:27:40 +00:00
Christopher Ferris
9d4c2337b0 am 5c0dc67b: am 618935d2: Merge "gtest_repeat should allow negative values."
* commit '5c0dc67be53100f64e678e4b19ae46ea287c75ea':
  gtest_repeat should allow negative values.
2015-04-02 20:02:35 +00:00
Christopher Ferris
5c0dc67be5 am 618935d2: Merge "gtest_repeat should allow negative values."
* commit '618935d2679e84cc839316c042ee3dde5f7d7097':
  gtest_repeat should allow negative values.
2015-04-02 19:42:49 +00:00
Christopher Ferris
618935d267 Merge "gtest_repeat should allow negative values." 2015-04-02 19:19:38 +00:00
Christopher Ferris
119cb55d43 gtest_repeat should allow negative values.
If you pass in a negative value to gtest_repeat, it should run forever.
The new runner didn't allow this, now it does.

Change-Id: Ie0002c12e2fdad22b264adca37c165cfcfe05c7a
2015-04-02 12:16:00 -07:00
Elliott Hughes
b0cf9288cd Remove _memset16 and _memset32 from mips/mips64 bionic.
These should be in libcutils instead.

Change-Id: Ibbc94755e6da61bf9ce2c8f9a047a082bb9bce24
2015-04-02 10:34:58 -07:00
Nick Kralevich
c68d6bcd8e am 3b84e4bc: am 3cc3f17a: Merge "linker: never mark pages simultaneously writable / executable"
* commit '3b84e4bcd020cb917067fa87e4a60a62c5c42928':
  linker: never mark pages simultaneously writable / executable
2015-04-02 14:21:58 +00:00
Nick Kralevich
3b84e4bcd0 am 3cc3f17a: Merge "linker: never mark pages simultaneously writable / executable"
* commit '3cc3f17aa4b241da7303299032e4269fcf92a4e6':
  linker: never mark pages simultaneously writable / executable
2015-04-02 13:59:26 +00:00
Nick Kralevich
3cc3f17aa4 Merge "linker: never mark pages simultaneously writable / executable" 2015-04-02 13:29:50 +00:00
Yabin Cui
e69c24543d Refactor pthread_mutex to support 32-bit owner_tid on 64-bit devices.
Bug: 19216648
Change-Id: I765ecacc9036659c766f5d1f6600e1a65364199b
2015-04-01 21:12:22 -07:00
Dan Albert
5856150605 am 004d0048: am ab7c79e2: Merge "Don\'t export new/delete from libc shared libraries."
* commit '004d004868613b9ad00453661838e0f372958dba':
  Don't export new/delete from libc shared libraries.
2015-04-02 02:59:52 +00:00
Dimitry Ivanov
84f634469b am b3c17a19: am 202af3a2: Merge "Revert "Remove text-relocation support for lp32""
* commit 'b3c17a196222cc09af98f095a0863fc048309fa7':
  Revert "Remove text-relocation support for lp32"
2015-04-02 01:38:57 +00:00
Dan Albert
004d004868 am ab7c79e2: Merge "Don\'t export new/delete from libc shared libraries."
* commit 'ab7c79e22e5495a2aa171047a044ce1037e461a9':
  Don't export new/delete from libc shared libraries.
2015-04-02 01:13:18 +00:00
Nick Kralevich
8fdb3419a5 linker: never mark pages simultaneously writable / executable
When the Android dynamic linker handles a text relocation,
it first relaxes the permissions on the segment being modified,
performs the modifications, and then restores the page permissions.
The relaxation worked by adding PROT_WRITE to whatever protection
bits were set in the section. In effect, the pages were getting set
to PROT_READ|PROT_WRITE|PROT_EXEC, modified, then restored to
PROT_READ|PROT_EXEC

The SELinux kernel code differentiates between 4 different kinds
of executable memory:
* Executable stack (execstack)
* Executable heap (execheap)
* File-based executable code which has been modified (execmod)
* All other executable memory (execmem)

The execmod capability is only triggered by the kernel when a
dirty but non-executable mmap()ed page becomes executable. When that
occurs, an SELinux policy check is done to see if the execmod capability
is provided by policy.

However, if the page is already executable, and PROT_WRITE is added
to the page, it's considered an execmem permission check, not an execmod
permission check.

There are certain circumstances where we may want to distinguish between
execmod and execmem. This change adjusts the dynamic linker to avoid
using RWX pages, so that an RX -> RW -> RX transition will properly
be detected as an execmod permission check instead of an execmem permission
check.

Bug: 20013628
Change-Id: I14d7be29170b156942f9809023f3b2fc1f37846c
2015-04-01 18:05:19 -07:00
Dan Albert
ab7c79e22e Merge "Don't export new/delete from libc shared libraries." 2015-04-01 23:33:53 +00:00
Dan Albert
d6bf3d5e19 Don't export new/delete from libc shared libraries.
This used to be handled by -fvisibility=hidden on libc_cxa, but that
was broken by the resolution of https://llvm.org/PR22419 (introduced
to Android in today's clang update).

Now we just use a version script that prevents these from being
re-exported from our shared libraries.

Change-Id: Ib290e1d0d7426e09ad17a91178162fff6dbdcfa9
2015-04-01 16:31:57 -07:00
Elliott Hughes
08c16b17a1 am d4144fd7: am b023799a: Merge "Fix ftw tests when run as non-root."
* commit 'd4144fd700974911fc28e69174ec526d081ea902':
  Fix ftw tests when run as non-root.
2015-04-01 22:09:30 +00:00
Elliott Hughes
ee7ec71284 am a031e93d: am d227d57d: Merge "Update README.md for running tests on the host."
* commit 'a031e93df3578f46507ce0efa3a40a6a391fd81f':
  Update README.md for running tests on the host.
2015-04-01 22:09:26 +00:00
Dimitry Ivanov
b3c17a1962 am 202af3a2: Merge "Revert "Remove text-relocation support for lp32""
* commit '202af3a23cb23e2571011ea76367ff3e88dfd48e':
  Revert "Remove text-relocation support for lp32"
2015-04-01 21:44:47 +00:00
Dimitry Ivanov
202af3a23c Merge "Revert "Remove text-relocation support for lp32"" 2015-04-01 21:28:29 +00:00
Dimitry Ivanov
56be6ed9e4 Revert "Remove text-relocation support for lp32"
This reverts commit cb00add1b3.

Bug: 20020312
Bug: 20013628
Change-Id: I8baa3d4b6c7fef50c9e2531257d5b96762099eb3
2015-04-01 21:18:48 +00:00
Elliott Hughes
d4144fd700 am b023799a: Merge "Fix ftw tests when run as non-root."
* commit 'b023799a6027924aad13b0f91c0b5b7f1b9cfe2d':
  Fix ftw tests when run as non-root.
2015-04-01 19:48:51 +00:00
Elliott Hughes
a031e93df3 am d227d57d: Merge "Update README.md for running tests on the host."
* commit 'd227d57d50f7a5251dbbfa3f2b41d3fe882851fa':
  Update README.md for running tests on the host.
2015-04-01 19:37:45 +00:00
Elliott Hughes
b023799a60 Merge "Fix ftw tests when run as non-root." 2015-04-01 19:32:15 +00:00
Elliott Hughes
0ad256c1b2 Fix ftw tests when run as non-root.
Root can create subdirectories inside non-writable directories, but
other users can't.

Change-Id: I102fe610d1bd2733aebf184b544e58612465287d
2015-04-01 12:22:40 -07:00
Elliott Hughes
d227d57d50 Merge "Update README.md for running tests on the host." 2015-04-01 19:20:09 +00:00
Elliott Hughes
d3d018b2b4 Update README.md for running tests on the host.
Change-Id: Ib360d91bffd269e7acdb20ad33a7bd85345a1475
2015-04-01 12:16:56 -07:00
Dmitriy Ivanov
fd5f718d6e am b3f8daab: am 61a35fa4: Merge "Remove text-relocation support for lp32"
* commit 'b3f8daab591fef3eabb8f9151334bb4a5c6eafda':
  Remove text-relocation support for lp32
2015-04-01 02:32:07 +00:00
Mark Salyzyn
80416cca09 am 64226a48: am 8f41142c: Merge "stubs missing include for string.h"
* commit '64226a48a1e9b25bb6985c9c14097d400039be35':
  stubs missing include for string.h
2015-04-01 02:32:05 +00:00
Elliott Hughes
1fe8a49ed4 am c325dfdd: am 72035734: Merge "Make ThreadLocalBuffer a class rather than a macro."
* commit 'c325dfdd8e44d4124e7122b1435ba66287ef6e08':
  Make ThreadLocalBuffer a class rather than a macro.
2015-04-01 02:32:03 +00:00
Christopher Ferris
0ddef60c42 am 8f604eb4: am 89a4a541: Merge "Upgrade kernel headers to 3.18.10."
* commit '8f604eb4097ae6e0ac89981fe2ff85a9c22d3a4c':
  Upgrade kernel headers to 3.18.10.
2015-04-01 02:32:01 +00:00
Dmitriy Ivanov
b3f8daab59 am 61a35fa4: Merge "Remove text-relocation support for lp32"
* commit '61a35fa40c898dc08c28c9da8b174ba5d5614579':
  Remove text-relocation support for lp32
2015-04-01 01:51:51 +00:00
Mark Salyzyn
64226a48a1 am 8f41142c: Merge "stubs missing include for string.h"
* commit '8f41142cd631bdd8bf02dcfbb599e5edbfcbd67e':
  stubs missing include for string.h
2015-04-01 01:40:57 +00:00
Elliott Hughes
c325dfdd8e am 72035734: Merge "Make ThreadLocalBuffer a class rather than a macro."
* commit '72035734af2d8558a3ccd7e29626216e20aed6f2':
  Make ThreadLocalBuffer a class rather than a macro.
2015-04-01 01:40:56 +00:00
Dmitriy Ivanov
61a35fa40c Merge "Remove text-relocation support for lp32" 2015-04-01 01:37:46 +00:00
Christopher Ferris
8f604eb409 am 89a4a541: Merge "Upgrade kernel headers to 3.18.10."
* commit '89a4a54104d566bbfd226ed1e3abcf047b871690':
  Upgrade kernel headers to 3.18.10.
2015-04-01 01:32:54 +00:00
Mark Salyzyn
8f41142cd6 Merge "stubs missing include for string.h" 2015-04-01 00:55:19 +00:00
Elliott Hughes
72035734af Merge "Make ThreadLocalBuffer a class rather than a macro." 2015-04-01 00:51:57 +00:00
Dmitriy Ivanov
cb00add1b3 Remove text-relocation support for lp32
Bug: 20013628
Change-Id: Idaf8012f00ee1304d429c3b42f9ebc6b648c55b8
2015-03-31 17:42:45 -07:00
Mark Salyzyn
56b2768176 stubs missing include for string.h
stubs.cpp gets string.h inherited from private/android_filesystem_config.h
it should not rely on this in the future. The intent is to move fs_config
function into libcutils and thus deprecate any need for string.h in this
include file.

Change-Id: I946ec1979ef5bbb34fbcb4a99bf2cd79280bb2a3
2015-03-31 16:58:35 -07:00
Dmitriy Ivanov
41b70f5374 am d7d6d13b: am 52a0f014: Merge "Fix long lines and replace macros with functions."
* commit 'd7d6d13be8565a7d2fb43ecc8c60b0d627bb9dc1':
  Fix long lines and replace macros with functions.
2015-03-31 23:01:04 +00:00
Christopher Ferris
89a4a54104 Merge "Upgrade kernel headers to 3.18.10." 2015-03-31 22:37:05 +00:00
Christopher Ferris
e01d32f802 Upgrade kernel headers to 3.18.10.
Change-Id: Iff1f1c830780585990856a5114b559c61282dcd6
2015-03-31 14:57:48 -07:00
Dmitriy Ivanov
d7d6d13be8 am 52a0f014: Merge "Fix long lines and replace macros with functions."
* commit '52a0f01421fde3cd4f879b491a9f491d792fa2d5':
  Fix long lines and replace macros with functions.
2015-03-31 20:28:51 +00:00
Dmitriy Ivanov
52a0f01421 Merge "Fix long lines and replace macros with functions." 2015-03-31 20:19:53 +00:00
Dmitriy Ivanov
20d89cb5b0 Fix long lines and replace macros with functions.
Change-Id: I4e1cab488d5b2c8e4289da617350a86e72a4ba12
2015-03-31 11:49:25 -07:00
Elliott Hughes
6170693e28 Make ThreadLocalBuffer a class rather than a macro.
Bug: 19995392
Change-Id: I497c512648fbe66257da3fb3bcd5c9911f983705
2015-03-31 10:56:58 -07:00
Yabin Cui
934eca1cb4 am e58918f7: am 611fd2cc: Merge "Revert "Revert "add guard pages to the internal signal stacks"""
* commit 'e58918f73aec07d0d3e857718f90e6282ce0056b':
  Revert "Revert "add guard pages to the internal signal stacks""
2015-03-31 04:49:32 +00:00
Yabin Cui
e58918f73a am 611fd2cc: Merge "Revert "Revert "add guard pages to the internal signal stacks"""
* commit '611fd2cc91f79be6759f6e630e1e81998326dfe8':
  Revert "Revert "add guard pages to the internal signal stacks""
2015-03-31 04:36:45 +00:00
Yabin Cui
611fd2cc91 Merge "Revert "Revert "add guard pages to the internal signal stacks""" 2015-03-31 04:24:08 +00:00
Yabin Cui
ef11500301 Revert "Revert "add guard pages to the internal signal stacks""
This reverts commit a3125fd139.
And Fix the prctl() problem that cause system crash.

Change-Id: Icc8d12d848cfba881a7984ca2827fd81be41f9fd
2015-03-30 20:51:39 -07:00
Elliott Hughes
558f6b0177 am 85f42bd3: am 8225ad63: Merge "Revert "add guard pages to the internal signal stacks""
* commit '85f42bd31b55b83df7503480673a1d3112e50291':
  Revert "add guard pages to the internal signal stacks"
2015-03-31 03:07:18 +00:00
Elliott Hughes
832253b966 am 0c2b7a72: am 2746b928: Merge "Revert "Fix clang build breakage ("arithmetic on a pointer to void").""
* commit '0c2b7a72af0c64d3d3cf33311be99a4f25e01a29':
  Revert "Fix clang build breakage ("arithmetic on a pointer to void")."
2015-03-31 03:07:16 +00:00
Elliott Hughes
85f42bd31b am 8225ad63: Merge "Revert "add guard pages to the internal signal stacks""
* commit '8225ad63fac7c5cc298884c101a344959b87dc39':
  Revert "add guard pages to the internal signal stacks"
2015-03-31 02:54:14 +00:00
Elliott Hughes
0c2b7a72af am 2746b928: Merge "Revert "Fix clang build breakage ("arithmetic on a pointer to void").""
* commit '2746b9289abc0fd5e38b94fc96d101e5e242d9f2':
  Revert "Fix clang build breakage ("arithmetic on a pointer to void")."
2015-03-31 02:54:11 +00:00
Elliott Hughes
8225ad63fa Merge "Revert "add guard pages to the internal signal stacks"" 2015-03-31 02:42:51 +00:00
Elliott Hughes
a3125fd139 Revert "add guard pages to the internal signal stacks"
This reverts commit 595752f623.

Change-Id: Iefa66e9049ca0424e53cd5fc320d161b93556dcb
2015-03-31 02:42:39 +00:00
Elliott Hughes
2746b9289a Merge "Revert "Fix clang build breakage ("arithmetic on a pointer to void")."" 2015-03-31 02:41:33 +00:00
Elliott Hughes
3925f32ffb Revert "Fix clang build breakage ("arithmetic on a pointer to void")."
This reverts commit 16c7721279.

Change-Id: I568dee5400599693b1585ce6d4be7a0b5f37dc74
2015-03-31 02:41:20 +00:00
Elliott Hughes
a134eda3fa am aa23e36c: am 2d84d870: Merge "Fix clang build breakage ("arithmetic on a pointer to void")."
* commit 'aa23e36ceef86f8a73d4c100c8e5a126253c5ff5':
  Fix clang build breakage ("arithmetic on a pointer to void").
2015-03-30 23:14:42 +00:00
Elliott Hughes
ec5998271c am 935967bd: am 373748f4: Merge "add guard pages to the internal signal stacks"
* commit '935967bde1b03fb53e661d8e037819209dee97c9':
  add guard pages to the internal signal stacks
2015-03-30 21:46:07 +00:00
Elliott Hughes
aa23e36cee am 2d84d870: Merge "Fix clang build breakage ("arithmetic on a pointer to void")."
* commit '2d84d870db0e6db54cf09441434bf2f5b28c6492':
  Fix clang build breakage ("arithmetic on a pointer to void").
2015-03-30 21:45:37 +00:00
Elliott Hughes
935967bde1 am 373748f4: Merge "add guard pages to the internal signal stacks"
* commit '373748f4c66bb37e564716590e7b4fc8a64e0884':
  add guard pages to the internal signal stacks
2015-03-30 21:35:56 +00:00
Elliott Hughes
2d84d870db Merge "Fix clang build breakage ("arithmetic on a pointer to void")." 2015-03-30 21:34:07 +00:00
Elliott Hughes
16c7721279 Fix clang build breakage ("arithmetic on a pointer to void").
Change-Id: Ia0953fc1cd0f8ea2d4423b3c6e34f6dc7a9f31e9
2015-03-30 14:33:02 -07:00
Elliott Hughes
373748f4c6 Merge "add guard pages to the internal signal stacks" 2015-03-30 21:24:36 +00:00
Daniel Micay
595752f623 add guard pages to the internal signal stacks
Signal handlers tend to be lean, but can still overflow the (tiny)
stack.

Change-Id: Ia21c6453d92a9f8d1536ad01ff26a1a84c05f8fb
2015-03-30 17:13:20 -04:00
Nick Kralevich
e9311f0b7c am c9397b74: am 203082b8: Merge "linker_environ: clear MALLOC_CONF when AT_SECURE=1"
* commit 'c9397b74a96764a434f2206c4fb8471f382966e3':
  linker_environ: clear MALLOC_CONF when AT_SECURE=1
2015-03-27 23:43:40 +00:00
Dmitriy Ivanov
f57a0367f7 am 267422ac: am 5c136382: Merge "Fix libstdc++.so hash-style."
* commit '267422ac858ae8cb38c655e4ac7b5f755d02881f':
  Fix libstdc++.so hash-style.
2015-03-27 23:43:39 +00:00
Nick Kralevich
c9397b74a9 am 203082b8: Merge "linker_environ: clear MALLOC_CONF when AT_SECURE=1"
* commit '203082b8217cd853eee510ad371b382701960610':
  linker_environ: clear MALLOC_CONF when AT_SECURE=1
2015-03-27 23:22:04 +00:00
Dmitriy Ivanov
267422ac85 am 5c136382: Merge "Fix libstdc++.so hash-style."
* commit '5c136382a6f1ad796a60463898d4c08fadead669':
  Fix libstdc++.so hash-style.
2015-03-27 23:22:02 +00:00
Dmitriy Ivanov
5f1a2f44ea am 85ca90c7: am cd79a59b: Merge "Add test for thread_local keyword."
* commit '85ca90c72e9ca2605640cc94ae1ce45cae02e9e4':
  Add test for thread_local keyword.
2015-03-27 23:21:55 +00:00
Nick Kralevich
203082b821 Merge "linker_environ: clear MALLOC_CONF when AT_SECURE=1" 2015-03-27 22:55:20 +00:00
Nick Kralevich
e001ca3e18 linker_environ: clear MALLOC_CONF when AT_SECURE=1
Clear JE_MALLOC_CONF and MALLOC_CONF

Change-Id: Ia76e263783194ecaa362e8ccafbe13a28a4a1ba6
2015-03-27 15:49:33 -07:00
Dmitriy Ivanov
5c136382a6 Merge "Fix libstdc++.so hash-style." 2015-03-27 22:46:52 +00:00
Dmitriy Ivanov
402d199450 Fix libstdc++.so hash-style.
Bug: 19059885
Bug: 19958712
Change-Id: I167457a54cc688d64912a50f5fb75e4e2f3e3937
2015-03-27 15:27:07 -07:00
Dmitriy Ivanov
85ca90c72e am cd79a59b: Merge "Add test for thread_local keyword."
* commit 'cd79a59b18f8e81b5f37258f376a726dc8acb81a':
  Add test for thread_local keyword.
2015-03-27 21:41:56 +00:00
Dmitriy Ivanov
cd79a59b18 Merge "Add test for thread_local keyword." 2015-03-27 20:07:35 +00:00
Dmitriy Ivanov
947adedebc Add test for thread_local keyword.
For gcc only for the time being.

Bug: 19800080
Bug: 16696563
Change-Id: Ifaa59a131ca2d9030554cee7ce631dcb1d081938
2015-03-27 12:05:36 -07:00
Dmitriy Ivanov
708d0423d9 am 09ffd5b8: am cfd794a9: Merge "Explain why we need objcopy for the linker"
* commit '09ffd5b8d560106759be8fe2b34e5e6e58e27ca5':
  Explain why we need objcopy for the linker
2015-03-27 00:15:01 +00:00
Dmitriy Ivanov
09ffd5b8d5 am cfd794a9: Merge "Explain why we need objcopy for the linker"
* commit 'cfd794a96d0c4f1d97e54b701b408dafdb514d17':
  Explain why we need objcopy for the linker
2015-03-27 00:01:30 +00:00
Dmitriy Ivanov
cfd794a96d Merge "Explain why we need objcopy for the linker" 2015-03-26 23:49:23 +00:00
Dmitriy Ivanov
797bffb760 Explain why we need objcopy for the linker
Change-Id: I646673abc6095b56f72add493b60925375b75b78
2015-03-26 16:47:18 -07:00
Yabin Cui
d6eb84ea2c am 71fe7f4a: am 8f3eb5a4: Merge "Revert "Cause Fatal error when invalid pthread_id is detected.""
* commit '71fe7f4ad7499bb225ec05330288f6bee2dc0ab0':
  Revert "Cause Fatal error when invalid pthread_id is detected."
2015-03-26 19:23:15 +00:00
Simon Baldwin
988d91d384 am 59409c68: am 7c01e3a9: Merge "Fix comment drift in assorted relocation packer modules."
* commit '59409c68ebdc8cdcb3b3ff9f4a5bdee9570c67d0':
  Fix comment drift in assorted relocation packer modules.
2015-03-26 18:29:21 +00:00
Yabin Cui
71fe7f4ad7 am 8f3eb5a4: Merge "Revert "Cause Fatal error when invalid pthread_id is detected.""
* commit '8f3eb5a4e5dbbac1fb431e40e25eec07ecc24ee8':
  Revert "Cause Fatal error when invalid pthread_id is detected."
2015-03-26 18:27:10 +00:00
Dmitriy Ivanov
9dfe17cc7c am 73f4a8b6: am f2d153f8: Merge "Initial implementation of __cxa_thread_atexit_impl"
* commit '73f4a8b616b9a51fcce2b46da526620aa04ae9f4':
  Initial implementation of __cxa_thread_atexit_impl
2015-03-26 18:23:07 +00:00
Simon Baldwin
59409c68eb am 7c01e3a9: Merge "Fix comment drift in assorted relocation packer modules."
* commit '7c01e3a9ba80c85c7e7998d2347885e9a6e3bbf2':
  Fix comment drift in assorted relocation packer modules.
2015-03-26 18:16:10 +00:00
Yabin Cui
8f3eb5a4e5 Merge "Revert "Cause Fatal error when invalid pthread_id is detected."" 2015-03-26 18:14:23 +00:00
Yabin Cui
220b99bdc1 Revert "Cause Fatal error when invalid pthread_id is detected."
Some code like in https://buganizer.corp.google.com/u/0/issues/19942911 need to change first.

This reverts commit 03324780aa.

Change-Id: I13ff1e5b3d0672bae9cde234ffba32fbbf33d338
2015-03-26 18:13:07 +00:00
Dmitriy Ivanov
73f4a8b616 am f2d153f8: Merge "Initial implementation of __cxa_thread_atexit_impl"
* commit 'f2d153f836e529892854b91452fabd2c2fa79c05':
  Initial implementation of __cxa_thread_atexit_impl
2015-03-26 18:08:37 +00:00
Simon Baldwin
7c01e3a9ba Merge "Fix comment drift in assorted relocation packer modules." 2015-03-26 18:01:13 +00:00
Dmitriy Ivanov
f2d153f836 Merge "Initial implementation of __cxa_thread_atexit_impl" 2015-03-26 17:50:23 +00:00
Simon Baldwin
32123dac5f am 20003502: am 7f8d91ea: Merge "Remove unused/unusable relocation packer files."
* commit '20003502df967d15e194bd032f0ccf14f6b71e3f':
  Remove unused/unusable relocation packer files.
2015-03-26 17:46:05 +00:00
Simon Baldwin
569a752689 Fix comment drift in assorted relocation packer modules.
Some of the commentary in relocation packer code is relevant
only to the packing strategy employed by chromium, and no
longer applies here.  This change fixes or deletes it.

Code comment change only; no functional effect.

Change-Id: Id229ee1d802bba608be15b79bc75bf90df557dab
Signed-off-by: Simon Baldwin <simonb@google.com>
2015-03-26 17:13:19 +00:00
Simon Baldwin
20003502df am 7f8d91ea: Merge "Remove unused/unusable relocation packer files."
* commit '7f8d91ea8e24e89db39ae868085913e763e04557':
  Remove unused/unusable relocation packer files.
2015-03-26 16:55:09 +00:00
Simon Baldwin
7f8d91ea8e Merge "Remove unused/unusable relocation packer files." 2015-03-26 16:41:02 +00:00
Yabin Cui
c1033489bf am efe1aff0: am b9232c94: Merge "Remove PTHREAD_RECURSIVE_MUTEX_INITIALIZER and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER."
* commit 'efe1aff09daef1b1cbe9d9f37c0922f596f01977':
  Remove PTHREAD_RECURSIVE_MUTEX_INITIALIZER and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER.
2015-03-26 16:27:34 +00:00
Yabin Cui
efe1aff09d am b9232c94: Merge "Remove PTHREAD_RECURSIVE_MUTEX_INITIALIZER and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER."
* commit 'b9232c94da831d485b3896580a3d1ac9abc46a4f':
  Remove PTHREAD_RECURSIVE_MUTEX_INITIALIZER and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER.
2015-03-26 04:36:16 +00:00
Yabin Cui
03717a8adf am 6f9a3522: am 69847bc2: Merge "Hide internal of pthread_mutex_t."
* commit '6f9a35222bccc19dbd66a8a25a0f53b8e53603d9':
  Hide internal of pthread_mutex_t.
2015-03-26 04:28:52 +00:00
Yabin Cui
8cb44aa974 am 0682e44f: am fa3dcecc: Merge "Fix in error handling in pthread_create.cpp."
* commit '0682e44f7c2b961e8e36016829ea4cdca3e0fbe1':
  Fix in error handling in pthread_create.cpp.
2015-03-26 04:28:51 +00:00
Yabin Cui
b9232c94da Merge "Remove PTHREAD_RECURSIVE_MUTEX_INITIALIZER and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER." 2015-03-26 04:21:15 +00:00
Yabin Cui
6f9a35222b am 69847bc2: Merge "Hide internal of pthread_mutex_t."
* commit '69847bc298de62917663d22b6733ef75b57124fa':
  Hide internal of pthread_mutex_t.
2015-03-26 04:19:40 +00:00
Yabin Cui
0682e44f7c am fa3dcecc: Merge "Fix in error handling in pthread_create.cpp."
* commit 'fa3dcecc0fd7bbbf04234e41be690a5d33277870':
  Fix in error handling in pthread_create.cpp.
2015-03-26 04:19:39 +00:00
Yabin Cui
377243b78c Remove PTHREAD_RECURSIVE_MUTEX_INITIALIZER and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER.
These macros are also not used in glibc. And we should use
PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
and PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP instead.

Change-Id: I35195e2f499712dcde9305bbb93622d0f7ca874b
2015-03-25 21:02:36 -07:00
Yabin Cui
69847bc298 Merge "Hide internal of pthread_mutex_t." 2015-03-26 02:10:07 +00:00
Dmitriy Ivanov
df79c330d8 Initial implementation of __cxa_thread_atexit_impl
This is initial implementations; does not yet handle
  dlclose - undefined behavior, needs linker support to
  handle it right.

Bug: 19800080
Bug: 16696563
Change-Id: I7a3e21ed7f7ec01e62ea1b7cb2ab253590ea0686
2015-03-25 18:07:59 -07:00
Yabin Cui
17393b06ba Hide internal of pthread_mutex_t.
Bug: 19249079
Change-Id: Iffb79c8d861b698d474f212dc80c638fc2cf1620
2015-03-25 17:54:17 -07:00
Yabin Cui
fa3dcecc0f Merge "Fix in error handling in pthread_create.cpp." 2015-03-26 00:26:59 +00:00
Yabin Cui
55139f17fd am 3ae2774a: am 36d5b6f4: Merge "Cause Fatal error when invalid pthread_id is detected."
* commit '3ae2774aa0b05e0c80d7e0820a33325795c23df2':
  Cause Fatal error when invalid pthread_id is detected.
2015-03-25 23:41:19 +00:00
Yabin Cui
799cb35f45 Fix in error handling in pthread_create.cpp.
It is due to a previous change "Let g_thread_list_lock only protect g_thread_list".
We need to add the newly created thread to thread_list even if
__init_thread fails, so the thread can exit successfully.

Change-Id: I0332df11acfdd181350bcc092b12d90d679057a4
2015-03-25 16:18:21 -07:00
Yabin Cui
3ae2774aa0 am 36d5b6f4: Merge "Cause Fatal error when invalid pthread_id is detected."
* commit '36d5b6f47dd14fd9733d935174d2b8e0deb979c6':
  Cause Fatal error when invalid pthread_id is detected.
2015-03-25 23:04:27 +00:00
Yabin Cui
36d5b6f47d Merge "Cause Fatal error when invalid pthread_id is detected." 2015-03-25 22:53:50 +00:00
Yabin Cui
03324780aa Cause Fatal error when invalid pthread_id is detected.
This is a patch testing whether we can use abort() instead of
returning ESRCH for invalid pthread ids. It is an intermediate
step to remove g_thread_list/g_thread_list_lock.

Bug: 19636317
Change-Id: Idd8e4a346c7ce91e1be0c2ebcb78ce51c0d0a31d
2015-03-25 15:30:39 -07:00
Yabin Cui
6c06d5d4d5 am 2d55dd58: am 0c3b632b: Merge "Add O_APPEND flag for __libc_write_stderr."
* commit '2d55dd58bdbb37e108d22352a7905f6257822ce6':
  Add O_APPEND flag for __libc_write_stderr.
2015-03-25 22:05:51 +00:00
Christopher Ferris
2f7c0b71dd am d35c24e7: am f6364486: Merge "Use ALIAS_SYMBOL for assembler aliasing."
* commit 'd35c24e795216f3a4f5d309d616ed766e0d73086':
  Use ALIAS_SYMBOL for assembler aliasing.
2015-03-25 21:07:52 +00:00
Yabin Cui
2d55dd58bd am 0c3b632b: Merge "Add O_APPEND flag for __libc_write_stderr."
* commit '0c3b632bd6570064bab1055d2b8a51cfb85e60bb':
  Add O_APPEND flag for __libc_write_stderr.
2015-03-25 20:28:51 +00:00
Yabin Cui
0c3b632bd6 Merge "Add O_APPEND flag for __libc_write_stderr." 2015-03-25 20:17:34 +00:00
Yabin Cui
28e69f7508 Add O_APPEND flag for __libc_write_stderr.
For DeathTests, we are testing the output of stderr to check if it is the
death we are expecting. To collect the output, Gtest redirects stderr to
a temporary file. But in __libc_write_stderr in libc_logging.cpp, we are
writing to stderr without a O_APPEND flag, so a new message will overwrite
a previous message.
The above situation makes almost all the DeathTests fail on host. Because
the expected message are always overwritten in host DeathTests. So I add
O_APPEND flag in __libc_write_stderr, which makes all host DeathTests pass.

Change-Id: Ic2f6044fdb181eebe132a6f170b57db43c5c3289
2015-03-25 13:01:23 -07:00
Christopher Ferris
d35c24e795 am f6364486: Merge "Use ALIAS_SYMBOL for assembler aliasing."
* commit 'f6364486fb0fcd2891094a871041a3dc6c2334f8':
  Use ALIAS_SYMBOL for assembler aliasing.
2015-03-25 18:59:06 +00:00
Christopher Ferris
f6364486fb Merge "Use ALIAS_SYMBOL for assembler aliasing." 2015-03-25 17:52:50 +00:00
Simon Baldwin
d2bd5739ed Remove unused/unusable relocation packer files.
Removes:
- src/run_length_encoder.h
    artifact of the original packing tool, not used here
- test_data/generate_elf_file_unittest_relocs.sh
- test_data/generate_elf_file_unittest_relocs.py
    test data generation for chromium/gyp, not usable here
- README.TXT
    because it is now almost entirely outdated

Change-Id: Ic4cd372647d9a365dc52833a6cc1cf66f0c95ec9
2015-03-25 16:23:01 +00:00
Christopher Ferris
24958514b9 Use ALIAS_SYMBOL for assembler aliasing.
Change-Id: I8d04d2da0a1ac440cc9044fc819c9a8eda5ff17d
2015-03-25 09:12:00 -07:00
Neil Fuller
1f95ffecc2 Changes to re-enable overrides for tz data
Bug: 10637303
Change-Id: I5d525b66cf30d34b421803b876445596bed8d64d
2015-03-25 16:08:37 +00:00
Christopher Ferris
7a47d7c12c am 44a6dcc2: am f5e0ba94: Merge "Make gensyscalls.py use the ALIAS_SYMBOL macro."
* commit '44a6dcc2a4a3d5bcdbd51fe385121600ad05657f':
  Make gensyscalls.py use the ALIAS_SYMBOL macro.
2015-03-25 04:43:39 +00:00
Christopher Ferris
44a6dcc2a4 am f5e0ba94: Merge "Make gensyscalls.py use the ALIAS_SYMBOL macro."
* commit 'f5e0ba94d911ef2622ecfd3f7fabc4432a4806d3':
  Make gensyscalls.py use the ALIAS_SYMBOL macro.
2015-03-25 04:31:15 +00:00
Christopher Ferris
f5e0ba94d9 Merge "Make gensyscalls.py use the ALIAS_SYMBOL macro." 2015-03-25 04:20:45 +00:00
Christopher Ferris
fa5faa0ce6 Make gensyscalls.py use the ALIAS_SYMBOL macro.
Change-Id: Ib94c0abb6fc85126ecc5ed3f1962b2b8b90b9952
2015-03-24 21:08:26 -07:00
Dmitriy Ivanov
30d10dba39 am 26bca5b1: am 70cafb16: Merge "Replace fixed arrays with vectors"
* commit '26bca5b14008e576838f9a8f4f617777e24615f0':
  Replace fixed arrays with vectors
2015-03-25 01:34:08 +00:00
Dmitriy Ivanov
26bca5b140 am 70cafb16: Merge "Replace fixed arrays with vectors"
* commit '70cafb16ec9ab23ad65542534af5a1ac7d6e70e4':
  Replace fixed arrays with vectors
2015-03-25 00:55:44 +00:00
Dmitriy Ivanov
70cafb16ec Merge "Replace fixed arrays with vectors" 2015-03-25 00:45:20 +00:00
Dmitriy Ivanov
d165f56fb6 Replace fixed arrays with vectors
This effectively removes limit on length and count
  of LD_LIBRARY_PATH and LD_PRELOAD entries.

Change-Id: Ie7ea34a50d99c4018f9dd1a33aaebc4049a7f424
2015-03-24 16:55:52 -07:00
Dan Albert
7080634340 am 4ca2cda2: am ee4997ec: Merge "Convert result of a call to JSON."
* commit '4ca2cda213c8dacacfd420c70de33862a52f8a67':
  Convert result of a call to JSON.
2015-03-24 22:09:39 +00:00
Dan Albert
4ca2cda213 am ee4997ec: Merge "Convert result of a call to JSON."
* commit 'ee4997ecc3daeb9af110d932ddb27f969cc7271a':
  Convert result of a call to JSON.
2015-03-24 21:41:56 +00:00
Dan Albert
ee4997ecc3 Merge "Convert result of a call to JSON." 2015-03-24 21:28:31 +00:00
Dan Albert
7d57623755 Convert result of a call to JSON.
I still had the service that was relying on this running on top of
local changes, so this hadn't been a problem yet.

Change-Id: I63b45b8c7cf81972dbb7128013c1c777a2342d4c
2015-03-24 11:43:55 -07:00
Yabin Cui
d1c2fad9cc am e39f3200: am 93d44ff2: Merge "Let g_thread_list_lock only protect g_thread_list."
* commit 'e39f3200a926d5bb18fbaec92eed5fc00dad9fb2':
  Let g_thread_list_lock only protect g_thread_list.
2015-03-24 03:25:46 +00:00
Dmitriy Ivanov
67a37cd1a3 am efaf8ff6: am 32b039e4: Merge "RTLD_LAZY is not supported, use RTLD_NOW instead."
* commit 'efaf8ff6e4553c22ee481e873edcccd9d4b36748':
  RTLD_LAZY is not supported, use RTLD_NOW instead.
2015-03-24 03:25:37 +00:00
Yabin Cui
6884bcd02a am ecf010ed: am f8246ac6: Merge "Add test for pthread types alignment check."
* commit 'ecf010ed4138f37d5916961f7aaf52270ba715ea':
  Add test for pthread types alignment check.
2015-03-24 03:25:20 +00:00
Dan Albert
3190c5128d am 7472b500: am 27b38599: Merge "Work around a bug in the Jenkins queue API."
* commit '7472b500a3545b603c56b3fb7f6f7075c3872b84':
  Work around a bug in the Jenkins queue API.
2015-03-24 02:58:59 +00:00
Yabin Cui
e39f3200a9 am 93d44ff2: Merge "Let g_thread_list_lock only protect g_thread_list."
* commit '93d44ff2a6e0febe18d42d5690e85023545318b4':
  Let g_thread_list_lock only protect g_thread_list.
2015-03-24 02:51:53 +00:00
Yabin Cui
93d44ff2a6 Merge "Let g_thread_list_lock only protect g_thread_list." 2015-03-24 02:39:51 +00:00
Yabin Cui
673b15e4ee Let g_thread_list_lock only protect g_thread_list.
As glibc/netbsd don't protect access to thread struct members by a global
lock, we don't want to do it either. This change reduces the
responsibility of g_thread_list_lock to only protect g_thread_list.

Bug: 19636317
Change-Id: I897890710653dac165d8fa4452c7ecf74abdbf2b
2015-03-23 19:03:49 -07:00
Dmitriy Ivanov
efaf8ff6e4 am 32b039e4: Merge "RTLD_LAZY is not supported, use RTLD_NOW instead."
* commit '32b039e46eee4d40b9979eab873a957e86fbf969':
  RTLD_LAZY is not supported, use RTLD_NOW instead.
2015-03-24 01:00:49 +00:00
Dmitriy Ivanov
32b039e46e Merge "RTLD_LAZY is not supported, use RTLD_NOW instead." 2015-03-24 00:48:58 +00:00
Yabin Cui
ecf010ed41 am f8246ac6: Merge "Add test for pthread types alignment check."
* commit 'f8246ac65f1985e23023df12112a6ce47057a4dd':
  Add test for pthread types alignment check.
2015-03-23 23:28:49 +00:00
Yabin Cui
d1fe16f448 am adebbfc9: am 7f1e2068: Merge "Fix alignment error for pthread_internal_t/pthread stack."
* commit 'adebbfc994e56b53e0c8ae420373b6ee57a9d4d3':
  Fix alignment error for pthread_internal_t/pthread stack.
2015-03-23 23:24:18 +00:00
Yabin Cui
f8246ac65f Merge "Add test for pthread types alignment check." 2015-03-23 23:18:27 +00:00
Dmitriy Ivanov
84c10c2e79 RTLD_LAZY is not supported, use RTLD_NOW instead.
Change-Id: Ia08ed6416aef686435224b50b3e58955d09f04e2
2015-03-23 14:58:45 -07:00
Dan Albert
7472b500a3 am 27b38599: Merge "Work around a bug in the Jenkins queue API."
* commit '27b38599dc4b0b4941906d8da30022f516abf143':
  Work around a bug in the Jenkins queue API.
2015-03-23 20:44:52 +00:00
Dan Albert
27b38599dc Merge "Work around a bug in the Jenkins queue API." 2015-03-23 20:32:15 +00:00
Dan Albert
c889f13493 Work around a bug in the Jenkins queue API.
https://issues.jenkins-ci.org/browse/JENKINS-27256

1.601 broke the ability to get a build's URL before the build had
actually started. The bug is pseudo-fixed, but would require
installing a new plugin and fixing the python jenkinsapi plugin for
the time being to use /queuefix/ rather than /queue/.

Just avoiding logging a URL for now.

Change-Id: Ibf90e5887fc4532dac688082ad7729787897da11
2015-03-23 13:29:15 -07:00
Yabin Cui
adebbfc994 am 7f1e2068: Merge "Fix alignment error for pthread_internal_t/pthread stack."
* commit '7f1e206815032aa152e9f181e477ae2a3f128d67':
  Fix alignment error for pthread_internal_t/pthread stack.
2015-03-21 17:11:22 +00:00
Yabin Cui
b584572213 Add test for pthread types alignment check.
Bug: 19249079
Change-Id: I83c4f0d11ec5d82a346ae0057d02a92bb1d519e8
2015-03-20 17:42:09 -07:00
Yabin Cui
7f1e206815 Merge "Fix alignment error for pthread_internal_t/pthread stack." 2015-03-20 23:26:24 +00:00
Yabin Cui
a2db50d5d7 Fix alignment error for pthread_internal_t/pthread stack.
aligned attribute can only control compiler's behavior, but we
are manually allocating pthread_internal_t. So we need to make
sure of alignment manually.

Change-Id: Iea4c46eadf10dfd15dc955c5f41cf6063cfd8536
2015-03-20 14:41:52 -07:00
Dmitriy Ivanov
52d092b140 am e0423890: am 9bc8ce7c: Merge "Limit soinfo compatibility fields to arm32"
* commit 'e0423890778668403562f1f0afc6d3ebec4dc4fa':
  Limit soinfo compatibility fields to arm32
2015-03-20 04:23:44 +00:00
Dmitriy Ivanov
e042389077 am 9bc8ce7c: Merge "Limit soinfo compatibility fields to arm32"
* commit '9bc8ce7c6a8abc09e76b0f35064d881385861537':
  Limit soinfo compatibility fields to arm32
2015-03-20 04:18:23 +00:00
Dmitriy Ivanov
9bc8ce7c6a Merge "Limit soinfo compatibility fields to arm32" 2015-03-20 04:05:51 +00:00
Dmitriy Ivanov
e631f91a01 Limit soinfo compatibility fields to arm32
Change-Id: I3924cd68397c223c0d206295d587f9dd8ebdc086
2015-03-19 17:50:29 -07:00
Yabin Cui
23c719f940 am 2e7617f2: am 4149dc94: Merge "Return EINVAL when calling pthread_detach for joined thread."
* commit '2e7617f2a0a703ae8dd0ba1b090464279482f893':
  Return EINVAL when calling pthread_detach for joined thread.
2015-03-20 00:21:22 +00:00
Yabin Cui
2e7617f2a0 am 4149dc94: Merge "Return EINVAL when calling pthread_detach for joined thread."
* commit '4149dc944bbe3c5f1c14fc998106975e68bdd6bf':
  Return EINVAL when calling pthread_detach for joined thread.
2015-03-20 00:11:58 +00:00
Yabin Cui
4149dc944b Merge "Return EINVAL when calling pthread_detach for joined thread." 2015-03-20 00:00:30 +00:00
Yabin Cui
07d9fe9c16 am 09170b99: am 7875b506: Merge "Fix two errors in pthread_detach.cpp."
* commit '09170b9968ac1c778026777f76d000a2afdd7459':
  Fix two errors in pthread_detach.cpp.
2015-03-19 23:58:51 +00:00
Yabin Cui
09170b9968 am 7875b506: Merge "Fix two errors in pthread_detach.cpp."
* commit '7875b506edfb1fe593034eaf4bc9aa156179fbd2':
  Fix two errors in pthread_detach.cpp.
2015-03-19 23:53:04 +00:00
Yabin Cui
bbb0432a33 Return EINVAL when calling pthread_detach for joined thread.
Change-Id: I717015132187e087e0ad485284a13c8801e25e77
2015-03-19 16:48:19 -07:00
Yabin Cui
7875b506ed Merge "Fix two errors in pthread_detach.cpp." 2015-03-19 23:38:40 +00:00
Yabin Cui
aec2bb5ec6 Fix two errors in pthread_detach.cpp.
The errors are introduced in "Make pthread join_state not protected by g_thread_list_lock".

Bug: 19636317
Change-Id: I58ae9711da94bfbac809abfd81311eeb70301a4b
2015-03-19 23:35:23 +00:00
Dmitriy Ivanov
39b079d25e am cdc02185: am 2e495081: Merge "Move open from zip tests to dlext"
* commit 'cdc02185fe6254ddd68cb7a6c0938892b007f2a7':
  Move open from zip tests to dlext
2015-03-19 17:32:17 +00:00
Dmitriy Ivanov
cdc02185fe am 2e495081: Merge "Move open from zip tests to dlext"
* commit '2e49508187254903943b83df7bb241d5fb6a8593':
  Move open from zip tests to dlext
2015-03-19 17:19:32 +00:00
Dmitriy Ivanov
2e49508187 Merge "Move open from zip tests to dlext" 2015-03-19 17:06:16 +00:00
Dmitriy Ivanov
52393a5633 Move open from zip tests to dlext
To avoid building them for glibc.

 Also replace snprintf with std::string

Change-Id: I12e1d2e4ab46ff5af6c05453da67842e0d838fc5
2015-03-18 22:50:01 -07:00
Yabin Cui
2f251f146f am 436310c3: am 6943f296: Merge "Make __get_thread inlined."
* commit '436310c3d5835725afc498c23a788eab0cf7afc2':
  Make __get_thread inlined.
2015-03-19 03:11:21 +00:00
Yabin Cui
436310c3d5 am 6943f296: Merge "Make __get_thread inlined."
* commit '6943f2968cb6054f8874e30b309985b41a37e2e0':
  Make __get_thread inlined.
2015-03-19 03:03:21 +00:00
Dmitriy Ivanov
b9d1539fa8 am 16ac4ee7: am 6420fb46: Merge "Implement lookup by DT_SONAME"
* commit '16ac4ee7c468d11bb53265a16c7fd16bed3e2232':
  Implement lookup by DT_SONAME
2015-03-19 03:00:36 +00:00
Dmitriy Ivanov
16ac4ee7c4 am 6420fb46: Merge "Implement lookup by DT_SONAME"
* commit '6420fb467f52f7c27c921b1bf53dc95ad5851077':
  Implement lookup by DT_SONAME
2015-03-19 02:53:57 +00:00
Yabin Cui
6943f2968c Merge "Make __get_thread inlined." 2015-03-19 02:50:20 +00:00
Dmitriy Ivanov
6420fb467f Merge "Implement lookup by DT_SONAME" 2015-03-19 02:40:31 +00:00
Yabin Cui
2f836d4989 Make __get_thread inlined.
Bug: 19825434

Change-Id: Ifb672a45a5776b83625a25654ed0d6f7fc368ae3
2015-03-18 19:35:34 -07:00
Dmitriy Ivanov
618f1a36f8 Implement lookup by DT_SONAME
This CL also fixes SEARCH_NAME hack and resolves
  https://code.google.com/p/android/issues/detail?id=6670
  once and for all.

Bug: https://code.google.com/p/android/issues/detail?id=6670
Change-Id: I9b8d6a672cd722f30fbfbb40cdee8d9b39cfe56e
2015-03-18 18:14:30 -07:00
Elliott Hughes
b7e03b98f1 am 6cd7d024: am c6fbbb42: Merge "Hide statfs/fstatfs\' ST_VALID flag from userspace."
* commit '6cd7d02478588069c964ca6c783fa458a718abe7':
  Hide statfs/fstatfs' ST_VALID flag from userspace.
2015-03-18 23:51:15 +00:00
Dmitriy Ivanov
f5e1acef2c am 10d70143: am 0cf2657b: Merge "Fix library lookup for filenames with slash."
* commit '10d70143eac283bf5206d1b6e48170dbd83882c8':
  Fix library lookup for filenames with slash.
2015-03-18 23:50:18 +00:00
Elliott Hughes
6cd7d02478 am c6fbbb42: Merge "Hide statfs/fstatfs\' ST_VALID flag from userspace."
* commit 'c6fbbb42e69bef4f058d0cbfaaaf3cbf51f95694':
  Hide statfs/fstatfs' ST_VALID flag from userspace.
2015-03-18 23:22:56 +00:00
Elliott Hughes
c6fbbb42e6 Merge "Hide statfs/fstatfs' ST_VALID flag from userspace." 2015-03-18 23:11:52 +00:00
Elliott Hughes
fa495d51b0 Hide statfs/fstatfs' ST_VALID flag from userspace.
Spotted while debugging the strace 4.10 upgrade.

Change-Id: I1af1be9c9440151f55f74a835e1df71529b0e4fe
2015-03-18 15:46:48 -07:00
Dmitriy Ivanov
10d70143ea am 0cf2657b: Merge "Fix library lookup for filenames with slash."
* commit '0cf2657bc25242c097d42346d17eaae4107b1d55':
  Fix library lookup for filenames with slash.
2015-03-18 22:22:59 +00:00
Dmitriy Ivanov
0cf2657bc2 Merge "Fix library lookup for filenames with slash." 2015-03-18 22:09:07 +00:00
Dimitry Ivanov
feb41625b4 am 02f528f3: am c0eaa732: Merge "Support loading shared libraries from zip files"
* commit '02f528f3adeaf1227d178e426fca7482e85866af':
  Support loading shared libraries from zip files
2015-03-18 17:46:15 +00:00
Dimitry Ivanov
02f528f3ad am c0eaa732: Merge "Support loading shared libraries from zip files"
* commit 'c0eaa732844a8397d40a7ec82641f709e4b47a61':
  Support loading shared libraries from zip files
2015-03-18 17:37:58 +00:00
Dmitriy Ivanov
e44fffd7f9 Fix library lookup for filenames with slash.
If filename contains a slash, then it is interpreted
  as a (relative or absolute) pathname.

Bug: https://code.google.com/p/android/issues/detail?id=6670
Change-Id: Iba57d638301f3089ad47ba083edca2dd36b801ed
2015-03-18 10:32:11 -07:00
Dimitry Ivanov
c0eaa73284 Merge "Support loading shared libraries from zip files" 2015-03-18 17:25:33 +00:00
Elliott Hughes
bcd0f553b9 am 46950420: am ab12dc70: Merge "Fix _PATH_DEFPATH to correspond to the actual default path."
* commit '469504209489350a4cbf5a9018e74af367aa3acf':
  Fix _PATH_DEFPATH to correspond to the actual default path.
2015-03-18 10:58:19 +00:00
Elliott Hughes
d527e65906 am 45c4ef3c: am b380b7d7: Merge "set errno to ENOENT in getauxval per glibc 2.19"
* commit '45c4ef3cde5529bdaac41ad1f30ca3180361e060':
  set errno to ENOENT in getauxval per glibc 2.19
2015-03-18 10:58:18 +00:00
Elliott Hughes
4695042094 am ab12dc70: Merge "Fix _PATH_DEFPATH to correspond to the actual default path."
* commit 'ab12dc70f3ef551c490dcfede76033e57ceee64d':
  Fix _PATH_DEFPATH to correspond to the actual default path.
2015-03-18 01:24:59 +00:00
Elliott Hughes
45c4ef3cde am b380b7d7: Merge "set errno to ENOENT in getauxval per glibc 2.19"
* commit 'b380b7d78cf4dbd034f51fcf7fc8ebdb037330c3':
  set errno to ENOENT in getauxval per glibc 2.19
2015-03-18 01:18:01 +00:00
Elliott Hughes
ab12dc70f3 Merge "Fix _PATH_DEFPATH to correspond to the actual default path." 2015-03-18 01:15:04 +00:00
Elliott Hughes
b380b7d78c Merge "set errno to ENOENT in getauxval per glibc 2.19" 2015-03-18 01:05:24 +00:00
Elliott Hughes
1101962447 Fix _PATH_DEFPATH to correspond to the actual default path.
This is currently set in init.rc, but I plan on making init
set PATH to _PATH_DEFPATH and removing the line from init.rc...

Bug: 19564110
Change-Id: Ifa7226a3a5a90d141a788d7d6b1ae86245674218
2015-03-17 17:34:14 -07:00
Daniel Micay
ee7649c5ac set errno to ENOENT in getauxval per glibc 2.19
Bionic's getauxval(...) implementation returns zero when entries are
missing. Zero can be a valid value, so there is no unambiguous way of
detecting an error. Since glibc 2.19, errno is set to ENOENT when an
entry is missing to make it possible to detect this. Bionic should match
this behavior as code in the Linux ecosystem will start relying on it to
check for the presence of newly added entries.

Change-Id: Ic1efe29bc45fc87489274c96c4d2193f3a7b8854
Signed-off-by: Daniel Micay <danielmicay@gmail.com>
2015-03-17 19:50:55 -04:00
Yabin Cui
0ce026d9c4 am b1d1d0cc: am d917b20b: Merge "Change name of rwlock benchmark."
* commit 'b1d1d0cc5ba060a292907503e42a40dc158b156d':
  Change name of rwlock benchmark.
2015-03-17 21:40:53 +00:00
Yabin Cui
b1d1d0cc5b am d917b20b: Merge "Change name of rwlock benchmark."
* commit 'd917b20b613fd51e5f1056c8648fe8769ae8161e':
  Change name of rwlock benchmark.
2015-03-17 21:33:33 +00:00
Yabin Cui
d917b20b61 Merge "Change name of rwlock benchmark." 2015-03-17 21:20:52 +00:00
Yabin Cui
dc93db20a9 Change name of rwlock benchmark.
rw_lock is not easy for me to remember, so I prefer changing it to rwlock.

Change-Id: I0784acaca0c3b46c28184a77eb29ffe696f9ea07
2015-03-17 13:38:57 -07:00
Yabin Cui
a10afcc9cc am 46f9b3e7: am a75771e3: Merge "Fix build: pthread_mutex/pthread_detach."
* commit '46f9b3e7662d946d775d30dbe91828e4cb935af5':
  Fix build: pthread_mutex/pthread_detach.
2015-03-17 19:07:03 +00:00
Yabin Cui
48fc08e1e6 am f7dbefb0: am 94babaee: Merge "Make pthread join_state not protected by g_thread_list_lock."
* commit 'f7dbefb08f974a368d19b482997570e375f2bf84':
  Make pthread join_state not protected by g_thread_list_lock.
2015-03-17 19:06:48 +00:00
Yabin Cui
62059a07da am ca7ac7d3: am 5490bebd: Merge "Remove duplication in pthread_mutex.cpp."
* commit 'ca7ac7d36a3f7f31d65d1a4740f95f43de7ab1e4':
  Remove duplication in pthread_mutex.cpp.
2015-03-17 19:06:46 +00:00
Yabin Cui
46f9b3e766 am a75771e3: Merge "Fix build: pthread_mutex/pthread_detach."
* commit 'a75771e3ab429fae2f9af770416150733264a281':
  Fix build: pthread_mutex/pthread_detach.
2015-03-17 18:52:13 +00:00
Yabin Cui
a75771e3ab Merge "Fix build: pthread_mutex/pthread_detach." 2015-03-17 18:40:39 +00:00
Yabin Cui
ecbfb25c50 Fix build: pthread_mutex/pthread_detach.
Change-Id: I9c7b6297d3bf3ab8004d05d44cc4c95159315c9e
2015-03-17 11:37:51 -07:00
Yabin Cui
f7dbefb08f am 94babaee: Merge "Make pthread join_state not protected by g_thread_list_lock."
* commit '94babaee1b6598b15bd807461055d4dcaaa52f10':
  Make pthread join_state not protected by g_thread_list_lock.
2015-03-17 18:21:49 +00:00
Yabin Cui
ca7ac7d36a am 5490bebd: Merge "Remove duplication in pthread_mutex.cpp."
* commit '5490bebd7cdd4406780358f590391b75ab8a7d84':
  Remove duplication in pthread_mutex.cpp.
2015-03-17 18:21:48 +00:00
Yabin Cui
94babaee1b Merge "Make pthread join_state not protected by g_thread_list_lock." 2015-03-17 18:12:59 +00:00
Yabin Cui
5490bebd7c Merge "Remove duplication in pthread_mutex.cpp." 2015-03-17 18:12:32 +00:00
Dmitriy Ivanov
c331d67d1b am 72c6b79d: am 5f8ddf69: Merge "Fix build: align pthread_cond_t to sizeof(long)"
* commit '72c6b79ddb14bbf185cc3b59adf095ab65e77a06':
  Fix build: align pthread_cond_t to sizeof(long)
2015-03-17 14:30:04 +00:00
Simon Baldwin
aef719510a Support loading shared libraries from zip files
Add code to support loading shared libraries directly from within
APK files.

Extends the linker's handling of LD_LIBRARY_PATH, DT_RUNPATH, etc
to allow elements to be either directories as normal, or ZIP
format files.  For ZIP, the ZIP subdirectory string is separated
from the path to file by '!'.

For example, if DT_NEEDED is libchrome.so and Chrome.apk is the
Android ARM APK then the path element

  /system/app/Chrome.apk!lib/armeabi-v7a

would cause the linker to load lib/armeabi-v7a/libchrome.so
directly from inside Chrome.apk.  For loading to succeed,
libchrome.so must be 'stored' and not compressed in Chrome.apk,
and must be page aligned within the file.

Motivation:
  Chromium tracking issue:
  https://code.google.com/p/chromium/issues/detail?id=390618

Bug: 8076853
Change-Id: Ic49046600b1417eae3ee8f37ee98c8ac1ecc19e7
2015-03-16 17:50:50 -07:00
Dmitriy Ivanov
b3ac2145f4 Fix build: align pthread_cond_t to sizeof(long)
(cherry picked from commit b5cd3c7a75)

Change-Id: I69d8feeda2c8e0423c5626bcd40914e7eb9d85e4
2015-03-16 17:44:05 -07:00
Dmitriy Ivanov
72c6b79ddb am 5f8ddf69: Merge "Fix build: align pthread_cond_t to sizeof(long)"
* commit '5f8ddf69e59b13653d016e236599b95daf6501a8':
  Fix build: align pthread_cond_t to sizeof(long)
2015-03-17 00:25:06 +00:00
Dmitriy Ivanov
5f8ddf69e5 Merge "Fix build: align pthread_cond_t to sizeof(long)" 2015-03-17 00:10:49 +00:00
Dmitriy Ivanov
b5cd3c7a75 Fix build: align pthread_cond_t to sizeof(long)
Change-Id: Ieaee6d09089b161ec516ba22cafaee1ecb4342da
2015-03-16 17:06:59 -07:00
Christopher Ferris
28654c922d am 1ffc89e3: am f14fe856: Merge "Add alignment to opaque types."
* commit '1ffc89e301ae167ad5843ae570be0d779e37bec8':
  Add alignment to opaque types.
2015-03-16 23:51:31 +00:00
Christopher Ferris
1ffc89e301 am f14fe856: Merge "Add alignment to opaque types."
* commit 'f14fe856b40afc38540988b408edc508298ec116':
  Add alignment to opaque types.
2015-03-16 23:45:16 +00:00
Christopher Ferris
f14fe856b4 Merge "Add alignment to opaque types." 2015-03-16 23:33:38 +00:00
Christopher Ferris
eb8b122d67 Add alignment to opaque types.
If there is no alignment forced, then the compiler might put these
structures at any alignment.

Change-Id: I6416db72433504e0ec1178bfae6f5b18b6e363fb
2015-03-16 16:28:54 -07:00
Dmitriy Ivanov
c6cc6f6312 am 862b088a: am 3d170a6d: Merge "Remove obsolete test_isolated wrapper function"
* commit '862b088ac30881221500122955fc9e13933cbafd':
  Remove obsolete test_isolated wrapper function
2015-03-16 22:40:08 +00:00
Dmitriy Ivanov
1f5ede0a6e am bca13d41: am 3b7239fe: Merge "General purpose memory allocator for linker."
* commit 'bca13d417798ac3bab751d40da25cc4cfba76397':
  General purpose memory allocator for linker.
2015-03-16 22:40:06 +00:00
Yabin Cui
69929b34e7 am 19631034: am 0f3fcd12: Merge "Fix atomic_load on const variable in pthread_cond_t."
* commit '19631034a4e155f5e5ed061a2dcf30b377a8c04b':
  Fix atomic_load on const variable in pthread_cond_t.
2015-03-16 22:39:33 +00:00
Dan Albert
cc42165788 am f13f9ec1: am 169a84f9: Merge "Revert "Revert "Moving StringPrintf to libbase."""
* commit 'f13f9ec12eb10c94473da34fdd736e0c0ed439d1':
  Revert "Revert "Moving StringPrintf to libbase.""
2015-03-16 22:39:23 +00:00
Dmitriy Ivanov
862b088ac3 am 3d170a6d: Merge "Remove obsolete test_isolated wrapper function"
* commit '3d170a6d6c650cb81260ea9157d6f4df99e41e8c':
  Remove obsolete test_isolated wrapper function
2015-03-16 22:03:53 +00:00
Dmitriy Ivanov
bca13d4177 am 3b7239fe: Merge "General purpose memory allocator for linker."
* commit '3b7239feb9265f0b677e845dec0514583de9c6be':
  General purpose memory allocator for linker.
2015-03-16 22:03:52 +00:00
Yabin Cui
6b865a7a83 am 533bc4a0: am d3e2a207: Merge "Hide content of pthread_cond_t in pthread_cond_internal_t."
* commit '533bc4a09cebbecd1c871f0d8481e9449216f5f5':
  Hide content of pthread_cond_t in pthread_cond_internal_t.
2015-03-16 21:58:43 +00:00
Dmitriy Ivanov
970dd7d985 am a5bd2a10: am 9923c8cd: Merge "Fix typo"
* commit 'a5bd2a1039d545cbcb0fe187f76240ecaa84e45f':
  Fix typo
2015-03-16 21:58:33 +00:00
Dmitriy Ivanov
3d170a6d6c Merge "Remove obsolete test_isolated wrapper function" 2015-03-16 21:50:16 +00:00
Dmitriy Ivanov
3b7239feb9 Merge "General purpose memory allocator for linker." 2015-03-16 21:49:59 +00:00
Yabin Cui
19631034a4 am 0f3fcd12: Merge "Fix atomic_load on const variable in pthread_cond_t."
* commit '0f3fcd12ddde0e10fbeab0a98cf0efb9d64bea76':
  Fix atomic_load on const variable in pthread_cond_t.
2015-03-16 21:43:21 +00:00
Yabin Cui
0f3fcd12dd Merge "Fix atomic_load on const variable in pthread_cond_t." 2015-03-16 21:31:09 +00:00
Yabin Cui
9e6c7bc618 Fix atomic_load on const variable in pthread_cond_t.
Change-Id: I60f55a53294a09332a3fbec669ed793359d1bdf5
2015-03-16 14:26:53 -07:00
Dmitriy Ivanov
cb0443c0fa Remove obsolete test_isolated wrapper function
We already run all of our tests in isolated mode.

Change-Id: I8236baa302b1026a9b4a1c33a4aa65e223771bc7
2015-03-16 14:20:57 -07:00
Dan Albert
f13f9ec12e am 169a84f9: Merge "Revert "Revert "Moving StringPrintf to libbase."""
* commit '169a84f980d7a55c5f829cdd53a3eaba8f968442':
  Revert "Revert "Moving StringPrintf to libbase.""
2015-03-16 21:16:48 +00:00
Yabin Cui
533bc4a09c am d3e2a207: Merge "Hide content of pthread_cond_t in pthread_cond_internal_t."
* commit 'd3e2a207ffcaefedf2d3baaaad3d62be1abdb33c':
  Hide content of pthread_cond_t in pthread_cond_internal_t.
2015-03-16 21:09:26 +00:00
Dan Albert
169a84f980 Merge "Revert "Revert "Moving StringPrintf to libbase.""" 2015-03-16 21:02:51 +00:00
Yabin Cui
d3e2a207ff Merge "Hide content of pthread_cond_t in pthread_cond_internal_t." 2015-03-16 20:58:02 +00:00
Dan Albert
4c1dbb4000 Revert "Revert "Moving StringPrintf to libbase.""
This reverts commit d2dad2b24f.

(cherry picked from commit 3e87c78543)
2015-03-16 13:50:15 -07:00
Dmitriy Ivanov
a5bd2a1039 am 9923c8cd: Merge "Fix typo"
* commit '9923c8cd13d1e8305a908ef23712c7d3e4d4131d':
  Fix typo
2015-03-16 20:39:00 +00:00
Dmitriy Ivanov
9923c8cd13 Merge "Fix typo" 2015-03-16 20:30:01 +00:00
Dmitriy Ivanov
b1ada3dd3f Fix typo
Change-Id: Ie6dad7d09873c88f6bbb2d45c2780e3b0c618bd6
2015-03-16 13:20:23 -07:00
Dmitriy Ivanov
19656ce537 General purpose memory allocator for linker.
Add basic general purpose memory allocator to
 linker in order to enable usage of other libraries
 like libziparchive.

Change-Id: I4a680ebb36ed5ba67c61249f81dba9f567808434
2015-03-16 11:19:53 -07:00
Yabin Cui
32651b8e8e Hide content of pthread_cond_t in pthread_cond_internal_t.
Bug: 19249079
Change-Id: I6f55af30bcd6211ce71630c6cacbef0e1663dcee
2015-03-16 11:09:52 -07:00
Dan Albert
3e87c78543 Revert "Revert "Moving StringPrintf to libbase.""
This reverts commit d2dad2b24f.
2015-03-16 10:06:29 -07:00
Nicolas Geoffray
e5fff0831c am 645621ec: am 11a06c73: Merge "Revert "Moving StringPrintf to libbase.""
* commit '645621ec8bbd8c6ffca7c3b48580b20feb3b76a2':
  Revert "Moving StringPrintf to libbase."
2015-03-16 12:37:10 +00:00
Nicolas Geoffray
645621ec8b am 11a06c73: Merge "Revert "Moving StringPrintf to libbase.""
* commit '11a06c73f6e7d31442429a58a346d881b0a8a441':
  Revert "Moving StringPrintf to libbase."
2015-03-16 12:30:48 +00:00
Nicolas Geoffray
11a06c73f6 Merge "Revert "Moving StringPrintf to libbase."" 2015-03-16 12:20:27 +00:00
Nicolas Geoffray
d2dad2b24f Revert "Moving StringPrintf to libbase."
libbase has been reverted

This reverts commit 7ed5fa1e4d.

Change-Id: I5d8ff8c38ff8c9123e6cee5dc15a101a79e94b2e
2015-03-16 12:19:26 +00:00
Dan Albert
7d332c216c am e63140db: am 83e95878: Merge "Moving StringPrintf to libbase."
* commit 'e63140dbed059ac2042c31762660cced6baac253':
  Moving StringPrintf to libbase.
2015-03-15 22:34:10 +00:00
Christopher Ferris
90cd0a1bf4 am 3abc6d1c: am 593a75ee: Merge "Fix typo in alias symbol."
* commit '3abc6d1c5724d266381b257078bf988f52873fc0':
  Fix typo in alias symbol.
2015-03-15 22:34:09 +00:00
Christopher Ferris
442c6c1d02 am 79641f96: am 83c0028e: Merge "For libm, use a macro for aliasing symbols."
* commit '79641f96eb68fff13f6265abcfd18477cd3650c3':
  For libm, use a macro for aliasing symbols.
2015-03-15 22:34:08 +00:00
Dan Albert
e63140dbed am 83e95878: Merge "Moving StringPrintf to libbase."
* commit '83e95878735a62cea108f3c1f1de1358b5565038':
  Moving StringPrintf to libbase.
2015-03-15 15:44:38 +00:00
Christopher Ferris
3abc6d1c57 am 593a75ee: Merge "Fix typo in alias symbol."
* commit '593a75ee6b9857a452e57b21fb28507da30f89cf':
  Fix typo in alias symbol.
2015-03-15 15:44:37 +00:00
Christopher Ferris
79641f96eb am 83c0028e: Merge "For libm, use a macro for aliasing symbols."
* commit '83c0028e030bad1f7cf54ba3f04962b9a6a9e1e4':
  For libm, use a macro for aliasing symbols.
2015-03-15 15:44:36 +00:00
Dan Albert
83e9587873 Merge "Moving StringPrintf to libbase." 2015-03-14 23:55:10 +00:00
Christopher Ferris
593a75ee6b Merge "Fix typo in alias symbol." 2015-03-14 19:22:29 +00:00
Christopher Ferris
6e86146b85 Fix typo in alias symbol.
Change-Id: I41d2c29bd4a9ba382bbe3440541c8e1506fc5809
2015-03-14 12:17:45 -07:00
Christopher Ferris
83c0028e03 Merge "For libm, use a macro for aliasing symbols." 2015-03-14 17:44:32 +00:00
Christopher Ferris
995b813e91 For libm, use a macro for aliasing symbols.
Change-Id: Ibd42ebc387c2bf3eba9aa96091770915b4b34184
2015-03-13 23:57:15 -07:00
Dan Albert
7ed5fa1e4d Moving StringPrintf to libbase.
Change-Id: I47ef28bb294ffb7c7c065c5624417edf23503b77
2015-03-13 22:34:37 -07:00
Yabin Cui
a7a12565bb am 6c143484: am d2cf59d4: Merge "Hide content of pthread_rwlock_t in pthread_rwlock_internal_t."
* commit '6c1434842a3c29f96c332d12cadc82f9b71746d9':
  Hide content of pthread_rwlock_t in pthread_rwlock_internal_t.
2015-03-14 04:08:32 +00:00
Yabin Cui
6c1434842a am d2cf59d4: Merge "Hide content of pthread_rwlock_t in pthread_rwlock_internal_t."
* commit 'd2cf59d4633d9e731d0342d4f94b6e925589ab1e':
  Hide content of pthread_rwlock_t in pthread_rwlock_internal_t.
2015-03-14 02:51:12 +00:00
Yabin Cui
d2cf59d463 Merge "Hide content of pthread_rwlock_t in pthread_rwlock_internal_t." 2015-03-14 02:38:32 +00:00
Yabin Cui
2fabea47ac Hide content of pthread_rwlock_t in pthread_rwlock_internal_t.
Bug: 19249079
Change-Id: Ifbe634c716b6793bef897ec5134b55eb44c6b8d5
2015-03-13 19:35:05 -07:00
Christopher Ferris
969320874d am 0d54094a: am 81c31bdd: Merge "Add some GNU specific elf constants."
* commit '0d54094a86eded929edaa35a63ac831b1cb95c91':
  Add some GNU specific elf constants.
2015-03-13 21:54:56 +00:00
Dmitriy Ivanov
5a35783fba am 173a61f2: am d7e091ef: Merge "Switch libc and libm to sysv-only hash style"
* commit '173a61f29bb44f70140b9167a7333e79b1d9bf1b':
  Switch libc and libm to sysv-only hash style
2015-03-13 21:54:55 +00:00
Christopher Ferris
0d54094a86 am 81c31bdd: Merge "Add some GNU specific elf constants."
* commit '81c31bdd43e50538fa45f5e7783782a5ae5666e9':
  Add some GNU specific elf constants.
2015-03-13 21:23:43 +00:00
Dmitriy Ivanov
173a61f29b am d7e091ef: Merge "Switch libc and libm to sysv-only hash style"
* commit 'd7e091efc477c17da97415fa944675c6f16dcdb5':
  Switch libc and libm to sysv-only hash style
2015-03-13 21:16:47 +00:00
Christopher Ferris
81c31bdd43 Merge "Add some GNU specific elf constants." 2015-03-13 21:12:07 +00:00
Dmitriy Ivanov
d7e091efc4 Merge "Switch libc and libm to sysv-only hash style" 2015-03-13 21:04:08 +00:00
Dmitriy Ivanov
2e16d2cf1e Switch libc and libm to sysv-only hash style
Bug: 19059885
Change-Id: I60a23dc5f9c756994d566818332ca42b305b4a05
2015-03-13 19:48:03 +00:00
Christopher Ferris
58ea845dd6 am c30d7a67: am f074b531: Merge "Add the optimized implementation of 18 math functions for x86 and x86_64 respectively"
* commit 'c30d7a67e092b95036aba0f0f93e9f382c9e9a8e':
  Add the optimized implementation of 18 math functions for x86 and x86_64 respectively
2015-03-13 17:36:21 +00:00
Christopher Ferris
c94c7ff2bb Add some GNU specific elf constants.
Change-Id: I6c668463a27a641c9a280ce1937857d622344ff8
2015-03-13 10:32:45 -07:00
Christopher Ferris
c30d7a67e0 am f074b531: Merge "Add the optimized implementation of 18 math functions for x86 and x86_64 respectively"
* commit 'f074b531d266deb63c17e1d3bff751f3f3740d9d':
  Add the optimized implementation of 18 math functions for x86 and x86_64 respectively
2015-03-13 17:27:43 +00:00
Christopher Ferris
f074b531d2 Merge "Add the optimized implementation of 18 math functions for x86 and x86_64 respectively" 2015-03-13 17:18:21 +00:00
Yabin Cui
a4a914b522 am 1e795957: am 5507deda: Merge "Make gtest_main exit 1 when some test are failed."
* commit '1e795957f44bff53b27dad686ed56b26d85f84b0':
  Make gtest_main exit 1 when some test are failed.
2015-03-13 17:12:53 +00:00
Yabin Cui
1e795957f4 am 5507deda: Merge "Make gtest_main exit 1 when some test are failed."
* commit '5507dedaeb43e01edfab4b0e2cc290622b20e678':
  Make gtest_main exit 1 when some test are failed.
2015-03-13 17:09:14 +00:00
Yabin Cui
5507dedaeb Merge "Make gtest_main exit 1 when some test are failed." 2015-03-13 17:02:19 +00:00
Mark Salyzyn
8e2d61963d am ee7b80d7: am f6f96df5: Merge "syslog.h: missing LOG_MAKEPRI definition"
* commit 'ee7b80d7cf09c32ea806dfbaa401ba5790670064':
  syslog.h: missing LOG_MAKEPRI definition
2015-03-13 07:20:41 +00:00
Yabin Cui
64a9c4f697 Make gtest_main exit 1 when some test are failed.
This is the gtest behavior, which I think can make test status
judgement more convenient.

Change-Id: I7d3c210d1744b954a4148cd905dd5c353207fce8
2015-03-12 23:36:29 -07:00
Yabin Cui
5b8e7cd957 Remove duplication in pthread_mutex.cpp.
Also add unit tests about thread woken up by pthread_mutex_unlock.

Bug: 19216648

Change-Id: I8bde8105b00186c52a2f41d92458ae4a5eb90426
2015-03-12 21:54:41 -07:00
Yabin Cui
58cf31b506 Make pthread join_state not protected by g_thread_list_lock.
1. Move the representation of thread join_state from pthread.attr.flag
   to pthread.join_state. This clarifies thread state change.
2. Use atomic operations for pthread.join_state. So we don't need to
   protect it by g_thread_list_lock. g_thread_list_lock will be reduced
   to only protect g_thread_list or even removed in further changes.

Bug: 19636317
Change-Id: I31fb143a7c69508c7287307dd3b0776993ec0f43
2015-03-12 21:39:49 -07:00
Mark Salyzyn
ee7b80d7cf am f6f96df5: Merge "syslog.h: missing LOG_MAKEPRI definition"
* commit 'f6f96df5b031b0bf79eb8ad49bd73a3ceab87db5':
  syslog.h: missing LOG_MAKEPRI definition
2015-03-12 21:39:12 +00:00
Mark Salyzyn
f6f96df5b0 Merge "syslog.h: missing LOG_MAKEPRI definition" 2015-03-12 20:33:25 +00:00
Mark Salyzyn
c4a586da49 syslog.h: missing LOG_MAKEPRI definition
Bug: 19681572
Change-Id: Ice5f5cb1f71522ffc47b2243a8dc4c277c2a288f
2015-03-12 13:21:35 -07:00
Elliott Hughes
8ae530ca63 am 59e911c7: am be86f877: Merge "Add the UMOUNT_NOFOLLOW flag to <sys/mount.h>."
* commit '59e911c7fda705ca50d558c73bae9decdcf1b040':
  Add the UMOUNT_NOFOLLOW flag to <sys/mount.h>.
2015-03-12 15:35:54 +00:00
Dmitriy Ivanov
3e7d8d200f am 452ddd02: am e8107b66: Merge "Rename LinkerAllocator and LinkerAllocatorPage"
* commit '452ddd0245d9fb790d55206fc9535d02665c28fa':
  Rename LinkerAllocator and LinkerAllocatorPage
2015-03-11 23:02:18 +00:00
Dmitriy Ivanov
714a70f692 am 36927c79: am 57e800d5: Merge "Refactoring: rename linker_allocator files"
* commit '36927c796b26f6c4f9771e4935615e9edf2205c3':
  Refactoring: rename linker_allocator files
2015-03-11 23:02:17 +00:00
Dimitry Ivanov
bc6aa41dd7 am 1f2b704c: am e842dc0d: am c16c8368: Merge "Generate gnu hash for arm only"
* commit '1f2b704ccf5102ca759f0721f0612bcf84fd5cc9':
  Generate gnu hash for arm only
2015-03-11 20:09:29 +00:00
Elliott Hughes
59e911c7fd am be86f877: Merge "Add the UMOUNT_NOFOLLOW flag to <sys/mount.h>."
* commit 'be86f87711ee71ff971da2e2ae7a092081177951':
  Add the UMOUNT_NOFOLLOW flag to <sys/mount.h>.
2015-03-11 16:56:26 +00:00
Elliott Hughes
be86f87711 Merge "Add the UMOUNT_NOFOLLOW flag to <sys/mount.h>." 2015-03-11 16:42:49 +00:00
Elliott Hughes
ba87fe5145 Add the UMOUNT_NOFOLLOW flag to <sys/mount.h>.
Change-Id: I2b81cfc3147d9a0a6ac2a8f064e6d9864fa7e04d
2015-03-11 09:32:25 -07:00
Dmitriy Ivanov
452ddd0245 am e8107b66: Merge "Rename LinkerAllocator and LinkerAllocatorPage"
* commit 'e8107b66c56509a8d1b1d21f217e4e71a9f74bee':
  Rename LinkerAllocator and LinkerAllocatorPage
2015-03-11 03:19:21 +00:00
Dmitriy Ivanov
36927c796b am 57e800d5: Merge "Refactoring: rename linker_allocator files"
* commit '57e800d534b43bda849858ed4bb47d556469032f':
  Refactoring: rename linker_allocator files
2015-03-11 03:19:20 +00:00
Dmitriy Ivanov
e8107b66c5 Merge "Rename LinkerAllocator and LinkerAllocatorPage" 2015-03-11 00:38:49 +00:00
Dmitriy Ivanov
57e800d534 Merge "Refactoring: rename linker_allocator files" 2015-03-11 00:35:22 +00:00
Dmitriy Ivanov
600bc3cb93 Rename LinkerAllocator and LinkerAllocatorPage
Change-Id: I87d80fbcd4ec26c0ee4f601b9c4c64f600418dd9
2015-03-10 15:43:50 -07:00
Dmitriy Ivanov
c9ce70d783 Refactoring: rename linker_allocator files
Change-Id: Ifc08e64b3a85205f072b7abab1149c7ab71e2f75
2015-03-10 15:30:26 -07:00
Dmitriy Ivanov
88f587421d am 6d0735fa: am dca2fadd: am a94cf791: Merge "Generate sysv hash for libc, libstdc++ and libm"
* commit '6d0735fa2bd9690252c0f26cafffb7614ffd3556':
  Generate sysv hash for libc, libstdc++ and libm
2015-03-10 22:04:33 +00:00
Yabin Cui
3b18a6510e am 981fdd0e: am 50119cec: am 37c71b14: Merge "Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink."
* commit '981fdd0e5580f5a51e52dc1105fa95ec6705d017':
  Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink.
2015-03-10 22:04:32 +00:00
Dmitriy Ivanov
eed4cb3869 am 240a7910: am 8af6a7b3: am 017f94d3: Merge "Store fields for gnu_hash separately"
* commit '240a7910ab46bc1f247270c3edafbb4e18616f60':
  Store fields for gnu_hash separately
2015-03-10 18:15:58 +00:00
Dimitry Ivanov
1f2b704ccf am e842dc0d: am c16c8368: Merge "Generate gnu hash for arm only"
* commit 'e842dc0de5ce5f9950e323ae8805909f60867bf6':
  Generate gnu hash for arm only
2015-03-10 17:48:29 +00:00
Dimitry Ivanov
e842dc0de5 am c16c8368: Merge "Generate gnu hash for arm only"
* commit 'c16c8368773452e2d18d761a7b3ea6f249dc2ac5':
  Generate gnu hash for arm only
2015-03-10 17:41:18 +00:00
Dimitry Ivanov
c16c836877 Merge "Generate gnu hash for arm only" 2015-03-10 17:34:51 +00:00
Goran Jakovljevic
1156508265 Generate gnu hash for arm only
Fixes build failure caused by:
https://android-review.googlesource.com/#/c/139660

As previously discussed [1], MIPS does not support GNU-style ELF hashes.

[1] https://android-review.googlesource.com/#/c/49282/2/tests/Android.mk

Change-Id: I9a7966eebfd1ef0a587a20b71faefde38e84ab62
2015-03-10 10:01:50 -07:00
Dmitriy Ivanov
6d0735fa2b am dca2fadd: am a94cf791: Merge "Generate sysv hash for libc, libstdc++ and libm"
* commit 'dca2fadd8252a5c0664d2811187bc39bd7916aa4':
  Generate sysv hash for libc, libstdc++ and libm
2015-03-10 15:12:09 +00:00
Yabin Cui
981fdd0e55 am 50119cec: am 37c71b14: Merge "Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink."
* commit '50119cec8d872df02547af39a3a85aea9125299b':
  Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink.
2015-03-10 15:12:07 +00:00
Dmitriy Ivanov
dca2fadd82 am a94cf791: Merge "Generate sysv hash for libc, libstdc++ and libm"
* commit 'a94cf791c1c9b93d49f5573716de93348757ae15':
  Generate sysv hash for libc, libstdc++ and libm
2015-03-10 15:03:35 +00:00
Yabin Cui
50119cec8d am 37c71b14: Merge "Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink."
* commit '37c71b14e51c53b0cb5daa19bf38559d063453dc':
  Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink.
2015-03-10 15:03:34 +00:00
Dmitriy Ivanov
a94cf791c1 Merge "Generate sysv hash for libc, libstdc++ and libm" 2015-03-10 04:41:02 +00:00
Yabin Cui
37c71b14e5 Merge "Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink." 2015-03-10 04:14:12 +00:00
Dmitriy Ivanov
4a55c46d30 Generate sysv hash for libc, libstdc++ and libm
Bug: 19059885
Change-Id: I35e2a9cd0bb3914d9d0c82d163bfaf0fff844667
2015-03-09 19:38:56 -07:00
Yabin Cui
c6e5874a4c Loosen fchmodat AT_SYMLINK_NOFOLLOW test on symlink.
It has been reported in b2/19657449 and b2/19381040 that fchmodat
AT_SYMLINK_NOFOLLOW operation on symlink can succeed. It seems to be
controlled by kernel(version or configuration) or user configuration
whether chmod is allowed on symlinks. Unless we can disable chmod on
symlinks in bionic explicitly, we can not guarantee that the test can
pass. But it seems reasonable to allow chmod on symlink if kernel allows
to. So We prefer to loosen the test here, accepting both success and
failure when doing chmod operation on symlinks.

Bug: 19657449
Bug: 19381040
Change-Id: I780e84f0b50d0412fbac9f1c240d07e984892a28
2015-03-09 18:13:15 -07:00
Dmitriy Ivanov
240a7910ab am 8af6a7b3: am 017f94d3: Merge "Store fields for gnu_hash separately"
* commit '8af6a7b38e1ce134d537f359d8cf4780ed9d8f58':
  Store fields for gnu_hash separately
2015-03-09 21:15:50 +00:00
Dmitriy Ivanov
8af6a7b38e am 017f94d3: Merge "Store fields for gnu_hash separately"
* commit '017f94d34eedfaca1c62cb35a65b8436f04b8f62':
  Store fields for gnu_hash separately
2015-03-09 21:11:02 +00:00
Dmitriy Ivanov
017f94d34e Merge "Store fields for gnu_hash separately" 2015-03-09 21:05:52 +00:00
Dmitriy Ivanov
3597b8055d Store fields for gnu_hash separately
Kindle app relies on soinfo's sysv hash
  fields while linking native libraries.

  This change allows to keep sysv hash fields
  intact for the libraries linked with --hash-style=both.

Bug: 19059885
Change-Id: I12528652955638f1a6586bda99e111bb1c8aa7a3
2015-03-09 21:01:01 +00:00
Jingwei Zhang
5d4f0e6a26 Add the optimized implementation of 18 math functions for x86 and x86_64 respectively
Change-Id: I31bf601448a9427f825517f3a0ff24de47f49bfa
Signed-off-by: Jingwei Zhang <jingwei.zhang@intel.com>
Signed-off-by: Mingwei Shi <mingwei.shi@intel.com>
2015-03-09 13:19:08 -07:00
Nick Kralevich
7a507ba202 am 563fd91a: am 9e08606c: am edc1d3e3: Merge "linker: Allow an app to update it\'s own LD_LIBRARY_PATH"
* commit '563fd91a314958ae0fec09471056e6071e71f72a':
  linker: Allow an app to update it's own LD_LIBRARY_PATH
2015-03-08 00:18:04 +00:00
Christopher Ferris
da597738d8 am 0e2b8b80: am 5c329e45: am 9afb08dd: Merge "libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64"
* commit '0e2b8b800036c79bf05760e28896041028a2fa3c':
  libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64
2015-03-08 00:18:03 +00:00
Dmitriy Ivanov
5e05683975 am 7d62778c: am 2bf9f30a: am 536ec735: Merge changes I796a4ce8,I6165d062,I66c95d90,Ia67fa11d
* commit '7d62778c0f7b404961361e0a1745ff8f880ec805':
  Add support for packed relocations.
  Refactoring: introduce reloc_iterators
  Generalize compression tool
  Import relocation packer from chromium repo
2015-03-08 00:18:02 +00:00
Yabin Cui
a01387a16b am 7db2acbb: am 2bb873ae: am e86a86f9: Merge "Remove PTHREAD_ATTR_FLAG_MAIN_THREAD."
* commit '7db2acbb694871da2b02ccf2261c01e0faf812ae':
  Remove PTHREAD_ATTR_FLAG_MAIN_THREAD.
2015-03-08 00:18:01 +00:00
Yabin Cui
a2d3511e36 am 39416d70: am a1d1f658: am 45ee73a7: Merge "Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp."
* commit '39416d701cdbcff68d7ed11720b61d8a4a9e66bd':
  Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp.
2015-03-08 00:18:00 +00:00
Yabin Cui
1493be412e am 185d511b: am af1ad422: am fe4f2a67: Merge "Use pthread_once for g_uselocale_key creation."
* commit '185d511bf827d864397e8ac2dd886ae19618f71d':
  Use pthread_once for g_uselocale_key creation.
2015-03-08 00:17:59 +00:00
Nick Kralevich
563fd91a31 am 9e08606c: am edc1d3e3: Merge "linker: Allow an app to update it\'s own LD_LIBRARY_PATH"
* commit '9e08606c8353b543f414625a475aaab390de161f':
  linker: Allow an app to update it's own LD_LIBRARY_PATH
2015-03-08 00:08:43 +00:00
Christopher Ferris
0e2b8b8000 am 5c329e45: am 9afb08dd: Merge "libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64"
* commit '5c329e45dc5b4216be673459bcc7c5abcce5f2d3':
  libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64
2015-03-08 00:08:32 +00:00
Dmitriy Ivanov
7d62778c0f am 2bf9f30a: am 536ec735: Merge changes I796a4ce8,I6165d062,I66c95d90,Ia67fa11d
* commit '2bf9f30a3ae9892660b7f7f64fd4d60bae712ed6':
  Add support for packed relocations.
  Refactoring: introduce reloc_iterators
  Generalize compression tool
  Import relocation packer from chromium repo
2015-03-08 00:08:30 +00:00
Yabin Cui
7db2acbb69 am 2bb873ae: am e86a86f9: Merge "Remove PTHREAD_ATTR_FLAG_MAIN_THREAD."
* commit '2bb873aee94db4f317a62480b07f6d4d1d33da6d':
  Remove PTHREAD_ATTR_FLAG_MAIN_THREAD.
2015-03-08 00:08:29 +00:00
Yabin Cui
39416d701c am a1d1f658: am 45ee73a7: Merge "Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp."
* commit 'a1d1f658b5ed0508a21c87008a13830530660eba':
  Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp.
2015-03-08 00:07:50 +00:00
Yabin Cui
185d511bf8 am af1ad422: am fe4f2a67: Merge "Use pthread_once for g_uselocale_key creation."
* commit 'af1ad4220885bc37a347086cac15863fe9bbe16e':
  Use pthread_once for g_uselocale_key creation.
2015-03-08 00:07:22 +00:00
Nick Kralevich
9e08606c83 am edc1d3e3: Merge "linker: Allow an app to update it\'s own LD_LIBRARY_PATH"
* commit 'edc1d3e3c6266eadcd05a9aa7bcdec701ba060aa':
  linker: Allow an app to update it's own LD_LIBRARY_PATH
2015-03-07 23:38:35 +00:00
Nick Kralevich
edc1d3e3c6 Merge "linker: Allow an app to update it's own LD_LIBRARY_PATH" 2015-03-07 23:31:32 +00:00
Nick Kralevich
6bb01b6e63 linker: Allow an app to update it's own LD_LIBRARY_PATH
When the kernel executes a program which is setuid, setgid, has
file capabilities, or causes an SELinux domain transition, the
AT_SECURE flag is set. This flag instructs the dynamic linker to
prune any dangerous environment variables passed across security
boundaries.

For SELinux in particular, whether this flag is set depends on the
the "noatsecure" process permission. If that permission does not
exist, then AT_SECURE=1 whenever a domain transition occurs.

In https://android-review.googlesource.com/129971 , Android stopped
using noatsecure when executing init services. In
https://android-review.googlesource.com/130610 , init was flipped
back into SELinux enforcing mode, making ag/129971 active. The
combination of those two changes ensured that AT_SECURE=1 was
set when executing init spawned services.

In particular, AT_SECURE=1 is set when init executes zygote. Due to
the forking nature of zygote, AT_SECURE remains untouched when
executing zygote's children.

This causes problems for the code added in
https://android-review.googlesource.com/48409 . Specifically, if
AT_SECURE=1, an attempt to call android_update_LD_LIBRARY_PATH()
is silently ignored. This causes problems when art tries to adjust
the LD_LIBRARY_PATH for Android apps. Ultimately, apps are unable
to find shared libraries they depend on.

As discussed in bug 7896159, there's no security reason for
preventing an application from updating it's own LD_LIBRARY_PATH.
We only need to prune LD_LIBRARY_PATH when transitioning across
security boundaries, but not when we're entirely within a security
boundary.

Remove the AT_SECURE check within do_android_update_LD_LIBRARY_PATH().
It's unneeded and prevents an application from modifying it's own
LD_LIBRARY_PATH. This allows an application to specify a location
where it's dlopen()ed shared libraries should be loaded from.

There is no change to AT_SECURE handling in
__sanitize_environment_variables(). We continue to honor it there
to prevent using security sensitive environment variables across
an exec boundary.

Bug: 19559835
Change-Id: If4af2ee8e84265aaa0c93de8b281208b20d7942a
2015-03-07 13:37:05 -08:00
Christopher Ferris
5c329e45dc am 9afb08dd: Merge "libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64"
* commit '9afb08dd0984acea49da5aae21b41522cb805dac':
  libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64
2015-03-07 17:13:22 +00:00
Dmitriy Ivanov
2bf9f30a3a am 536ec735: Merge changes I796a4ce8,I6165d062,I66c95d90,Ia67fa11d
* commit '536ec7359eb951655e389443aa918a4bb16b2d8b':
  Add support for packed relocations.
  Refactoring: introduce reloc_iterators
  Generalize compression tool
  Import relocation packer from chromium repo
2015-03-07 17:13:21 +00:00
Yabin Cui
2bb873aee9 am e86a86f9: Merge "Remove PTHREAD_ATTR_FLAG_MAIN_THREAD."
* commit 'e86a86f9f24df7028d2596c69ff008cf88e039e4':
  Remove PTHREAD_ATTR_FLAG_MAIN_THREAD.
2015-03-07 17:13:21 +00:00
Christopher Ferris
9afb08dd09 Merge "libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64" 2015-03-07 16:46:27 +00:00
Dmitriy Ivanov
536ec7359e Merge changes I796a4ce8,I6165d062,I66c95d90,Ia67fa11d
* changes:
  Add support for packed relocations.
  Refactoring: introduce reloc_iterators
  Generalize compression tool
  Import relocation packer from chromium repo
2015-03-07 07:08:51 +00:00
Dmitriy Ivanov
18a6956b76 Add support for packed relocations.
Change-Id: I796a4ce86d3fccb8361c19889419c96147ee3c9f
2015-03-06 17:12:47 -08:00
James Rose
45789b63db libm: Add hardware sqrt, ceil, floor and trunc for x86 & x86_64
Add hardware implementations for sqrt, ceil, floor and trunc for
x86 and x86_64. These routines, and in particular sqrt are much
faster than the BSD C language versions of these functions.

Fixed whitespace errors.

Revised x86 versions with respect to alignment.
Rebased for Android 5.0

Change-Id: I86bdb520ce5e589b0cf63778f353fbd3263c8f0e
Author: James Rose <james.rose@intel.com>
Signed-off-by: James Rose <james.rose@intel.com>
2015-03-06 16:48:30 -08:00
Yabin Cui
e86a86f9f2 Merge "Remove PTHREAD_ATTR_FLAG_MAIN_THREAD." 2015-03-06 23:21:12 +00:00
Yabin Cui
9d0c79304d Remove PTHREAD_ATTR_FLAG_MAIN_THREAD.
Make this change because I think it is more reasonable to check stack info
in pthread_getattr_np. I believe pthread_attr_t is not tied with any thread,
and can't have a flag saying who using it is the main thread.
This change also helps refactor of g_thread_list_lock.

Bug: 19636317
Change-Id: Iedbb85a391ac3e1849dd036d01445dac4bc63db9
2015-03-06 15:16:44 -08:00
Dmitriy Ivanov
fa26eee776 Refactoring: introduce reloc_iterators
Replace rel/rela array with reloc_iterators.

Change-Id: I6165d062e0390b6bc60da2e8279aabbedf828ec9
2015-03-06 13:01:08 -08:00
Dmitriy Ivanov
f8ff6b103b Generalize compression tool
1. One binary for all architectures
 2. Generalize (and slightly improve) compression
 2.1 works on all relocation types (rela?.dyn section only so far)
 2.2 Uses same format to encode ElfW(Rel) as well as ElfW(Rela) tables

Bug: 18051137
Change-Id: I66c95d9076954ca115816fc577d0f5ef274e5e72
2015-03-06 13:01:08 -08:00
Dmitriy Ivanov
87a0617ebe Import relocation packer from chromium repo
Bug: 18051137
Change-Id: Ia67fa11da8247e3f86f70a8ce99e6695f2c05423
2015-03-06 13:01:08 -08:00
Yabin Cui
a1d1f658b5 am 45ee73a7: Merge "Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp."
* commit '45ee73a7fbe98cba2ccb007b60c027d27dfca1cb':
  Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp.
2015-03-06 21:00:16 +00:00
Yabin Cui
45ee73a7fb Merge "Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp." 2015-03-06 20:52:31 +00:00
Yabin Cui
af1ad42208 am fe4f2a67: Merge "Use pthread_once for g_uselocale_key creation."
* commit 'fe4f2a6734ed3ace50606900143e84993f450caf':
  Use pthread_once for g_uselocale_key creation.
2015-03-06 05:34:31 +00:00
Yabin Cui
fe4f2a6734 Merge "Use pthread_once for g_uselocale_key creation." 2015-03-06 05:28:24 +00:00
Yabin Cui
f7e3b3e48a Use pthread_once for g_uselocale_key creation.
Bug: 19625804
Change-Id: I57ec4c965067dc0c157c795c1f7217a3ca403286
2015-03-05 20:39:10 -08:00
Christopher Ferris
bef6cbbe79 am 35e88f9b: am e953f3cf: am 71bf8379: Merge "libm: arm: add arm specific sqrt and sqrtf"
* commit '35e88f9b8bf51b75bb4fe7a72d43875bfed228f6':
  libm: arm: add arm specific sqrt and sqrtf
2015-03-05 22:43:24 +00:00
Christopher Ferris
35e88f9b8b am e953f3cf: am 71bf8379: Merge "libm: arm: add arm specific sqrt and sqrtf"
* commit 'e953f3cf985e810071d707bcc296b20ec6e2e8dd':
  libm: arm: add arm specific sqrt and sqrtf
2015-03-05 22:35:46 +00:00
Christopher Ferris
e953f3cf98 am 71bf8379: Merge "libm: arm: add arm specific sqrt and sqrtf"
* commit '71bf837982446b31f435031ed2d10aa1c8c15988':
  libm: arm: add arm specific sqrt and sqrtf
2015-03-05 21:59:08 +00:00
Christopher Ferris
71bf837982 Merge "libm: arm: add arm specific sqrt and sqrtf" 2015-03-05 21:55:21 +00:00
Yabin Cui
120a29749d am 807c623b: am 9ecb7f40: am c3307dc4: Merge "Better control of pthread keys used in bionic."
* commit '807c623b58c7020e8419057fac0c58f0a7099bbe':
  Better control of pthread keys used in bionic.
2015-03-05 19:26:31 +00:00
Yabin Cui
807c623b58 am 9ecb7f40: am c3307dc4: Merge "Better control of pthread keys used in bionic."
* commit '9ecb7f40d01d7ee258d11277944cc2415635ea17':
  Better control of pthread keys used in bionic.
2015-03-05 18:39:22 +00:00
Yabin Cui
9ecb7f40d0 am c3307dc4: Merge "Better control of pthread keys used in bionic."
* commit 'c3307dc43b2526c4031837738b139d22831c5d09':
  Better control of pthread keys used in bionic.
2015-03-05 18:33:31 +00:00
Yabin Cui
c3307dc43b Merge "Better control of pthread keys used in bionic." 2015-03-05 18:26:44 +00:00
Yabin Cui
93e094f9c3 am 4710b5fb: am 917cb395: am 5d400204: Merge "Fix fortify compilation test in x86_64."
* commit '4710b5fb5d0939c2212769b054d700152f7fd885':
  Fix fortify compilation test in x86_64.
2015-03-05 08:59:33 +00:00
Yabin Cui
4710b5fb5d am 917cb395: am 5d400204: Merge "Fix fortify compilation test in x86_64."
* commit '917cb395bc7c71b34d3a4feca0c619d2aaf89fd8':
  Fix fortify compilation test in x86_64.
2015-03-05 08:53:16 +00:00
Yabin Cui
917cb395bc am 5d400204: Merge "Fix fortify compilation test in x86_64."
* commit '5d400204589ceb781fa11864c2e8f3001e5dc96f':
  Fix fortify compilation test in x86_64.
2015-03-05 08:47:12 +00:00
Yabin Cui
24e8871faa Rename fortify_sprintf_warnings.cpp to fortify_compilation_test.cpp.
Bug: 19234260
Change-Id: Ife27ca13eeae317739eda25b40dd2a08606d6d6f
2015-03-05 00:46:18 -08:00
Yabin Cui
5d40020458 Merge "Fix fortify compilation test in x86_64." 2015-03-05 08:40:58 +00:00
Yabin Cui
d9647594de Fix fortify compilation test in x86_64.
Change-Id: Ic243f6583e4f435899d01c7845dddacacbfc916e
2015-03-05 00:39:09 -08:00
Yabin Cui
97bd338e55 am 3801fb1e: am f9b3f25e: am 1c78181a: Merge "Fix fortify compilation test on x86."
* commit '3801fb1e8bbaeef23f6a0cf8709ecd60d4ec5f6a':
  Fix fortify compilation test on x86.
2015-03-05 06:51:36 +00:00
Yabin Cui
3801fb1e8b am f9b3f25e: am 1c78181a: Merge "Fix fortify compilation test on x86."
* commit 'f9b3f25e0ba641cc59a741492737f4712f2d798a':
  Fix fortify compilation test on x86.
2015-03-05 06:44:02 +00:00
Yabin Cui
f9b3f25e0b am 1c78181a: Merge "Fix fortify compilation test on x86."
* commit '1c78181a9da19778dbbcc162854f9564a51243bf':
  Fix fortify compilation test on x86.
2015-03-05 06:39:55 +00:00
Yabin Cui
1c78181a9d Merge "Fix fortify compilation test on x86." 2015-03-05 06:36:47 +00:00
Yabin Cui
94545eba37 Fix fortify compilation test on x86.
Change-Id: I9b88cbcec51b6f1dbac2780a9bf82851bd6cc87c
2015-03-04 22:35:13 -08:00
Yabin Cui
2295b54492 am 9336f832: am c2917ec7: am 5ad57ce6: Merge "Fix fortify compilation test on mips."
* commit '9336f83244956c9dcea2ecb0c7a2768b85a953be':
  Fix fortify compilation test on mips.
2015-03-05 06:02:53 +00:00
Yabin Cui
9336f83244 am c2917ec7: am 5ad57ce6: Merge "Fix fortify compilation test on mips."
* commit 'c2917ec702d25955c6d139d76cfb7d607079141e':
  Fix fortify compilation test on mips.
2015-03-05 05:55:57 +00:00
Yabin Cui
c2917ec702 am 5ad57ce6: Merge "Fix fortify compilation test on mips."
* commit '5ad57ce6ab95a12ab738eb7cd3595745ddd60d8d':
  Fix fortify compilation test on mips.
2015-03-05 05:50:33 +00:00
Yabin Cui
5ad57ce6ab Merge "Fix fortify compilation test on mips." 2015-03-05 05:46:16 +00:00
Yabin Cui
f3bd305b8f Fix fortify compilation test on mips.
Change-Id: Icff5b859ae58067bfa34430d3f5684335fe063b4
2015-03-04 21:43:14 -08:00
Yabin Cui
de40b37882 am 8e91a1ff: am 80aa71aa: am e1c0213b: Merge "Switch pthread_rwlock_t to stdatomic."
* commit '8e91a1ff73b865f9ed5f8ee4a493394e8b3ba302':
  Switch pthread_rwlock_t to stdatomic.
2015-03-05 05:00:35 +00:00
Yabin Cui
8e91a1ff73 am 80aa71aa: am e1c0213b: Merge "Switch pthread_rwlock_t to stdatomic."
* commit '80aa71aa71033fa8c03f8b7a9032643294f60006':
  Switch pthread_rwlock_t to stdatomic.
2015-03-05 04:54:37 +00:00
Yabin Cui
80aa71aa71 am e1c0213b: Merge "Switch pthread_rwlock_t to stdatomic."
* commit 'e1c0213be3f0c2c4e310cbc262da88835a2e5d86':
  Switch pthread_rwlock_t to stdatomic.
2015-03-05 04:48:48 +00:00
Yabin Cui
e1c0213be3 Merge "Switch pthread_rwlock_t to stdatomic." 2015-03-05 04:42:35 +00:00
Yabin Cui
08ee8d2030 Switch pthread_rwlock_t to stdatomic.
Bug: 19099838
Change-Id: Ie82967a60b5cec61a8bdd1e0e4a03738d01944f8
2015-03-04 18:16:20 -08:00
Yabin Cui
4a2891d8c8 Better control of pthread keys used in bionic.
Change-Id: I1e1bc77c0e7879baead6c3417282ce549a1153b5
2015-03-04 16:53:23 -08:00
Yabin Cui
eb050b0c4d am ea0cbb9a: am 821653e6: am dec9501a: Merge "Add fortify compile test."
* commit 'ea0cbb9a274e2b9294545b7ab877906ed4c3d202':
  Add fortify compile test.
2015-03-05 00:10:17 +00:00
Yabin Cui
ea0cbb9a27 am 821653e6: am dec9501a: Merge "Add fortify compile test."
* commit '821653e65f481b65c608bb3eb89190f7a85356c7':
  Add fortify compile test.
2015-03-05 00:06:03 +00:00
Yabin Cui
821653e65f am dec9501a: Merge "Add fortify compile test."
* commit 'dec9501af2ee4d7cec3a163310d42e8ea1b8c58f':
  Add fortify compile test.
2015-03-04 23:55:21 +00:00
Yabin Cui
dec9501af2 Merge "Add fortify compile test." 2015-03-04 23:25:42 +00:00
Christopher Ferris
fdc33dcfaf am 59c32458: am 1edafd56: am 86ac7341: Merge "Add aarch64 instructions wherever possible"
* commit '59c324581f58243564ec6db1688e5e1c3e220750':
  Add aarch64 instructions wherever possible
2015-03-04 23:24:45 +00:00
Christopher Ferris
59c324581f am 1edafd56: am 86ac7341: Merge "Add aarch64 instructions wherever possible"
* commit '1edafd561aefe07dd39273c1c09a9dbb308549d6':
  Add aarch64 instructions wherever possible
2015-03-04 22:51:40 +00:00
Christopher Ferris
1edafd561a am 86ac7341: Merge "Add aarch64 instructions wherever possible"
* commit '86ac734142a4d0765ceb589e7dcc3af1a4f4a8dd':
  Add aarch64 instructions wherever possible
2015-03-04 22:44:43 +00:00
Shu Zhang
c78fa26d47 libm: arm: add arm specific sqrt and sqrtf
Add arm specific optimized sqrt and sqrtf.

Change-Id: I8ea417fc98a800c8cf4f47a0c6668c51d927b1dc
2015-03-04 14:07:35 -08:00
Christopher Ferris
86ac734142 Merge "Add aarch64 instructions wherever possible" 2015-03-04 21:52:01 +00:00
Yabin Cui
20f2268d61 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
2015-03-04 13:10:38 -08:00
Amaury Le Leyzour
32936c895d Add aarch64 instructions wherever possible
fma, sqrt and various rounding functions have aarch64 instruction equivalent

Change-Id: I1284f31b9f78f914281e5563b8d44db8362b627d
2015-03-04 12:18:52 -08:00
Yabin Cui
cdf7bf3e7d am 01351a72: am c210e84f: am e1edd301: Merge "Refactor pthread_key.cpp to be lock-free."
* commit '01351a728935bd52d1cb10d10c4c6aa686305053':
  Refactor pthread_key.cpp to be lock-free.
2015-03-04 02:09:32 +00:00
Yabin Cui
01351a7289 am c210e84f: am e1edd301: Merge "Refactor pthread_key.cpp to be lock-free."
* commit 'c210e84f28633d15f84a66a0652a4485c5fbc24d':
  Refactor pthread_key.cpp to be lock-free.
2015-03-04 02:00:43 +00:00
Yabin Cui
c210e84f28 am e1edd301: Merge "Refactor pthread_key.cpp to be lock-free."
* commit 'e1edd301d2a722e0a0687a7a3a87081c8cb956d3':
  Refactor pthread_key.cpp to be lock-free.
2015-03-04 01:53:46 +00:00
Yabin Cui
e1edd301d2 Merge "Refactor pthread_key.cpp to be lock-free." 2015-03-04 01:49:20 +00:00
Yabin Cui
5e2bd719d7 Refactor pthread_key.cpp to be lock-free.
Change-Id: I20dfb9d3cdc40eed10ea12ac34f03caaa94f7a49
2015-03-03 15:46:53 -08:00
Yabin Cui
8dbabd8494 am 92cadb19: am 62b6d11b: am d5c2745c: Merge "Lose bionic_atomic stuff."
* commit '92cadb19fba4bdcfa009ee8cbdf41a282a6b76b0':
  Lose bionic_atomic stuff.
2015-03-03 03:12:55 +00:00
Yabin Cui
92cadb19fb am 62b6d11b: am d5c2745c: Merge "Lose bionic_atomic stuff."
* commit '62b6d11b2de06db8ed26dc4b2b175443110748fe':
  Lose bionic_atomic stuff.
2015-03-03 03:07:06 +00:00
Yabin Cui
62b6d11b2d am d5c2745c: Merge "Lose bionic_atomic stuff."
* commit 'd5c2745ca8664b987d737e4a32922b6c9fe7c628':
  Lose bionic_atomic stuff.
2015-03-03 03:00:42 +00:00
Yabin Cui
d5c2745ca8 Merge "Lose bionic_atomic stuff." 2015-03-03 02:56:19 +00:00
Mark Salyzyn
5e6d3f49e2 am ef5cc0b8: am 1f3ac62b: am ceb9c182: Merge "bionic: deprecate _PATH_MEM"
* commit 'ef5cc0b8d71ed74129b010550a35d0a3a97f913a':
  bionic: deprecate _PATH_MEM
2015-03-02 22:45:45 +00:00
Mark Salyzyn
ef5cc0b8d7 am 1f3ac62b: am ceb9c182: Merge "bionic: deprecate _PATH_MEM"
* commit '1f3ac62b447f67fc60620bd3254761b1d73297ba':
  bionic: deprecate _PATH_MEM
2015-03-02 19:47:36 +00:00
Mark Salyzyn
1f3ac62b44 am ceb9c182: Merge "bionic: deprecate _PATH_MEM"
* commit 'ceb9c182dbb9752004a3d61d872fb3f0cc1c3f9c':
  bionic: deprecate _PATH_MEM
2015-03-02 19:41:53 +00:00
Mark Salyzyn
ceb9c182db Merge "bionic: deprecate _PATH_MEM" 2015-03-02 18:57:59 +00:00
Mark Salyzyn
c09268a3fe 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
2015-03-02 18:44:11 +00:00
Christopher Ferris
e8fdf3e792 am 219ce296: am df14d8ef: am 2ae7c1e3: Merge "Fix fread returning bad data."
* commit '219ce2968b42ff4019d7eea2e8728505851ba475':
  Fix fread returning bad data.
2015-02-28 18:47:26 +00:00
Christopher Ferris
219ce2968b am df14d8ef: am 2ae7c1e3: Merge "Fix fread returning bad data."
* commit 'df14d8ef9884d85987e9810ae44837b659e1f82a':
  Fix fread returning bad data.
2015-02-28 18:41:27 +00:00
Christopher Ferris
df14d8ef98 am 2ae7c1e3: Merge "Fix fread returning bad data."
* commit '2ae7c1e336af3dd2901e90608be3adeb577659a7':
  Fix fread returning bad data.
2015-02-28 18:36:18 +00:00
Christopher Ferris
2ae7c1e336 Merge "Fix fread returning bad data." 2015-02-28 18:31:01 +00:00
Christopher Ferris
cc9ca1051d Fix fread returning bad data.
Bug: 19172514
Change-Id: I05016577858a02aca7d14e75e6ec28abc925037c
2015-02-27 18:22:45 -08:00
Christopher Ferris
5741d528ce am e30073f2: am d957bd08: am e6a33cef: Merge "libm: arm: Add arm specific floor() optimization"
* commit 'e30073f2a54d4f3ca072c7d28ee5b0209c8532a8':
  libm: arm: Add arm specific floor() optimization
2015-02-27 20:46:53 +00:00
Christopher Ferris
e30073f2a5 am d957bd08: am e6a33cef: Merge "libm: arm: Add arm specific floor() optimization"
* commit 'd957bd08b08685da987ebf609f87c3806b4455bc':
  libm: arm: Add arm specific floor() optimization
2015-02-27 20:40:46 +00:00
Christopher Ferris
d957bd08b0 am e6a33cef: Merge "libm: arm: Add arm specific floor() optimization"
* commit 'e6a33cefe4b3759fb77d9e69356cb50a97ea7e54':
  libm: arm: Add arm specific floor() optimization
2015-02-27 20:28:36 +00:00
Christopher Ferris
e6a33cefe4 Merge "libm: arm: Add arm specific floor() optimization" 2015-02-27 20:23:15 +00:00
Yabin Cui
7a42cd224c am 0d282fc5: am 09ee78ae: am b220c4b6: Merge "Make bionic gtest main be compatible with gtest output format for cts test."
* commit '0d282fc57291cf392f6322e34769c50d815085e7':
  Make bionic gtest main be compatible with gtest output format for cts test.
2015-02-27 18:49:54 +00:00
Yabin Cui
0d282fc572 am 09ee78ae: am b220c4b6: Merge "Make bionic gtest main be compatible with gtest output format for cts test."
* commit '09ee78ae010a1aa91ed5c12f8da80829837df944':
  Make bionic gtest main be compatible with gtest output format for cts test.
2015-02-27 18:42:52 +00:00
Yabin Cui
09ee78ae01 am b220c4b6: Merge "Make bionic gtest main be compatible with gtest output format for cts test."
* commit 'b220c4b609270cc6b76c4635d91d1f851aa63e57':
  Make bionic gtest main be compatible with gtest output format for cts test.
2015-02-27 18:36:08 +00:00
Yabin Cui
b220c4b609 Merge "Make bionic gtest main be compatible with gtest output format for cts test." 2015-02-27 18:29:48 +00:00
Yabin Cui
f6237470a3 Make bionic gtest main be compatible with gtest output format for cts test.
Bug: 17589740
Change-Id: Ifab521da379a33bf0a7bf11c21386f936f0d494c
2015-02-26 19:03:54 -08:00
Yabin Cui
ce751b3536 Lose bionic_atomic stuff.
Bug: 17177189
Change-Id: Ie1f5d7af359d31b14f58e53ec89c72111362d7ec
2015-02-26 13:45:06 -08:00
Christopher Ferris
99491a2988 am 21ddfa23: am e6c7e294: am f8eec1e5: Merge "Allow wildcards to match arg values."
* commit '21ddfa23f67cd0a9db7eff0c8a4ada5df1931f15':
  Allow wildcards to match arg values.
2015-02-26 04:04:42 +00:00
Yabin Cui
76f0031e4d am 8a661472: am 00ba42b9: am 7355d29b: Merge "Make getgrent deprecated."
* commit '8a6614726802170a19e5e68543a06117596def06':
  Make getgrent deprecated.
2015-02-26 04:04:41 +00:00
Christopher Ferris
21ddfa23f6 am e6c7e294: am f8eec1e5: Merge "Allow wildcards to match arg values."
* commit 'e6c7e294820a3b6c3569decad57d29eac31254b3':
  Allow wildcards to match arg values.
2015-02-26 03:58:38 +00:00
Yabin Cui
8a66147268 am 00ba42b9: am 7355d29b: Merge "Make getgrent deprecated."
* commit '00ba42b9f509baa706c93f648c8ad7c84c89d6d0':
  Make getgrent deprecated.
2015-02-26 03:58:37 +00:00
Christopher Ferris
e6c7e29482 am f8eec1e5: Merge "Allow wildcards to match arg values."
* commit 'f8eec1e54fbfb7b0304b73cb9ce2de44760a672e':
  Allow wildcards to match arg values.
2015-02-26 03:52:35 +00:00
Yabin Cui
00ba42b9f5 am 7355d29b: Merge "Make getgrent deprecated."
* commit '7355d29bbd106bd4ab3f5be1b743fb73e8c3b4da':
  Make getgrent deprecated.
2015-02-26 03:52:34 +00:00
Christopher Ferris
f8eec1e54f Merge "Allow wildcards to match arg values." 2015-02-26 03:47:12 +00:00
Yabin Cui
7355d29bbd Merge "Make getgrent deprecated." 2015-02-26 03:46:41 +00:00
Yabin Cui
d2f0f768e5 am 0a2db6e2: am 253fcfe7: am 398ef152: Merge "Move endpwent to ndk_cruft.cpp."
* commit '0a2db6e26f3a605df3d6c62e90b86b894be6f64b':
  Move endpwent to ndk_cruft.cpp.
2015-02-26 03:06:26 +00:00
Yabin Cui
072a326231 am f244b6d6: am fbff0fd5: am f1b4a5d5: Merge "Make tempnam/mktemp deprecated."
* commit 'f244b6d6920bdc9e7d2b597b0ac790759b603f72':
  Make tempnam/mktemp deprecated.
2015-02-26 03:06:24 +00:00
Yabin Cui
b8b5a72f41 Make getgrent deprecated.
Bug: 19340053
Change-Id: Ie8b97f840d9e87555e6a3d591fc87bc08c2d6820
2015-02-25 19:05:37 -08:00
Yabin Cui
0a2db6e26f am 253fcfe7: am 398ef152: Merge "Move endpwent to ndk_cruft.cpp."
* commit '253fcfe70e1bb87ca66e2886d90f6906e8d27f12':
  Move endpwent to ndk_cruft.cpp.
2015-02-26 02:58:56 +00:00
Yabin Cui
f244b6d692 am fbff0fd5: am f1b4a5d5: Merge "Make tempnam/mktemp deprecated."
* commit 'fbff0fd516a5d6499b3417eb194b0631ae50094a':
  Make tempnam/mktemp deprecated.
2015-02-26 02:58:50 +00:00
Yabin Cui
253fcfe70e am 398ef152: Merge "Move endpwent to ndk_cruft.cpp."
* commit '398ef152d50854fccb21086e30b5cc24641b3e2a':
  Move endpwent to ndk_cruft.cpp.
2015-02-26 02:52:36 +00:00
Yabin Cui
fbff0fd516 am f1b4a5d5: Merge "Make tempnam/mktemp deprecated."
* commit 'f1b4a5d510c693d7cffc76cade9ab049f7dfed07':
  Make tempnam/mktemp deprecated.
2015-02-26 02:52:35 +00:00
Yabin Cui
398ef152d5 Merge "Move endpwent to ndk_cruft.cpp." 2015-02-26 02:23:08 +00:00
Yabin Cui
f1b4a5d510 Merge "Make tempnam/mktemp deprecated." 2015-02-26 02:17:17 +00:00
Yabin Cui
9b4f77f5cf Make tempnam/mktemp deprecated.
Bug: 19340053
Change-Id: Ib02c65814ef97cd1758fd8142b73736cc8bc1700
2015-02-25 15:42:01 -08:00
Yabin Cui
52d7f1a94f Move endpwent to ndk_cruft.cpp.
Bug: 19109159
Change-Id: I3683a247643006ea6d6bcf3845f57d1908d457d7
2015-02-25 14:58:08 -08:00
Christopher Ferris
339ac378ca Allow wildcards to match arg values.
Change-Id: I38230b500bb8f8f69af0d7c740855a401cd12898
2015-02-25 14:56:32 -08:00
Yabin Cui
b448acfdba am 561d57a2: am f5d4f322: am 448a8596: Merge "Switch system_properties.cpp from bionic atomic operations to stdatomic."
* commit '561d57a246179d7148781eea4659fa960e93df02':
  Switch system_properties.cpp from bionic atomic operations to stdatomic.
2015-02-25 21:21:25 +00:00
Yabin Cui
561d57a246 am f5d4f322: am 448a8596: Merge "Switch system_properties.cpp from bionic atomic operations to stdatomic."
* commit 'f5d4f322bbea9e5a5a1ec4025a0289123c667e5f':
  Switch system_properties.cpp from bionic atomic operations to stdatomic.
2015-02-25 21:14:44 +00:00
Yabin Cui
f5d4f322bb am 448a8596: Merge "Switch system_properties.cpp from bionic atomic operations to stdatomic."
* commit '448a85968da1e4622e829bb48fd888a38f9f6c49':
  Switch system_properties.cpp from bionic atomic operations to stdatomic.
2015-02-25 21:10:42 +00:00
Yabin Cui
448a85968d Merge "Switch system_properties.cpp from bionic atomic operations to stdatomic." 2015-02-25 21:04:56 +00:00
Yabin Cui
baeac9b294 am e4093959: am a1e4a4a3: am 8c41eae6: Merge "Move getusershell/endusershell/setusershell to ndk_cruft.cpp."
* commit 'e4093959c06ee37f28461a460f553882eb010c4f':
  Move getusershell/endusershell/setusershell to ndk_cruft.cpp.
2015-02-25 17:04:56 +00:00
Yabin Cui
2955985437 am d16844ab: am 4600bdac: am af3ba5c8: Merge "Make all output of child test go to parent process in gtest_main."
* commit 'd16844abcea1cc50a64694367d6571c084c6a745':
  Make all output of child test go to parent process in gtest_main.
2015-02-25 17:04:55 +00:00
Nick Kralevich
328ab034c2 am fccf68ac: am e93bc6bb: am d91ded81: Merge "Fix "faccessat ignores flags""
* commit 'fccf68ace95348338e8b19afd6101581588a4f83':
  Fix "faccessat ignores flags"
2015-02-25 17:04:53 +00:00
Yabin Cui
e4093959c0 am a1e4a4a3: am 8c41eae6: Merge "Move getusershell/endusershell/setusershell to ndk_cruft.cpp."
* commit 'a1e4a4a3c68fc99958cc7a6e6fb7fed58feeaae8':
  Move getusershell/endusershell/setusershell to ndk_cruft.cpp.
2015-02-25 16:52:39 +00:00
Yabin Cui
d16844abce am 4600bdac: am af3ba5c8: Merge "Make all output of child test go to parent process in gtest_main."
* commit '4600bdac709969408ac446507d85881db55b0ca7':
  Make all output of child test go to parent process in gtest_main.
2015-02-25 16:52:35 +00:00
Nick Kralevich
fccf68ace9 am e93bc6bb: am d91ded81: Merge "Fix "faccessat ignores flags""
* commit 'e93bc6bbe8ce180187e3914d0a7494cfe84f6255':
  Fix "faccessat ignores flags"
2015-02-25 16:52:22 +00:00
Yabin Cui
a1e4a4a3c6 am 8c41eae6: Merge "Move getusershell/endusershell/setusershell to ndk_cruft.cpp."
* commit '8c41eae6fcdb6cad1f6c46ae01708ead6b734060':
  Move getusershell/endusershell/setusershell to ndk_cruft.cpp.
2015-02-25 00:05:52 +00:00
Yabin Cui
8c41eae6fc Merge "Move getusershell/endusershell/setusershell to ndk_cruft.cpp." 2015-02-25 00:00:51 +00:00
Yabin Cui
4600bdac70 am af3ba5c8: Merge "Make all output of child test go to parent process in gtest_main."
* commit 'af3ba5c87319e19c10be6755b37af92521f702c2':
  Make all output of child test go to parent process in gtest_main.
2015-02-24 23:48:02 +00:00
Yabin Cui
af3ba5c873 Merge "Make all output of child test go to parent process in gtest_main." 2015-02-24 23:40:31 +00:00
Yabin Cui
7fb680bfda Move getusershell/endusershell/setusershell to ndk_cruft.cpp.
Bug: 19108648
Change-Id: I65134040345398dde612c4325d902db58f3bd2be
2015-02-24 14:46:59 -08:00
Yabin Cui
ea9c933f36 Make all output of child test go to parent process in gtest_main.
Change-Id: Iad460e89755051cdb99593cbf42c97d9a359f32b
2015-02-24 14:44:51 -08:00
Nick Kralevich
e93bc6bbe8 am d91ded81: Merge "Fix "faccessat ignores flags""
* commit 'd91ded81376a10a1c89f7a5ae3c462ae3b24188e':
  Fix "faccessat ignores flags"
2015-02-24 21:52:36 +00:00
Nick Kralevich
d91ded8137 Merge "Fix "faccessat ignores flags"" 2015-02-24 21:49:09 +00:00
Nick Kralevich
35778253a5 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
2015-02-24 13:40:43 -08:00
Yabin Cui
b8ce474217 Switch system_properties.cpp from bionic atomic operations to stdatomic.
Bug: 17177189
Change-Id: I42e05ad1c490cc7a8040138151afc0ee72a9b63f
2015-02-24 10:41:53 -08:00
Elliott Hughes
df93bc50fc am 549aab61: am 4ec60a01: am 2aef607b: Merge "Fix dup2 in the case where the two fds are equal."
* commit '549aab610a36b696a4586e33c4b709a29a668c1a':
  Fix dup2 in the case where the two fds are equal.
2015-02-24 06:06:43 +00:00
Elliott Hughes
549aab610a am 4ec60a01: am 2aef607b: Merge "Fix dup2 in the case where the two fds are equal."
* commit '4ec60a017859b39d490cfeb089ed30da09863def':
  Fix dup2 in the case where the two fds are equal.
2015-02-24 06:03:02 +00:00
Elliott Hughes
4ec60a0178 am 2aef607b: Merge "Fix dup2 in the case where the two fds are equal."
* commit '2aef607b25c463baed5ae70d14212e24ea7bcf2b':
  Fix dup2 in the case where the two fds are equal.
2015-02-24 05:59:52 +00:00
Elliott Hughes
2aef607b25 Merge "Fix dup2 in the case where the two fds are equal." 2015-02-24 05:55:37 +00:00
Elliott Hughes
be52e65817 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
2015-02-23 21:52:56 -08:00
Elliott Hughes
7d85c81f31 am aced654f: am 491c09e0: am 393bdb15: Merge "Add RLIM_SAVED_CUR and RLIM_SAVED_MAX."
* commit 'aced654f583682074db54b10706511453a7521da':
  Add RLIM_SAVED_CUR and RLIM_SAVED_MAX.
2015-02-24 04:54:26 +00:00
Elliott Hughes
aced654f58 am 491c09e0: am 393bdb15: Merge "Add RLIM_SAVED_CUR and RLIM_SAVED_MAX."
* commit '491c09e0d5921edd57da2efb0c8ed4f32df93fe2':
  Add RLIM_SAVED_CUR and RLIM_SAVED_MAX.
2015-02-23 22:52:54 +00:00
Elliott Hughes
491c09e0d5 am 393bdb15: Merge "Add RLIM_SAVED_CUR and RLIM_SAVED_MAX."
* commit '393bdb156d5024a03f03425a977d0518c84dbb98':
  Add RLIM_SAVED_CUR and RLIM_SAVED_MAX.
2015-02-23 22:45:14 +00:00
Elliott Hughes
393bdb156d Merge "Add RLIM_SAVED_CUR and RLIM_SAVED_MAX." 2015-02-23 22:36:06 +00:00
Elliott Hughes
6af62e0d50 Add RLIM_SAVED_CUR and RLIM_SAVED_MAX.
Change-Id: Ia6be76460bfcf852832325c5f36cb272f49a4b87
2015-02-23 13:41:40 -08:00
Elliott Hughes
1d0ded2116 am c0e7f55d: am 07e218a4: am 3d83b189: Merge "[MIPS64] Fix mips64 build."
* commit 'c0e7f55d9b89c7d80083842223c941c413bc3942':
  [MIPS64] Fix mips64 build.
2015-02-23 16:19:21 +00:00
Elliott Hughes
c0e7f55d9b am 07e218a4: am 3d83b189: Merge "[MIPS64] Fix mips64 build."
* commit '07e218a484d8a1ac71c3b9317e86f5ba39aae919':
  [MIPS64] Fix mips64 build.
2015-02-23 16:12:38 +00:00
Elliott Hughes
07e218a484 am 3d83b189: Merge "[MIPS64] Fix mips64 build."
* commit '3d83b18970f32467596830845793b18a858f59e6':
  [MIPS64] Fix mips64 build.
2015-02-23 16:09:17 +00:00
Elliott Hughes
3d83b18970 Merge "[MIPS64] Fix mips64 build." 2015-02-23 16:04:20 +00:00
Nikola Veljkovic
daf8911079 [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
2015-02-23 16:21:31 +01:00
Greg Hackmann
f937761134 am 973ceef6: am 4602d8c7: am 04bbef37: Merge "Fix 64-bit benchmark build"
* commit '973ceef6869a7dad02195389547bf6177bb6cb34':
  Fix 64-bit benchmark build
2015-02-20 19:30:41 +00:00
Greg Hackmann
973ceef686 am 4602d8c7: am 04bbef37: Merge "Fix 64-bit benchmark build"
* commit '4602d8c7621ffd87e32f53c8f7e8ac5453a404ca':
  Fix 64-bit benchmark build
2015-02-20 19:27:13 +00:00
Greg Hackmann
4602d8c762 am 04bbef37: Merge "Fix 64-bit benchmark build"
* commit '04bbef377b9941bf6d67d9c515b6640a314fb032':
  Fix 64-bit benchmark build
2015-02-20 19:21:19 +00:00
Greg Hackmann
04bbef377b Merge "Fix 64-bit benchmark build" 2015-02-20 19:16:49 +00:00
Greg Hackmann
567bfb3779 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>
2015-02-20 11:07:38 -08:00
Elliott Hughes
3f89ed1b47 am 5bf236e9: am 6421f8f5: am c39eef71: Merge "valgrind can\'t find syscall because we didn\'t put it in <unistd.h>."
* commit '5bf236e95f75de0169abbb22fc083c767ec681a6':
  valgrind can't find syscall because we didn't put it in <unistd.h>.
2015-02-20 17:15:16 +00:00
Elliott Hughes
5bf236e95f am 6421f8f5: am c39eef71: Merge "valgrind can\'t find syscall because we didn\'t put it in <unistd.h>."
* commit '6421f8f5b21357b3f956f4b20c3622f96863a219':
  valgrind can't find syscall because we didn't put it in <unistd.h>.
2015-02-20 17:08:47 +00:00
Elliott Hughes
6421f8f5b2 am c39eef71: Merge "valgrind can\'t find syscall because we didn\'t put it in <unistd.h>."
* commit 'c39eef71a7f66b69e2216a51d0e7fbc1796d0696':
  valgrind can't find syscall because we didn't put it in <unistd.h>.
2015-02-20 17:02:25 +00:00
Elliott Hughes
c39eef71a7 Merge "valgrind can't find syscall because we didn't put it in <unistd.h>." 2015-02-20 16:56:58 +00:00
Elliott Hughes
4c5891d93d valgrind can't find syscall because we didn't put it in <unistd.h>.
Change-Id: I1e47291d4476bd2816138a8cf58f29d4986d39e3
2015-02-19 22:49:44 -08:00
Christopher Ferris
1e0f763c9a am e84dff9a: am 479070c5: am 324313a9: Merge "Refactor the benchmark code."
* commit 'e84dff9a1f1d583c428e137cf0120fdd4ce315ce':
  Refactor the benchmark code.
2015-02-20 01:10:48 +00:00
Christopher Ferris
e84dff9a1f am 479070c5: am 324313a9: Merge "Refactor the benchmark code."
* commit '479070c51e34f9f9f809df4daa8184e5b2947f14':
  Refactor the benchmark code.
2015-02-20 01:03:22 +00:00
Christopher Ferris
479070c51e am 324313a9: Merge "Refactor the benchmark code."
* commit '324313a9e58c0e8d2546d124d8fcf04306a114f5':
  Refactor the benchmark code.
2015-02-20 00:59:18 +00:00
Christopher Ferris
324313a9e5 Merge "Refactor the benchmark code." 2015-02-20 00:53:25 +00:00
Bill Yi
c390f2eae6 am f5700e1f: am a6395dda: Merge commit \'9d7f68ebfd79b1ce54dc56bceb7346f34615e5a1\' into HEAD
* commit 'f5700e1fd4eb70f3458b3bd508a9bf945561d22a':
2015-02-20 00:26:52 +00:00
Bill Yi
f5700e1fd4 am a6395dda: Merge commit \'9d7f68ebfd79b1ce54dc56bceb7346f34615e5a1\' into HEAD
* commit 'a6395dda54057170fc66faf00410e983202aa7e0':
2015-02-20 00:22:45 +00:00
Christopher Ferris
df4942c04a 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
2015-02-19 14:58:24 -08:00
Christopher Ferris
cd4e501223 am 4379016a: Revert "Modify test to avoid race condition."
* commit '4379016a20131740e25b33b2b09a2caef0aa62bd':
  Revert "Modify test to avoid race condition."
2015-02-19 22:36:17 +00:00
Bill Yi
a6395dda54 Merge commit '9d7f68ebfd79b1ce54dc56bceb7346f34615e5a1' into HEAD 2015-02-19 14:30:25 -08:00
Christopher Ferris
4379016a20 Revert "Modify test to avoid race condition."
This reverts commit 3da136aa47.

This change is not needed any where but lmp mr1.

Change-Id: I3f38e2e8e418959a487bc0c4148d3238743e4626
2015-02-19 13:35:47 -08:00
Elliott Hughes
77a24e14c3 am 4dc261b1: am d071b814: am 97484d3a: Merge "Add GNU extensions mempcpy and wmemcpy."
* commit '4dc261b13c351edf26efd18aca448aa98f925d41':
  Add GNU extensions mempcpy and wmemcpy.
2015-02-19 20:27:25 +00:00
Dan Albert
60787a931f am c2c319b2: am 43379c9c: am 3e1b5f46: Merge "Parameterize use of clang in libc_ndk."
* commit 'c2c319b2cb5dc3a7928121ecdd4312331dfb0496':
  Parameterize use of clang in libc_ndk.
2015-02-19 20:26:35 +00:00
Christopher Ferris
d2c65d8815 am 9ccce5d7: am 3da136aa: Modify test to avoid race condition.
* commit '9ccce5d7efde606914ec0b88fa50785b21ea672b':
  Modify test to avoid race condition.
2015-02-19 20:26:26 +00:00
Elliott Hughes
8c43e225dd am 0f13eac9: am 1cb009fb: am d3fa31a5: Merge "[MIPS] Fix setjmp signals"
* commit '0f13eac957c71e827e282fdd69de2dabeba28780':
  [MIPS] Fix setjmp signals
2015-02-19 17:36:33 +00:00
Elliott Hughes
4dc261b13c am d071b814: am 97484d3a: Merge "Add GNU extensions mempcpy and wmemcpy."
* commit 'd071b814ac5674ca032c05f369b2606cf3520332':
  Add GNU extensions mempcpy and wmemcpy.
2015-02-19 16:01:31 +00:00
Elliott Hughes
d071b814ac am 97484d3a: Merge "Add GNU extensions mempcpy and wmemcpy."
* commit '97484d3a9d0d822aeaaa1547aeb76d7669076082':
  Add GNU extensions mempcpy and wmemcpy.
2015-02-19 15:55:12 +00:00
Elliott Hughes
97484d3a9d Merge "Add GNU extensions mempcpy and wmemcpy." 2015-02-19 15:49:53 +00:00
Elliott Hughes
3cfb52aab2 Add GNU extensions mempcpy and wmemcpy.
Used by elfutils. On the bright side, they stopped using __mempcpy.

Bug: 18374026
Change-Id: Id29bbe6ef1c5ed5a171bb6c32182f129d8332abb
2015-02-18 22:02:56 -08:00
Dan Albert
c2c319b2cb am 43379c9c: am 3e1b5f46: Merge "Parameterize use of clang in libc_ndk."
* commit '43379c9cfd7416e448b9b2834dd4f7b80697942a':
  Parameterize use of clang in libc_ndk.
2015-02-19 02:44:25 +00:00
Dan Albert
43379c9cfd am 3e1b5f46: Merge "Parameterize use of clang in libc_ndk."
* commit '3e1b5f46c07aef5983ecf2feb1c3369b2cd200c0':
  Parameterize use of clang in libc_ndk.
2015-02-19 02:37:21 +00:00
Dan Albert
3e1b5f46c0 Merge "Parameterize use of clang in libc_ndk." 2015-02-19 02:33:08 +00:00
Christopher Ferris
9ccce5d7ef am 3da136aa: Modify test to avoid race condition.
* commit '3da136aa47e2d1608b98abb2580f024b36f92831':
  Modify test to avoid race condition.
2015-02-19 02:12:45 +00:00
Christopher Ferris
3da136aa47 Modify test to avoid race condition.
There is a possible race if a timer is set to trigger at nearly the same
time as it is set. Since nobody uses the timers like this, modify the test
so this doesn't happen. The race that this can provoke has been fixed in
aosp.

Bug: 19423618
Change-Id: I21084c99da5ae46f404936d673dae6bad7c82caa
2015-02-18 17:45:50 -08:00
Dan Albert
2c678e6644 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
2015-02-18 17:37:52 -08:00
Elliott Hughes
0f13eac957 am 1cb009fb: am d3fa31a5: Merge "[MIPS] Fix setjmp signals"
* commit '1cb009fb5eb513e838085d75617db676fcfa7aa7':
  [MIPS] Fix setjmp signals
2015-02-19 01:12:41 +00:00
Elliott Hughes
1cb009fb5e am d3fa31a5: Merge "[MIPS] Fix setjmp signals"
* commit 'd3fa31a55d542d51fc3f2df46af7c1b701ecb86e':
  [MIPS] Fix setjmp signals
2015-02-19 01:06:06 +00:00
Elliott Hughes
d3fa31a55d Merge "[MIPS] Fix setjmp signals" 2015-02-19 01:00:19 +00:00
Yabin Cui
ed806d772a am 82a36f31: am 37197363: am 4add77b9: Merge "Make gets() deprecated."
* commit '82a36f31c08ca890a30863dc68819566e26b0495':
  Make gets() deprecated.
2015-02-18 23:04:28 +00:00
Elliott Hughes
d0051b8585 am 4a19d12b: am 08148bc9: am 1dbc6bb0: Merge "Implement _FILE_OFFSET_BITS (mostly)."
* commit '4a19d12b49bd19e38c136cf6e586a13095bcca72':
  Implement _FILE_OFFSET_BITS (mostly).
2015-02-18 23:04:27 +00:00
Yabin Cui
82a36f31c0 am 37197363: am 4add77b9: Merge "Make gets() deprecated."
* commit '371973633c579a32125c4b01c4235eb5f529cb4e':
  Make gets() deprecated.
2015-02-18 22:57:05 +00:00
Elliott Hughes
4a19d12b49 am 08148bc9: am 1dbc6bb0: Merge "Implement _FILE_OFFSET_BITS (mostly)."
* commit '08148bc9825ea337168819f3d92a0c7ef4ffe1f9':
  Implement _FILE_OFFSET_BITS (mostly).
2015-02-18 22:57:04 +00:00
Yabin Cui
371973633c am 4add77b9: Merge "Make gets() deprecated."
* commit '4add77b93c0c61381faa9d4d8dc62f81cafcc69a':
  Make gets() deprecated.
2015-02-18 22:50:54 +00:00
Elliott Hughes
08148bc982 am 1dbc6bb0: Merge "Implement _FILE_OFFSET_BITS (mostly)."
* commit '1dbc6bb02521ba1535748826eeaf28404160d788':
  Implement _FILE_OFFSET_BITS (mostly).
2015-02-18 22:50:32 +00:00
Yabin Cui
4add77b93c Merge "Make gets() deprecated." 2015-02-18 21:33:02 +00:00
Yabin Cui
913fcb274f Make gets() deprecated.
gets is already deprecated in glibc. Others with __warnattr are not deprecated.

Change-Id: I80a276d2b5964630218be47f1c94b146c0d31151
2015-02-18 12:20:32 -08:00
Elliott Hughes
1dbc6bb025 Merge "Implement _FILE_OFFSET_BITS (mostly)." 2015-02-18 18:01:05 +00:00
Neil Fuller
5bef299799 am f4d84ade: am 77f3c847: am 9ec37c7f: Merge "Update tzdata to tzdata2015a"
* commit 'f4d84ade1a334ca4869663a919a0399eb3e71474':
  Update tzdata to tzdata2015a
2015-02-18 11:39:28 +00:00
Dan Albert
8aa73e6441 am c69654ea: am a9751801: am 5890ec3e: Merge "Update NDK compatlib for 4.1.2."
* commit 'c69654ea602987b08eaa2015c782daefc425241c':
  Update NDK compatlib for 4.1.2.
2015-02-18 11:38:31 +00:00
Dan Albert
e554758063 am d66e5725: am 814bce07: am 21ba1d4c: Merge "Update the NDK compatlib for 4.4.4 and ToT."
* commit 'd66e57257c4538e1b8569a5ef65af6a6ddf29770':
  Update the NDK compatlib for 4.4.4 and ToT.
2015-02-18 11:38:30 +00:00
Neil Fuller
f4d84ade1a am 77f3c847: am 9ec37c7f: Merge "Update tzdata to tzdata2015a"
* commit '77f3c847c4b04c8d28f81b3cb0c2782fadf928f9':
  Update tzdata to tzdata2015a
2015-02-18 10:18:10 +00:00
Neil Fuller
77f3c847c4 am 9ec37c7f: Merge "Update tzdata to tzdata2015a"
* commit '9ec37c7fa979c573e5743c343d38370cab1a67e4':
  Update tzdata to tzdata2015a
2015-02-18 10:13:59 +00:00
Neil Fuller
9ec37c7fa9 Merge "Update tzdata to tzdata2015a" 2015-02-18 09:42:33 +00:00
Elliott Hughes
68dc20d411 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
2015-02-17 19:54:43 -08:00
Dan Albert
c69654ea60 am a9751801: am 5890ec3e: Merge "Update NDK compatlib for 4.1.2."
* commit 'a9751801481e112bbe1fe97e7300a395f418b96a':
  Update NDK compatlib for 4.1.2.
2015-02-18 01:17:12 +00:00
Dan Albert
d66e57257c am 814bce07: am 21ba1d4c: Merge "Update the NDK compatlib for 4.4.4 and ToT."
* commit '814bce074dac0359a7251904000d2f89ad6164a4':
  Update the NDK compatlib for 4.4.4 and ToT.
2015-02-18 01:17:11 +00:00
Dan Albert
a975180148 am 5890ec3e: Merge "Update NDK compatlib for 4.1.2."
* commit '5890ec3e229cbe115308e103111fec471f2319b7':
  Update NDK compatlib for 4.1.2.
2015-02-18 01:10:42 +00:00
Dan Albert
814bce074d am 21ba1d4c: Merge "Update the NDK compatlib for 4.4.4 and ToT."
* commit '21ba1d4ce43b1619e0d0a8248f6249810cabe374':
  Update the NDK compatlib for 4.4.4 and ToT.
2015-02-18 01:10:41 +00:00
Dan Albert
5890ec3e22 Merge "Update NDK compatlib for 4.1.2." 2015-02-18 01:05:48 +00:00
Dan Albert
21ba1d4ce4 Merge "Update the NDK compatlib for 4.4.4 and ToT." 2015-02-18 01:05:44 +00:00
Dan Albert
a6395e1fd0 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
2015-02-17 17:02:42 -08:00
Dan Albert
9a9ea3a280 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
2015-02-17 17:02:34 -08:00
Yabin Cui
0b45632bb8 am 3c1904fc: am faf5e195: am 0e61c2c0: Merge "Revert "Move use of __warnattr to __deprecated.""
* commit '3c1904fc527229b1c0b20e6b81fb92fb7564928e':
  Revert "Move use of __warnattr to __deprecated."
2015-02-18 00:40:15 +00:00
Yabin Cui
c4ab9e443b am 89838e6f: am 0769bb4f: am b5c23796: Merge "Move use of __warnattr to __deprecated."
* commit '89838e6f3468d9e01db30ee0d53265d2bf2b0432':
  Move use of __warnattr to __deprecated.
2015-02-18 00:30:31 +00:00
Christopher Ferris
47e1fe7191 am 6ead5855: am 2f86c3de: am 54b61b7c: Merge "Accuracy tests for libm"
* commit '6ead5855cbe9792b49c248dc649ec94ac4658b5c':
  Accuracy tests for libm
2015-02-18 00:28:43 +00:00
Yabin Cui
8a35be9efb am 7b07204d: am 515c1f23: am 89dad68e: Merge "Change getgrent error declaration message to proper style."
* commit '7b07204d0c56c92660463e9a968e874efc746564':
  Change getgrent error declaration message to proper style.
2015-02-18 00:28:42 +00:00
Elliott Hughes
6bf7862eb5 am e64fd0c6: am 5a973492: am c2085138: Merge "Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX."
* commit 'e64fd0c6c49b4db875a3b14652dd8c2a4b534aaf':
  Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX.
2015-02-18 00:28:35 +00:00
Yabin Cui
3c1904fc52 am faf5e195: am 0e61c2c0: Merge "Revert "Move use of __warnattr to __deprecated.""
* commit 'faf5e195e1a06f8c738b34cc939e6432535c8ff3':
  Revert "Move use of __warnattr to __deprecated."
2015-02-18 00:03:45 +00:00
Yabin Cui
faf5e195e1 am 0e61c2c0: Merge "Revert "Move use of __warnattr to __deprecated.""
* commit '0e61c2c0ea201e157d0d3d3c04564588bcfb7c66':
  Revert "Move use of __warnattr to __deprecated."
2015-02-17 23:59:58 +00:00
Yabin Cui
0e61c2c0ea Merge "Revert "Move use of __warnattr to __deprecated."" 2015-02-17 23:56:29 +00:00
Yabin Cui
784de4e50a Revert "Move use of __warnattr to __deprecated."
This reverts commit 4645c4f62d.

Change-Id: I6c1062d54a4e2c4f41ce7a403e4e7840e6339146
2015-02-17 23:54:40 +00:00
Yabin Cui
89838e6f34 am 0769bb4f: am b5c23796: Merge "Move use of __warnattr to __deprecated."
* commit '0769bb4fcf5dfcc346330430a7f649d3be8f2346':
  Move use of __warnattr to __deprecated.
2015-02-17 23:20:55 +00:00
Yabin Cui
0769bb4fcf am b5c23796: Merge "Move use of __warnattr to __deprecated."
* commit 'b5c23796872dee26d7fa88f0a41801dcc6090d99':
  Move use of __warnattr to __deprecated.
2015-02-17 23:16:01 +00:00
Yabin Cui
b5c2379687 Merge "Move use of __warnattr to __deprecated." 2015-02-17 23:10:31 +00:00
Yabin Cui
4645c4f62d 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
2015-02-17 14:14:45 -08:00
Christopher Ferris
6ead5855cb am 2f86c3de: am 54b61b7c: Merge "Accuracy tests for libm"
* commit '2f86c3deb52bfd46614b16b9debbadac41baec89':
  Accuracy tests for libm
2015-02-17 21:50:27 +00:00
Yabin Cui
7b07204d0c am 515c1f23: am 89dad68e: Merge "Change getgrent error declaration message to proper style."
* commit '515c1f234bade0ad63d25c07cf57f058fa5934ea':
  Change getgrent error declaration message to proper style.
2015-02-17 21:46:39 +00:00
Christopher Ferris
2f86c3deb5 am 54b61b7c: Merge "Accuracy tests for libm"
* commit '54b61b7ca7d7c9c7474e2beb35d20a9ab635529f':
  Accuracy tests for libm
2015-02-17 21:46:38 +00:00
Christopher Ferris
54b61b7ca7 Merge "Accuracy tests for libm" 2015-02-17 21:41:41 +00:00
Yabin Cui
515c1f234b am 89dad68e: Merge "Change getgrent error declaration message to proper style."
* commit '89dad68efb07ef0868c2ac35737a4b2c83aea326':
  Change getgrent error declaration message to proper style.
2015-02-17 21:36:33 +00:00
Elliott Hughes
e64fd0c6c4 am 5a973492: am c2085138: Merge "Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX."
* commit '5a9734920c25ebb1aed389fd87fa9a26904aa239':
  Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX.
2015-02-17 21:32:28 +00:00
Yabin Cui
89dad68efb Merge "Change getgrent error declaration message to proper style." 2015-02-17 21:29:27 +00:00
Elliott Hughes
5a9734920c am c2085138: Merge "Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX."
* commit 'c20851380cf5466a8bc422e7c26d3868a95423a9':
  Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX.
2015-02-17 21:26:25 +00:00
Elliott Hughes
c20851380c Merge "Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX." 2015-02-17 21:20:39 +00:00
Yabin Cui
62533de98e Change getgrent error declaration message to proper style.
Bug: 19340053
Change-Id: I9c47a2016f356d171a5f2082acb8391d81e019b2
2015-02-17 11:33:42 -08:00
Elliott Hughes
dd9798b0fa am ebaf7a25: am f8a49b04: am fb48c682: Merge "Fix memchr overflow."
* commit 'ebaf7a250f6a9913e109a2ef9939c6d54de9cb63':
  Fix memchr overflow.
2015-02-17 18:11:12 +00:00
Elliott Hughes
ebaf7a250f am f8a49b04: am fb48c682: Merge "Fix memchr overflow."
* commit 'f8a49b04a981d867c4deda6f27deaf702711cfc1':
  Fix memchr overflow.
2015-02-17 18:04:53 +00:00
Elliott Hughes
f8a49b04a9 am fb48c682: Merge "Fix memchr overflow."
* commit 'fb48c68221afb1f9e7c63a15a20cca0857d1b9f9':
  Fix memchr overflow.
2015-02-17 17:58:51 +00:00
Elliott Hughes
be6a44566a Fix sysconf for _SC_CHILD_MAX and _SC_OPEN_MAX.
Change-Id: I656f613166bd604f35b31e5ec042a5230c6b82b8
2015-02-17 09:55:58 -08:00
Elliott Hughes
fb48c68221 Merge "Fix memchr overflow." 2015-02-17 17:54:40 +00:00
Elliott Hughes
46e1da2dee am ea3fe53a: am 1084911f: am 40d06b25: Merge "POSIX says flock is in <sys/file.h>, not <unistd.h>."
* commit 'ea3fe53ac520971a26330c355aaf9854f45e60b3':
  POSIX says flock is in <sys/file.h>, not <unistd.h>.
2015-02-17 17:29:53 +00:00
Elliott Hughes
ea3fe53ac5 am 1084911f: am 40d06b25: Merge "POSIX says flock is in <sys/file.h>, not <unistd.h>."
* commit '1084911fc297b262600a5caed9a94d6ddde7cc66':
  POSIX says flock is in <sys/file.h>, not <unistd.h>.
2015-02-17 17:23:26 +00:00
Elliott Hughes
1084911fc2 am 40d06b25: Merge "POSIX says flock is in <sys/file.h>, not <unistd.h>."
* commit '40d06b25ac86260e9c1701540420c9634bab8bad':
  POSIX says flock is in <sys/file.h>, not <unistd.h>.
2015-02-17 17:19:06 +00:00
Elliott Hughes
40d06b25ac Merge "POSIX says flock is in <sys/file.h>, not <unistd.h>." 2015-02-17 17:09:35 +00:00
Elliott Hughes
92b9c6ff3e POSIX says flock is in <sys/file.h>, not <unistd.h>.
Bug: 19392265
Change-Id: I14d0b56883f0354e13db04a1d140b8f60dae08d7
2015-02-17 09:08:24 -08:00
Neil Fuller
094a8ae078 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 700eb048fb)

Change-Id: I23d94982f634889ab9dcef28cf4a8853224bfd9c
2015-02-17 17:05:48 +00:00
Elliott Hughes
0b8bed7f18 am a822795f: am 66d53434: am dd5c92d4: Merge "Regression test for NDK bug 80199."
* commit 'a822795f53ac52294c637f8aa4be65610ba18cc9':
  Regression test for NDK bug 80199.
2015-02-15 00:30:15 +00:00
Elliott Hughes
a822795f53 am 66d53434: am dd5c92d4: Merge "Regression test for NDK bug 80199."
* commit '66d534347748cec93ea214ebc8d2291b59b58b8d':
  Regression test for NDK bug 80199.
2015-02-15 00:26:58 +00:00
Elliott Hughes
66d5343477 am dd5c92d4: Merge "Regression test for NDK bug 80199."
* commit 'dd5c92d4b0cb6c43002112ab50c1df73d06ab2aa':
  Regression test for NDK bug 80199.
2015-02-15 00:24:03 +00:00
Elliott Hughes
dd5c92d4b0 Merge "Regression test for NDK bug 80199." 2015-02-15 00:18:23 +00:00
Elliott Hughes
e1f9ddaf0d 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
2015-02-14 14:11:50 -08:00
Elliott Hughes
41ef902379 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
2015-02-14 13:21:22 -08:00
Yabin Cui
882c3305ab am 9d7f68eb: am 4812bdf1: am 4181cc69: Merge "Declare getgrent/setgrent/endgrent as missing."
* commit '9d7f68ebfd79b1ce54dc56bceb7346f34615e5a1':
  Declare getgrent/setgrent/endgrent as missing.
2015-02-14 02:52:50 +00:00
Yabin Cui
9d7f68ebfd am 4812bdf1: am 4181cc69: Merge "Declare getgrent/setgrent/endgrent as missing."
* commit '4812bdf1b160fb803dd86a393daf2ae725029c2e':
  Declare getgrent/setgrent/endgrent as missing.
2015-02-14 02:46:43 +00:00
Yabin Cui
4812bdf1b1 am 4181cc69: Merge "Declare getgrent/setgrent/endgrent as missing."
* commit '4181cc691e36546c556274d46d389d7e0cb9cfab':
  Declare getgrent/setgrent/endgrent as missing.
2015-02-14 02:42:32 +00:00
Yabin Cui
4181cc691e Merge "Declare getgrent/setgrent/endgrent as missing." 2015-02-14 02:37:19 +00:00
Dmitriy Ivanov
b3ea70d7d1 am 39c9f7bc: am 88117127: am b81a871c: Merge changes I88827aa0,Ib0b0987a
* commit '39c9f7bc65a56287e54f6ce4a090113c1109c7ef':
  Fix: DT_DEBUG was acting as DT_REL on mips64
  Add missing SHT_LOOS/SHT_HIOS values
2015-02-14 00:52:39 +00:00
Dmitriy Ivanov
39c9f7bc65 am 88117127: am b81a871c: Merge changes I88827aa0,Ib0b0987a
* commit '88117127defa6aeb26840ec8547486aefd5edd73':
  Fix: DT_DEBUG was acting as DT_REL on mips64
  Add missing SHT_LOOS/SHT_HIOS values
2015-02-14 00:49:33 +00:00
Dmitriy Ivanov
88117127de am b81a871c: Merge changes I88827aa0,Ib0b0987a
* commit 'b81a871cbb2d99168bdb8380b6142139135f418f':
  Fix: DT_DEBUG was acting as DT_REL on mips64
  Add missing SHT_LOOS/SHT_HIOS values
2015-02-14 00:43:56 +00:00
Dmitriy Ivanov
b81a871cbb Merge changes I88827aa0,Ib0b0987a
* changes:
  Fix: DT_DEBUG was acting as DT_REL on mips64
  Add missing SHT_LOOS/SHT_HIOS values
2015-02-14 00:38:04 +00:00
Dmitriy Ivanov
c6292ea39c Fix: DT_DEBUG was acting as DT_REL on mips64
Change-Id: I88827aa07d75d06d606c987e6270fcca3ae6216f
2015-02-13 16:34:50 -08:00
Dmitriy Ivanov
13ed3f0af1 Add missing SHT_LOOS/SHT_HIOS values
Change-Id: Ib0b0987a7e85af7863c6ef894263b5980e32344d
2015-02-13 16:34:38 -08:00
Colin Cross
1b8ff453e0 am 15c60ccf: am d6a9f804: am 150403ca: Merge "Make .note.android.ident section type SH_NOTE"
* commit '15c60ccfb100423fb76470ee12642bf4c7072eac':
  Make .note.android.ident section type SH_NOTE
2015-02-13 20:34:29 +00:00
Colin Cross
15c60ccfb1 am d6a9f804: am 150403ca: Merge "Make .note.android.ident section type SH_NOTE"
* commit 'd6a9f804a9c95942bddc9afa243c339d72371008':
  Make .note.android.ident section type SH_NOTE
2015-02-13 20:29:34 +00:00
Colin Cross
d6a9f804a9 am 150403ca: Merge "Make .note.android.ident section type SH_NOTE"
* commit '150403caa8135bef5d5df37e288276ac4f95a234':
  Make .note.android.ident section type SH_NOTE
2015-02-13 20:23:24 +00:00
Yabin Cui
c9d09431b9 Declare getgrent/setgrent/endgrent as missing.
Bug: 19340053
Change-Id: I42bfeda95e6f262e2e74ab47336ea346c2de7e4a
2015-02-13 10:52:35 -08:00
Colin Cross
150403caa8 Merge "Make .note.android.ident section type SH_NOTE" 2015-02-13 18:38:03 +00:00
Jingwei Zhang
56b2b2916b 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>
2015-02-14 00:56:46 +08:00
Colin Cross
e09ab2cc2f 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
2015-02-12 21:37:20 -08:00
Shu Zhang
3a629af0ad libm: arm: Add arm specific floor() optimization
Add arm specific floor() implementation which avoids VMSR and VMRS
instructions.

Change-Id: Ibd4cd7147aa2f98c9b5bbaf74948843ea619dba4
2015-02-12 18:27:58 -08:00
Mark Salyzyn
90126d434a am 233c0da3: am fdea643a: am f9fb52ab: Merge "bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait"
* commit '233c0da3ef17592ddd3eb05c2e0b2729fd16f947':
  bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait
2015-02-12 21:36:29 +00:00
Mark Salyzyn
233c0da3ef am fdea643a: am f9fb52ab: Merge "bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait"
* commit 'fdea643af96379b5a19968d91ba6dc1758d8dcdf':
  bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait
2015-02-12 21:03:12 +00:00
Mark Salyzyn
fdea643af9 am f9fb52ab: Merge "bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait"
* commit 'f9fb52ab309c97d5b2ef4f8e1daff3eed4cf4024':
  bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait
2015-02-12 20:57:41 +00:00
Mark Salyzyn
f9fb52ab30 Merge "bionic: benchmarks: Add BM_semaphore_sem_post_sem_wait" 2015-02-12 20:52:57 +00:00
Colin Cross
2b6e722023 am 71721a31: am baf16422: am 362d6779: Merge "Remove no-op sed step when compiling crtbrand.o"
* commit '71721a31d02ec0f6946b7924cee9d461971512c0':
  Remove no-op sed step when compiling crtbrand.o
2015-02-12 19:30:44 +00:00
Colin Cross
71721a31d0 am baf16422: am 362d6779: Merge "Remove no-op sed step when compiling crtbrand.o"
* commit 'baf164221b1356fe13091c2ca4b357da9a4e237c':
  Remove no-op sed step when compiling crtbrand.o
2015-02-12 18:26:53 +00:00
Colin Cross
baf164221b am 362d6779: Merge "Remove no-op sed step when compiling crtbrand.o"
* commit '362d677924a5f92190884ff225fe64820ad5d997':
  Remove no-op sed step when compiling crtbrand.o
2015-02-12 18:23:08 +00:00
Colin Cross
362d677924 Merge "Remove no-op sed step when compiling crtbrand.o" 2015-02-12 18:16:48 +00:00
Mark Salyzyn
5d064464f1 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
2015-02-12 09:43:58 -08:00
Colin Cross
24958ae4ef 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
2015-02-11 17:40:45 -08:00
Duane Sand
b6d301f42d [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
2015-02-11 15:15:53 -08:00
Christopher Ferris
719a38a5d4 am afccaadc: am 2c0e462f: am 0046c39f: Merge "[MIPS] Fix Mips64 build of libm"
* commit 'afccaadc927fd1a5c7e85288d8ea0c63c205846a':
  [MIPS] Fix Mips64 build of libm
2015-02-11 22:59:35 +00:00
Christopher Ferris
afccaadc92 am 2c0e462f: am 0046c39f: Merge "[MIPS] Fix Mips64 build of libm"
* commit '2c0e462f9819587b6376ed90f315e4d6c0b13612':
  [MIPS] Fix Mips64 build of libm
2015-02-11 21:21:48 +00:00
Christopher Ferris
2c0e462f98 am 0046c39f: Merge "[MIPS] Fix Mips64 build of libm"
* commit '0046c39f9ed6d7335f06e4d866df5ae0e7b4d485':
  [MIPS] Fix Mips64 build of libm
2015-02-11 21:15:45 +00:00
Christopher Ferris
0046c39f9e Merge "[MIPS] Fix Mips64 build of libm" 2015-02-11 21:07:46 +00:00
Duane Sand
3d535d2312 [MIPS] Fix Mips64 build of libm
Change-Id: Ib742b408d4f21d5ec8d455a3fea7c08165c7f321
2015-02-11 12:51:42 -08:00
Elliott Hughes
9fb1938171 am a6754cf2: am fac5e95c: am ddae78fb: Merge "Fix our ftw tests."
* commit 'a6754cf2d88cc411591d2d212e905bfb5e37c8af':
  Fix our ftw tests.
2015-02-11 02:55:05 +00:00
Yabin Cui
fe4c12af73 am 8dc24ee5: am 3a31e697: am ee17e880: Merge "Define MAXHOSTNAMELEN explicitly in source files."
* commit '8dc24ee55e05cfb54af5ef29d9f8a19ef65462c1':
  Define MAXHOSTNAMELEN explicitly in source files.
2015-02-11 02:50:46 +00:00
Mark Salyzyn
3ba3d98add am 37529bc8: am 445c2020: am a57fd419: Merge "bionic: benchmarks: Add BM_semaphore_sem_post"
* commit '37529bc8451dbb4adbcc93234d064e576c456324':
  bionic: benchmarks: Add BM_semaphore_sem_post
2015-02-11 02:49:09 +00:00
Christopher Ferris
b45b7605a4 am 2cfbcb63: am 6fd3bcf6: am 6d99da04: Merge "Cleanup the libm makefile."
* commit '2cfbcb6364492ae95bda724fb7f4256014b11ccc':
  Cleanup the libm makefile.
2015-02-11 02:49:08 +00:00
Yabin Cui
c8711825a4 am c9f8c073: am fa592b2a: am e375ecaa: Merge "Switch pthread_cond_t to <stdatomic.h>."
* commit 'c9f8c07373b2a71d682e3214c65e0c14c7c3f875':
  Switch pthread_cond_t to <stdatomic.h>.
2015-02-11 02:49:06 +00:00
Yabin Cui
edc274cd8b am 88c0719f: am 6a32443a: am a4fc89ba: Merge "Stop including <linux/param.h> in <sys/param.h>."
* commit '88c0719f8fa7c4127ffdf1a304716e3a63117bf7':
  Stop including <linux/param.h> in <sys/param.h>.
2015-02-11 02:49:05 +00:00
Narayan Kamath
665e5daec9 am 17710068: am e163cb28: am f69139e1: Merge "Remove stray log line."
* commit '1771006863186e19ddfcc55f5f870dc56c650177':
  Remove stray log line.
2015-02-11 02:49:03 +00:00
Elliott Hughes
a6754cf2d8 am fac5e95c: am ddae78fb: Merge "Fix our ftw tests."
* commit 'fac5e95c218381cb0c5748aadf70adfcc9414f83':
  Fix our ftw tests.
2015-02-10 23:46:48 +00:00
Elliott Hughes
fac5e95c21 am ddae78fb: Merge "Fix our ftw tests."
* commit 'ddae78fba1ef7291d6a84bce11b0b8fff46f3547':
  Fix our ftw tests.
2015-02-10 23:40:39 +00:00
Elliott Hughes
ddae78fba1 Merge "Fix our ftw tests." 2015-02-10 23:34:19 +00:00
Elliott Hughes
7f925097e8 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
2015-02-10 14:15:33 -08:00
Yabin Cui
8dc24ee55e am 3a31e697: am ee17e880: Merge "Define MAXHOSTNAMELEN explicitly in source files."
* commit '3a31e697ca3c1207bfec64b555bcff7b129348a3':
  Define MAXHOSTNAMELEN explicitly in source files.
2015-02-10 18:09:57 +00:00
Yabin Cui
3a31e697ca am ee17e880: Merge "Define MAXHOSTNAMELEN explicitly in source files."
* commit 'ee17e8800418a74e21dba11658234363cf6f6032':
  Define MAXHOSTNAMELEN explicitly in source files.
2015-02-10 18:00:39 +00:00
Yabin Cui
ee17e88004 Merge "Define MAXHOSTNAMELEN explicitly in source files." 2015-02-10 17:51:33 +00:00
Mark Salyzyn
37529bc845 am 445c2020: am a57fd419: Merge "bionic: benchmarks: Add BM_semaphore_sem_post"
* commit '445c202073f4fd35e1171dc11bcd13a7accf7018':
  bionic: benchmarks: Add BM_semaphore_sem_post
2015-02-10 16:54:32 +00:00
Christopher Ferris
2cfbcb6364 am 6fd3bcf6: am 6d99da04: Merge "Cleanup the libm makefile."
* commit '6fd3bcf6ce2290f4e44547fb875af4ac3c741130':
  Cleanup the libm makefile.
2015-02-10 16:53:33 +00:00
Yabin Cui
c9f8c07373 am fa592b2a: am e375ecaa: Merge "Switch pthread_cond_t to <stdatomic.h>."
* commit 'fa592b2a903a6e5110c6daf0959cc7211fc476d7':
  Switch pthread_cond_t to <stdatomic.h>.
2015-02-10 16:53:28 +00:00
Yabin Cui
88c0719f8f am 6a32443a: am a4fc89ba: Merge "Stop including <linux/param.h> in <sys/param.h>."
* commit '6a32443aa3e2544000314adf80d4e081d36d170d':
  Stop including <linux/param.h> in <sys/param.h>.
2015-02-10 16:51:48 +00:00
Narayan Kamath
1771006863 am e163cb28: am f69139e1: Merge "Remove stray log line."
* commit 'e163cb28b9b89f315000c1c480ee0cb2b3c26744':
  Remove stray log line.
2015-02-10 16:51:44 +00:00
Mark Salyzyn
445c202073 am a57fd419: Merge "bionic: benchmarks: Add BM_semaphore_sem_post"
* commit 'a57fd419bc56add6752cd9fa6f53fe2b43dff019':
  bionic: benchmarks: Add BM_semaphore_sem_post
2015-02-10 15:24:48 +00:00
Mark Salyzyn
a57fd419bc Merge "bionic: benchmarks: Add BM_semaphore_sem_post" 2015-02-10 15:16:34 +00:00
Yabin Cui
2d8f9b5aea Define MAXHOSTNAMELEN explicitly in source files.
Bug: 19093777
Bug: 19092844
Change-Id: I0778507ca2d5c008abb9a6d6315d0909263a8817
2015-02-09 19:56:47 -08:00
Mark Salyzyn
7e50fb2a68 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
2015-02-09 17:05:20 -08:00
Christopher Ferris
6fd3bcf6ce am 6d99da04: Merge "Cleanup the libm makefile."
* commit '6d99da0477f8589df01307067823c3925e40bd91':
  Cleanup the libm makefile.
2015-02-10 00:38:39 +00:00
Christopher Ferris
6d99da0477 Merge "Cleanup the libm makefile." 2015-02-10 00:31:06 +00:00
Yabin Cui
fa592b2a90 am e375ecaa: Merge "Switch pthread_cond_t to <stdatomic.h>."
* commit 'e375ecaa39213ec01464dac9d0ffebaac70b4e9d':
  Switch pthread_cond_t to <stdatomic.h>.
2015-02-10 00:18:47 +00:00
Yabin Cui
e375ecaa39 Merge "Switch pthread_cond_t to <stdatomic.h>." 2015-02-10 00:10:45 +00:00
Yabin Cui
e5f816c017 Switch pthread_cond_t to <stdatomic.h>.
Bug: 17574458
Change-Id: Ic7f79861df4fe751cfa6c6b20b71123cc31e7114
2015-02-09 15:54:22 -08:00
Christopher Ferris
d40d1a08cd Cleanup the libm makefile.
Change-Id: I3d95f75da24ee3b064a9cce67586b0e6f32272d8
2015-02-09 14:09:49 -08:00
Yabin Cui
6a32443aa3 am a4fc89ba: Merge "Stop including <linux/param.h> in <sys/param.h>."
* commit 'a4fc89badf4ef4d42df0927340c6f0d02167a3d6':
  Stop including <linux/param.h> in <sys/param.h>.
2015-02-09 19:52:51 +00:00
Yabin Cui
a4fc89badf Merge "Stop including <linux/param.h> in <sys/param.h>." 2015-02-09 19:46:46 +00:00
Narayan Kamath
e163cb28b9 am f69139e1: Merge "Remove stray log line."
* commit 'f69139e105ef32199afdf35027e9dfc48ad215d7':
  Remove stray log line.
2015-02-09 19:05:16 +00:00
Narayan Kamath
f69139e105 Merge "Remove stray log line." 2015-02-09 18:57:51 +00:00
Narayan Kamath
421608550d Remove stray log line.
Change-Id: Id948ae37a91dadd9d40e91de97f18774bdccfc78
2015-02-09 18:01:45 +00:00
Christopher Ferris
6e01e50787 am e66b2780: am 6880ec44: am d687905f: Merge "Display errors instead of running infinitely."
* commit 'e66b2780a77ecbe1eaa1273dd5555e261ef0dfd5':
  Display errors instead of running infinitely.
2015-02-09 04:15:11 +00:00
Tao Bao
84e323f11d am 5690237c: am 35947160: am bc64d1d1: Merge "Switch kernel header parsing to python libclang"
* commit '5690237c6f95afec3460f7f5e7d6c2ab6bfc608a':
  Switch kernel header parsing to python libclang
2015-02-09 04:13:35 +00:00
Colin Cross
9667f1be1b am fa8a43e6: am 0ef78e38: am 44e88db1: Merge "Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs"
* commit 'fa8a43e6dffab323f9c0b8ad91df8e6e76832b85':
  Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs
2015-02-09 04:13:31 +00:00
Christopher Ferris
e66b2780a7 am 6880ec44: am d687905f: Merge "Display errors instead of running infinitely."
* commit '6880ec44c339a720ebc9128fb6a11362ca7d5634':
  Display errors instead of running infinitely.
2015-02-07 02:30:28 +00:00
Christopher Ferris
6880ec44c3 am d687905f: Merge "Display errors instead of running infinitely."
* commit 'd687905f11102a7f6bad461b6f501dc870c59999':
  Display errors instead of running infinitely.
2015-02-07 02:24:36 +00:00
Christopher Ferris
d687905f11 Merge "Display errors instead of running infinitely." 2015-02-07 02:18:39 +00:00
Christopher Ferris
05d26211d8 Display errors instead of running infinitely.
When there is an error detected, the code runs forever and then times
out without any indication of what happened. Change it so that error
messages are printed and the test fails.

Change-Id: Id3160fc2f394984de0157356594fd8b40de66b4a
2015-02-06 18:05:58 -08:00
Tao Bao
5690237c6f am 35947160: am bc64d1d1: Merge "Switch kernel header parsing to python libclang"
* commit '35947160f96931a6464a9425b04f79232b389ed0':
  Switch kernel header parsing to python libclang
2015-02-06 23:39:23 +00:00
Tao Bao
35947160f9 am bc64d1d1: Merge "Switch kernel header parsing to python libclang"
* commit 'bc64d1d1fd12a0b43bcfe3f88698f29185ab63e0':
  Switch kernel header parsing to python libclang
2015-02-06 23:32:43 +00:00
Colin Cross
fa8a43e6df am 0ef78e38: am 44e88db1: Merge "Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs"
* commit '0ef78e3840b3bfcc07a13d7ffa69dfdd8313e80c':
  Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs
2015-02-06 23:31:35 +00:00
Tao Bao
bc64d1d1fd Merge "Switch kernel header parsing to python libclang" 2015-02-06 23:25:29 +00:00
Colin Cross
0ef78e3840 am 44e88db1: Merge "Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs"
* commit '44e88db185cc65b49373dd76d8ed27264b7299ed':
  Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs
2015-02-06 22:53:18 +00:00
Tao Bao
d7db594b8d Switch kernel header parsing to python libclang
Replace the tokenizer in cpp.py with libclang.

Bug: 18937958
Change-Id: I27630904c6d2849418cd5ca3d3c612ec3078686d
2015-02-06 14:48:41 -08:00
Colin Cross
44e88db185 Merge "Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs" 2015-02-06 22:45:59 +00:00
Colin Cross
91b403cef6 Use LOCAL_C_INCLUDES instead of LOCAL_CFLAGS for include dirs
Change-Id: If61d6faae5d91c3bbe198e733e5922cd877ba353
2015-02-06 14:16:17 -08:00
Yabin Cui
29f9bcf2ee am b69e9f1f: am da73dac7: am bda85a12: Merge "Add path separator in bionic-unit-tests program path."
* commit 'b69e9f1fe1599c6e914586c5e3d16cedee94337a':
  Add path separator in bionic-unit-tests program path.
2015-02-05 22:14:34 +00:00
Yabin Cui
b69e9f1fe1 am da73dac7: am bda85a12: Merge "Add path separator in bionic-unit-tests program path."
* commit 'da73dac7acce09b76bd6d811c8be694e69acbd17':
  Add path separator in bionic-unit-tests program path.
2015-02-05 22:08:49 +00:00
Yabin Cui
da73dac7ac am bda85a12: Merge "Add path separator in bionic-unit-tests program path."
* commit 'bda85a12392b10555dc03ac377c8450b8f0790d6':
  Add path separator in bionic-unit-tests program path.
2015-02-05 22:01:41 +00:00
Yabin Cui
bda85a1239 Merge "Add path separator in bionic-unit-tests program path." 2015-02-05 21:55:19 +00:00
Elliott Hughes
726679ab3e am ec56d962: am 87c44930: am 9dfb00c1: Merge "Use the libcxxabi __cxa_demangle."
* commit 'ec56d962add687914fd98f04732840613b62df8c':
  Use the libcxxabi __cxa_demangle.
2015-02-05 20:39:12 +00:00
Elliott Hughes
6bef9bd7f0 am 4aa6d06d: am 1ec1bbda: am 9a9b6357: Merge "Apparently, logd does need the NULs."
* commit '4aa6d06d7b64493b3757abc584e3cc0437ebb948':
  Apparently, logd does need the NULs.
2015-02-05 20:39:12 +00:00
Elliott Hughes
ec56d962ad am 87c44930: am 9dfb00c1: Merge "Use the libcxxabi __cxa_demangle."
* commit '87c44930486af960de27996d94b742f19399b82b':
  Use the libcxxabi __cxa_demangle.
2015-02-05 20:31:07 +00:00
Elliott Hughes
4aa6d06d7b am 1ec1bbda: am 9a9b6357: Merge "Apparently, logd does need the NULs."
* commit '1ec1bbda7f254266653a0db470f6e5d699a0cad1':
  Apparently, logd does need the NULs.
2015-02-05 20:31:06 +00:00
Elliott Hughes
87c4493048 am 9dfb00c1: Merge "Use the libcxxabi __cxa_demangle."
* commit '9dfb00c1d48545a2627c2aded62d3a79749351fb':
  Use the libcxxabi __cxa_demangle.
2015-02-05 20:26:21 +00:00
Elliott Hughes
1ec1bbda7f am 9a9b6357: Merge "Apparently, logd does need the NULs."
* commit '9a9b635745dc776dcfeec51d68b85ca7e8cdbe7d':
  Apparently, logd does need the NULs.
2015-02-05 20:22:39 +00:00
Elliott Hughes
9dfb00c1d4 Merge "Use the libcxxabi __cxa_demangle." 2015-02-05 20:21:35 +00:00
Yabin Cui
a4cf89acd9 am 78c9743d: am ffcabed4: am 63826658: Merge "Add signal handling in bionic gtest main."
* commit '78c9743de62463244bffeedeee557533e8f377f1':
  Add signal handling in bionic gtest main.
2015-02-05 20:15:14 +00:00
Dimitry Ivanov
b76a613b93 am e4c93e88: am a1d3aa1f: am 8e5f9bc8: Merge "linker: Use load_bias to adjust search address in elf_addr_lookup"
* commit 'e4c93e889475e4702092d2bebc1459b1f9a637d7':
  linker: Use load_bias to adjust search address in elf_addr_lookup
2015-02-05 20:15:13 +00:00
Colin Cross
d6e87b1903 am 08f6d7c9: am 427d438d: am da2c0a70: Merge changes Ib87855e8,I4b46ae20,I66364a5c,Id3fcf680
* commit '08f6d7c9eb5fbd921b44ab6a6c63b4eb9fa3ac95':
  Use LOCAL_LDFLAGS_64 instead of enumerating 64-bit architectures
  Fix typo in cpu variant makefile depenendency for arm64
  Remove libc_static_common_src_files
  Share LP32 makefile settings between arches
2015-02-05 20:15:12 +00:00
Yabin Cui
f23174dab2 am c249e7d6: am e760a1eb: am 17976019: Merge "Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test."
* commit 'c249e7d6c9f9bfa8e9499eacbd0630bf3bff9ec4':
  Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test.
2015-02-05 20:15:11 +00:00
Elliott Hughes
9a9b635745 Merge "Apparently, logd does need the NULs." 2015-02-05 20:05:46 +00:00
Elliott Hughes
6e54c3e519 Use the libcxxabi __cxa_demangle.
Bug: 18930951
Change-Id: If2ea3633ac6dfd4ec975c0f16bdf3dd58e05c614
2015-02-05 12:05:34 -08:00
Elliott Hughes
aba6f712d4 Apparently, logd does need the NULs.
Change-Id: I04b834e65c26c5821b952f78a0de7f92527cbdba
2015-02-05 12:02:04 -08:00
Yabin Cui
78c9743de6 am ffcabed4: am 63826658: Merge "Add signal handling in bionic gtest main."
* commit 'ffcabed4bf8555e721c215a5140e2c8120add8af':
  Add signal handling in bionic gtest main.
2015-02-05 18:47:26 +00:00
Dimitry Ivanov
e4c93e8894 am a1d3aa1f: am 8e5f9bc8: Merge "linker: Use load_bias to adjust search address in elf_addr_lookup"
* commit 'a1d3aa1f9579eaf579f579b43f836635fc9a5674':
  linker: Use load_bias to adjust search address in elf_addr_lookup
2015-02-05 18:47:07 +00:00
Colin Cross
08f6d7c9eb am 427d438d: am da2c0a70: Merge changes Ib87855e8,I4b46ae20,I66364a5c,Id3fcf680
* commit '427d438dd44bb79dad87d51ad60593872391e7a7':
  Use LOCAL_LDFLAGS_64 instead of enumerating 64-bit architectures
  Fix typo in cpu variant makefile depenendency for arm64
  Remove libc_static_common_src_files
  Share LP32 makefile settings between arches
2015-02-05 18:47:07 +00:00
Yabin Cui
c249e7d6c9 am e760a1eb: am 17976019: Merge "Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test."
* commit 'e760a1eb30804df478640b2176fc798ab6e7db9b':
  Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test.
2015-02-05 18:47:06 +00:00
Yabin Cui
ead08148bd Add path separator in bionic-unit-tests program path.
Bug: 19220800
Change-Id: I4245b1270363544cd5f083fe7ea7d9b11b46cdc0
2015-02-05 10:39:37 -08:00
Yabin Cui
ffcabed4bf am 63826658: Merge "Add signal handling in bionic gtest main."
* commit '63826658f4bcfff4f3a87fe651f22cc9b35fe8b9':
  Add signal handling in bionic gtest main.
2015-02-05 04:24:43 +00:00
Yabin Cui
63826658f4 Merge "Add signal handling in bionic gtest main." 2015-02-05 04:21:03 +00:00
Yabin Cui
1d4c780a2e Add signal handling in bionic gtest main.
The two bugs are very closely related and code amount is very small,
So I think they may be fixed in one change.

Bug: 19128558
Bug: 19129994
Change-Id: I44a35398e64dfca7e9676428cb8f4026e8f6e488
2015-02-04 19:06:07 -08:00
Dimitry Ivanov
a1d3aa1f95 am 8e5f9bc8: Merge "linker: Use load_bias to adjust search address in elf_addr_lookup"
* commit '8e5f9bc8a46872e3f0ac4799558fdfd5999f9c20':
  linker: Use load_bias to adjust search address in elf_addr_lookup
2015-02-05 02:30:48 +00:00
Colin Cross
427d438dd4 am da2c0a70: Merge changes Ib87855e8,I4b46ae20,I66364a5c,Id3fcf680
* commit 'da2c0a708ed6c0091f3f89fd8838292579dad800':
  Use LOCAL_LDFLAGS_64 instead of enumerating 64-bit architectures
  Fix typo in cpu variant makefile depenendency for arm64
  Remove libc_static_common_src_files
  Share LP32 makefile settings between arches
2015-02-05 02:30:47 +00:00
Yabin Cui
e760a1eb30 am 17976019: Merge "Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test."
* commit '17976019a13a94ae428849bfe297f8e531f95013':
  Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test.
2015-02-05 02:30:46 +00:00
Dimitry Ivanov
8e5f9bc8a4 Merge "linker: Use load_bias to adjust search address in elf_addr_lookup" 2015-02-05 02:23:34 +00:00
Colin Cross
da2c0a708e Merge changes Ib87855e8,I4b46ae20,I66364a5c,Id3fcf680
* changes:
  Use LOCAL_LDFLAGS_64 instead of enumerating 64-bit architectures
  Fix typo in cpu variant makefile depenendency for arm64
  Remove libc_static_common_src_files
  Share LP32 makefile settings between arches
2015-02-05 01:57:28 +00:00
Colin Cross
5b869c0bbf Use LOCAL_LDFLAGS_64 instead of enumerating 64-bit architectures
LOCAL_LDFLAGS_<arch> was being set for arm64, mips64, and x86_64.
Use LOCAL_LDFLAGS_64 instead.

Change-Id: Ib87855e8a7783f82461b707fffa7f1663e6be9c8
2015-02-04 17:40:29 -08:00
Colin Cross
a6b6ed5fe9 Fix typo in cpu variant makefile depenendency for arm64
cpu_variank_mk -> cpu_variant_mk

Change-Id: I4b46ae20de72ed2dc8820d62ac35ddc6b915a195
2015-02-04 17:38:27 -08:00
Colin Cross
7dc502d012 Remove libc_static_common_src_files
libc_static_common_src_files is never set after
c3f114037d, remove the remaining
references to it.

Change-Id: I66364a5c1b031ad69d608f6f44244049192944f6
2015-02-04 17:37:23 -08:00
Colin Cross
1742a32aea Share LP32 makefile settings between arches
Add <var>_32 to patch-up-arch-specific-flags, and move the LP32
cruft varaibles from the 32-bit arch specific makefiles into the
top level Android.mk.

Change-Id: Id3fcf6805d4af048c2524c94b1295416ebe7d057
2015-02-04 17:35:49 -08:00
Chris Dearman
8e55381939 linker: Use load_bias to adjust search address in elf_addr_lookup
load_bias is the delta between a symbols address in memory and the value
contained in the symbol table.

Change-Id: I35c87b69025b64f7e4a1418ca766618f4533fb3e
2015-02-04 17:16:27 -08:00
Yabin Cui
17976019a1 Merge "Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test." 2015-02-05 01:14:32 +00:00
Yabin Cui
5e52226f02 Stop including <linux/param.h> in <sys/param.h>.
Bug: 19092844
Change-Id: I1a4a0c84a196a187ea32e58491de744cf3c0f404
2015-02-04 14:59:58 -08:00
Yabin Cui
f4fe6937aa Fix poll/ppoll fortify test to avoid hanging in failed fortify clang test.
Bug: 19220800
Change-Id: Ie75c640183c4a41a499556fefb4f824a134a5fb1
2015-02-04 12:27:06 -08:00
Neil Fuller
1ed2acad2d am 0abb17dd: am 6d632af3: am 2151f09f: Merge "Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data."
* commit '0abb17dd29cddb62c79e7770fddff203800846ff':
  Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data.
2015-02-04 18:59:01 +00:00
Yabin Cui
773c2e21b4 am 5ace71de: am dcf371f5: am 7e1b3d3e: Merge "Switch sem_t from bionic atomics to stdatomic.h."
* commit '5ace71de3f6280f086ac4a1b9bb403b88472953a':
  Switch sem_t from bionic atomics to stdatomic.h.
2015-02-04 18:56:59 +00:00
Neil Fuller
0abb17dd29 am 6d632af3: am 2151f09f: Merge "Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data."
* commit '6d632af3b04e505a88aa0b73f95a873dcbd472f7':
  Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data.
2015-02-04 16:45:04 +00:00
Neil Fuller
6d632af3b0 am 2151f09f: Merge "Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data."
* commit '2151f09fbfc2f6084366587df10132e93f4d818c':
  Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data.
2015-02-04 16:39:06 +00:00
Neil Fuller
2151f09fbf Merge "Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data." 2015-02-04 16:33:01 +00:00
Fredrik Roubert
bdd8452472 Set INCLUDE_UNI_CORE_DATA=1 when rebuilding ICU4C time zone data.
This is now necessary to build .dat files that are useable for ICU4J as
well, and will need to be used for any future updates of the .dat file:

https://android.googlesource.com/platform/external/icu/+/6b52738

Change-Id: Ifa3a7469a66ab932db20876697e45814f0c5ddc3
2015-02-04 17:17:34 +01:00
Yabin Cui
5ace71de3f am dcf371f5: am 7e1b3d3e: Merge "Switch sem_t from bionic atomics to stdatomic.h."
* commit 'dcf371f5e7142e548b8f422bf45db14d15d86b62':
  Switch sem_t from bionic atomics to stdatomic.h.
2015-02-04 02:49:41 +00:00
Yabin Cui
dcf371f5e7 am 7e1b3d3e: Merge "Switch sem_t from bionic atomics to stdatomic.h."
* commit '7e1b3d3e68f7430322a88be06f6b53c358fd14bf':
  Switch sem_t from bionic atomics to stdatomic.h.
2015-02-04 02:45:44 +00:00
Yabin Cui
7e1b3d3e68 Merge "Switch sem_t from bionic atomics to stdatomic.h." 2015-02-04 02:42:16 +00:00
Yabin Cui
a3d97da4c5 Switch sem_t from bionic atomics to stdatomic.h.
Bug: 17572887
Change-Id: If66851ba9b831cdd698b9f1303289bb14448bd03
2015-02-03 16:35:57 -08:00
Yabin Cui
ae46973d25 am 70ad54d8: am 2d988187: am 11829be3: Merge "Add test about pthread_mutex_t owner tid limit."
* commit '70ad54d8c0cdcffa476e671554afcfb5fd385090':
  Add test about pthread_mutex_t owner tid limit.
2015-02-03 22:56:43 +00:00
Yabin Cui
70ad54d8c0 am 2d988187: am 11829be3: Merge "Add test about pthread_mutex_t owner tid limit."
* commit '2d988187712f52773b89421d139b266c8b58f769':
  Add test about pthread_mutex_t owner tid limit.
2015-02-03 22:40:46 +00:00
Yabin Cui
2d98818771 am 11829be3: Merge "Add test about pthread_mutex_t owner tid limit."
* commit '11829be3e1a9e9e2271ba64a78c327bde6e044eb':
  Add test about pthread_mutex_t owner tid limit.
2015-02-03 22:34:58 +00:00
Yabin Cui
11829be3e1 Merge "Add test about pthread_mutex_t owner tid limit." 2015-02-03 22:28:56 +00:00
Nick Kralevich
98d37866e2 am 3ce62609: am 72c3071d: am f00f484c: Merge "Ensure raw fchmod/fchmodat syscalls are hidden."
* commit '3ce62609f2693f167e1771f66cee0ed986f7aabb':
  Ensure raw fchmod/fchmodat syscalls are hidden.
2015-02-03 20:39:28 +00:00
Nick Kralevich
3ce62609f2 am 72c3071d: am f00f484c: Merge "Ensure raw fchmod/fchmodat syscalls are hidden."
* commit '72c3071d548ee3bf3711abf13dce25042ccc3cea':
  Ensure raw fchmod/fchmodat syscalls are hidden.
2015-02-03 20:32:59 +00:00
Nick Kralevich
72c3071d54 am f00f484c: Merge "Ensure raw fchmod/fchmodat syscalls are hidden."
* commit 'f00f484cb59c1d599242daecbf833397aa3ba5d8':
  Ensure raw fchmod/fchmodat syscalls are hidden.
2015-02-03 20:24:53 +00:00
Yabin Cui
140f3678f0 Add test about pthread_mutex_t owner tid limit.
Bug: 19216648
Change-Id: I7b12955bdcad31c13bf8ec2740ff88ba15223ec0
2015-02-03 12:20:46 -08:00
Nick Kralevich
f00f484cb5 Merge "Ensure raw fchmod/fchmodat syscalls are hidden." 2015-02-03 20:17:33 +00:00
Nick Kralevich
00490ae3f3 Ensure raw fchmod/fchmodat syscalls are hidden.
In https://android-review.googlesource.com/#/c/127908/5/libc/SYSCALLS.TXT@116
Elliott said:

  for LP64 these will be hidden. for LP32 we were cowards and left
  them all public for compatibility (though i don't think we ever
  dremeled to see whether it was needed). we don't have an easy
  way to recognize additions, though, so we can't prevent adding
  new turds.

Add a mechanism to prevent the adding of new turds, and use that
mechanism on the fchmod/fchmodat system calls.

Bug: 19233951
Change-Id: I98f98345970b631a379f348df57858f9fc3d57c0
2015-02-03 12:10:30 -08:00
Neil Fuller
4937f42f14 am f0e556a2: am 4177bd8d: Fixes to the update-tzdata.py tool
* commit 'f0e556a2f96843b08dfdffc013a34730a0104eca':
  Fixes to the update-tzdata.py tool
2015-02-03 15:05:45 +00:00
Neil Fuller
249f8159f6 am d3ef8fbd: am 700eb048: Update tzdata to tzdata2015a
* commit 'd3ef8fbdf746588e5c4a1ef2961f25ceabec8e42':
  Update tzdata to tzdata2015a
2015-02-03 15:05:44 +00:00
Neil Fuller
f0e556a2f9 am 4177bd8d: Fixes to the update-tzdata.py tool
* commit '4177bd8d16e0dc2d0d541fc54f81518c57651e55':
  Fixes to the update-tzdata.py tool
2015-02-03 15:00:20 +00:00
Neil Fuller
d3ef8fbdf7 am 700eb048: Update tzdata to tzdata2015a
* commit '700eb048fb6df8805245097d73a87384108fdf67':
  Update tzdata to tzdata2015a
2015-02-03 15:00:18 +00:00
Hans Boehm
1a3a354993 am da3a4490: am 0cddad0f: am d57bf449: Merge "Switch pthread_mutex_t from bionic atomics to <stdatomic.h>."
* commit 'da3a449043036e29f9295eb71d85a9d2f3e9b204':
  Switch pthread_mutex_t from bionic atomics to <stdatomic.h>.
2015-02-03 03:00:28 +00:00
Hans Boehm
da3a449043 am 0cddad0f: am d57bf449: Merge "Switch pthread_mutex_t from bionic atomics to <stdatomic.h>."
* commit '0cddad0fd17274575abe2e25484c909def51d7e3':
  Switch pthread_mutex_t from bionic atomics to <stdatomic.h>.
2015-02-03 02:53:31 +00:00
Hans Boehm
0cddad0fd1 am d57bf449: Merge "Switch pthread_mutex_t from bionic atomics to <stdatomic.h>."
* commit 'd57bf449fe6c2dcf35d90d6e4098038ac8a24ecb':
  Switch pthread_mutex_t from bionic atomics to <stdatomic.h>.
2015-02-03 02:48:20 +00:00
Hans Boehm
d57bf449fe Merge "Switch pthread_mutex_t from bionic atomics to <stdatomic.h>." 2015-02-03 02:42:53 +00:00
Elliott Hughes
2d082af4c6 am ea31751e: am aa916c8d: am c5999c1e: Merge "Clean up SEEK_SET definitions."
* commit 'ea31751e4b61adeaad1cf186b1774df4591012e2':
  Clean up SEEK_SET definitions.
2015-02-03 02:00:45 +00:00
Elliott Hughes
ea31751e4b am aa916c8d: am c5999c1e: Merge "Clean up SEEK_SET definitions."
* commit 'aa916c8db85b01389b929f060f232b3e06448e79':
  Clean up SEEK_SET definitions.
2015-02-03 01:31:08 +00:00
Elliott Hughes
aa916c8db8 am c5999c1e: Merge "Clean up SEEK_SET definitions."
* commit 'c5999c1e0382c40286cc631c6a53e7781bc03154':
  Clean up SEEK_SET definitions.
2015-02-03 01:25:23 +00:00
Elliott Hughes
c5999c1e03 Merge "Clean up SEEK_SET definitions." 2015-02-03 01:21:17 +00:00
Yabin Cui
86fc96f733 Switch pthread_mutex_t from bionic atomics to <stdatomic.h>.
Bug: 17574456
Change-Id: I5ce3d3dc07e804e9ce55c42920f47531b56e04de
2015-02-02 15:00:01 -08:00
Nick Kralevich
62b98b3ce6 am 4c8a50ba: am 0cb8abc6: am d80ec661: Merge "Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support"
* commit '4c8a50ba5d966981f8d88e61e0975cd8532b9db5':
  Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support
2015-02-02 22:17:41 +00:00
Nick Kralevich
4c8a50ba5d am 0cb8abc6: am d80ec661: Merge "Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support"
* commit '0cb8abc6207d7484ecbc9698064c1f24b9b668d5':
  Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support
2015-02-02 22:10:53 +00:00
Nick Kralevich
0cb8abc620 am d80ec661: Merge "Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support"
* commit 'd80ec66121b5af96c6b3d07ba34353b3d517f5b3':
  Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support
2015-02-02 22:07:35 +00:00
Nick Kralevich
d80ec66121 Merge "Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support" 2015-02-02 22:03:41 +00:00
Elliott Hughes
1ed337dbdf Clean up SEEK_SET definitions.
If we lose the #ifndef, the compiler will tell us if the definitions
of SEEK_SET and friends ever get out of sync.

Change-Id: I357cabec7c9cd451c604342344f210bba20fb6bc
2015-02-02 14:02:09 -08:00
Nick Kralevich
3cbc6c627f Add fchmodat(AT_SYMLINK_NOFOLLOW) and fchmod O_PATH support
Many libc functions have an option to not follow symbolic
links. This is useful to avoid security sensitive code
from inadvertantly following attacker supplied symlinks
and taking inappropriate action on files it shouldn't.
For example, open() has O_NOFOLLOW, chown() has
lchown(), stat() has lstat(), etc.

There is no such equivalent function for chmod(), such as lchmod().
To address this, POSIX introduced fchmodat(AT_SYMLINK_NOFOLLOW),
which is intended to provide a way to perform a chmod operation
which doesn't follow symlinks.

Currently, the Linux kernel doesn't implement AT_SYMLINK_NOFOLLOW.
In GLIBC, attempting to use the AT_SYMLINK_NOFOLLOW flag causes
fchmodat to return ENOTSUP. Details are in "man fchmodat".

Bionic currently differs from GLIBC in that AT_SYMLINK_NOFOLLOW
is silently ignored and treated as if the flag wasn't present.

This patch provides a userspace implementation of
AT_SYMLINK_NOFOLLOW for bionic. Using open(O_PATH | O_NOFOLLOW),
we can provide a way to atomically change the permissions on
files without worrying about race conditions.

As part of this change, we add support for fchmod on O_PATH
file descriptors, because it's relatively straight forward
and could be useful in the future.

The basic idea behind this implementation comes from
https://sourceware.org/bugzilla/show_bug.cgi?id=14578 , specifically
comment #10.

Change-Id: I1eba0cdb2c509d9193ceecf28f13118188a3cfa7
2015-02-02 13:17:17 -08:00
Elliott Hughes
f4911f19aa am 671b7eb2: am 815fc9bc: am c57b5c50: Merge "Small logging cleanup."
* commit '671b7eb288df3816b108871b5349c79f86d23be8':
  Small logging cleanup.
2015-02-02 21:14:14 +00:00
Elliott Hughes
671b7eb288 am 815fc9bc: am c57b5c50: Merge "Small logging cleanup."
* commit '815fc9bc9ecf96dd478c0800fdb9c4e9200320be':
  Small logging cleanup.
2015-02-02 20:54:27 +00:00
Elliott Hughes
815fc9bc9e am c57b5c50: Merge "Small logging cleanup."
* commit 'c57b5c5094f915ff975a256e086d58e2e7cfedf1':
  Small logging cleanup.
2015-02-02 20:46:39 +00:00
Elliott Hughes
c57b5c5094 Merge "Small logging cleanup." 2015-02-02 20:36:29 +00:00
Elliott Hughes
42084a2653 Small logging cleanup.
Don't send the trailing NUL bytes to the logger, call strlen if we already
know the length, or cast more specifically than we need to.

Change-Id: I68c9388a22bddea49120a1022dda8db8991360c1
2015-02-02 12:24:46 -08:00
Elliott Hughes
e2ce66764c am c8820e61: am 6c1252de: am 530aaecc: Merge "Explicitly check that the reason fortify tests abort is fortify."
* commit 'c8820e61d1b6eafb7aad2095c6a1c742cf31ee15':
  Explicitly check that the reason fortify tests abort is fortify.
2015-02-02 19:55:05 +00:00
Elliott Hughes
c8820e61d1 am 6c1252de: am 530aaecc: Merge "Explicitly check that the reason fortify tests abort is fortify."
* commit '6c1252decba273087411cd9e480d0422eabec6ef':
  Explicitly check that the reason fortify tests abort is fortify.
2015-02-02 19:40:41 +00:00
Elliott Hughes
6c1252decb am 530aaecc: Merge "Explicitly check that the reason fortify tests abort is fortify."
* commit '530aaeccd875f708918f59cd5ff8b076c156adab':
  Explicitly check that the reason fortify tests abort is fortify.
2015-02-02 19:32:44 +00:00
Elliott Hughes
af3ded9c8e am 2e02769a: am 5f7819d6: am 7f0f30c6: Merge "Fix clang build."
* commit '2e02769aa145b6ca1890174b96be9bcd5cf33bc6':
  Fix clang build.
2015-02-02 19:31:01 +00:00
Elliott Hughes
530aaeccd8 Merge "Explicitly check that the reason fortify tests abort is fortify." 2015-02-02 19:25:58 +00:00
Elliott Hughes
d036e94bb3 Explicitly check that the reason fortify tests abort is fortify.
Change-Id: I95291e2febf7b497c1d9f37fd7fa9acdd21e86a4
2015-02-02 11:18:58 -08:00
Elliott Hughes
2e02769aa1 am 5f7819d6: am 7f0f30c6: Merge "Fix clang build."
* commit '5f7819d6f1b2cb706d818e3083d45337e35d386b':
  Fix clang build.
2015-02-02 18:50:43 +00:00
Elliott Hughes
5f7819d6f1 am 7f0f30c6: Merge "Fix clang build."
* commit '7f0f30c6e20c1bf04bec05077eef2d779e7a32df':
  Fix clang build.
2015-02-02 18:36:22 +00:00
Elliott Hughes
7f0f30c6e2 Merge "Fix clang build." 2015-02-02 18:23:28 +00:00
Elliott Hughes
30fbf5f44c Fix clang build.
Change-Id: I863137b5d35602267b4ef3a74399cf394c9994d6
2015-02-02 10:21:39 -08:00
Neil Fuller
677aea1bda am 575bceb2: am 0a302e01: am d514d9bb: Merge "Fixes to the update-tzdata.py tool"
* commit '575bceb28190006eccfccb663100f0efb59838af':
  Fixes to the update-tzdata.py tool
2015-02-02 18:10:11 +00:00
Elliott Hughes
4b48f637f4 am 5372b83e: am 20f2e4f7: am 5940f98a: Merge "Fortify poll and ppoll."
* commit '5372b83eab9d9e5bd6bec18a832858c9dd18c432':
  Fortify poll and ppoll.
2015-02-02 18:10:10 +00:00
Neil Fuller
575bceb281 am 0a302e01: am d514d9bb: Merge "Fixes to the update-tzdata.py tool"
* commit '0a302e0174da4432da4a6ad5ce126dc27e4a86de':
  Fixes to the update-tzdata.py tool
2015-02-02 18:03:11 +00:00
Elliott Hughes
5372b83eab am 20f2e4f7: am 5940f98a: Merge "Fortify poll and ppoll."
* commit '20f2e4f7ad9d9f816be13f6509e602d4344a018d':
  Fortify poll and ppoll.
2015-02-02 18:03:10 +00:00
Neil Fuller
0a302e0174 am d514d9bb: Merge "Fixes to the update-tzdata.py tool"
* commit 'd514d9bbae354da72fcb43349f0157378e52004d':
  Fixes to the update-tzdata.py tool
2015-02-02 17:57:22 +00:00
Elliott Hughes
20f2e4f7ad am 5940f98a: Merge "Fortify poll and ppoll."
* commit '5940f98a35d64f9ca249536bb8cdcdbfe43e9bc3':
  Fortify poll and ppoll.
2015-02-02 17:57:21 +00:00
Neil Fuller
4177bd8d16 Fixes to the update-tzdata.py tool
We build one too many times. Creating a missing directory
is sufficient.

The tz2icu needs some files in the CWD. Added symlinks.

Bug: 19230091
(cherry-pick of commit 0662c3e5b3)
Change-Id: Ie21d848f1b776ec745473b9122e003fdf0acf105
2015-02-02 17:53:19 +00:00
Neil Fuller
d514d9bbae Merge "Fixes to the update-tzdata.py tool" 2015-02-02 17:52:48 +00:00
Elliott Hughes
5940f98a35 Merge "Fortify poll and ppoll." 2015-02-02 17:51:50 +00:00
Neil Fuller
0662c3e5b3 Fixes to the update-tzdata.py tool
We build one too many times. Creating a missing directory
is sufficient.

The tz2icu needs some files in the CWD. Added symlinks.

Bug: 19230091
Change-Id: I58f9817af68b229f48139e56503f50a2b6dbb4fe
2015-02-02 17:42:41 +00:00
Elliott Hughes
4674e3899a Fortify poll and ppoll.
And remove the test for FD_ZERO fortification, which never made much
sense anyway.

Change-Id: Id1009c5298d461fa4722189e8ecaf22f0c529536
2015-02-02 09:15:19 -08:00
Neil Fuller
700eb048fb 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.

  Changes affecting code

    tzalloc now scrubs time zone abbreviations compatibly with the way
    that tzset always has, by replacing invalid bytes with '_' and by
    shortening too-long abbreviations.

    tzselect ports to POSIX awk implementations, no longer mishandles
    POSIX TZ settings when GNU awk is used, and reports POSIX TZ
    settings to the user.  (Thanks to Stefan Kuhn.)

  Changes affecting build procedure

    'make check' now checks for links to links in the data.
    One such link (for Africa/Asmera) has been fixed.
    (Thanks to Stephen Colebourne for pointing out the problem.)

  Changes affecting commentary

    The leapseconds file commentary now mentions the expiration date.
    (Problem reported by Martin Burnicki.)

    Update Mexican Library of Congress URL.

Bug: 19212588
Change-Id: Idc07ac862901500d4a1dbd0f4aadcfd0aa9d10b8
2015-02-02 11:32:10 +00:00
Elliott Hughes
e0277717f8 am a5d743a6: am 9843afd6: am ffbda83b: Merge "Add the fortify tests back into the glibc tests."
* commit 'a5d743a6bf44b4fdb7c9de469a75f825a1ffb6c2':
  Add the fortify tests back into the glibc tests.
2015-02-02 06:40:36 +00:00
Elliott Hughes
a5d743a6bf am 9843afd6: am ffbda83b: Merge "Add the fortify tests back into the glibc tests."
* commit '9843afd62982516974fdc3c4481d36007527825a':
  Add the fortify tests back into the glibc tests.
2015-02-02 06:07:15 +00:00
Elliott Hughes
9843afd629 am ffbda83b: Merge "Add the fortify tests back into the glibc tests."
* commit 'ffbda83b302e3c3970135013d2bb92402e040fe5':
  Add the fortify tests back into the glibc tests.
2015-02-02 06:01:10 +00:00
Elliott Hughes
ffbda83b30 Merge "Add the fortify tests back into the glibc tests." 2015-02-02 05:56:27 +00:00
Elliott Hughes
b6e3e800d2 Add the fortify tests back into the glibc tests.
Change-Id: I4426d0c7c1bfe3b0028a674f72d1c3b9d883d6af
2015-01-31 21:32:10 -08:00
Elliott Hughes
c5152a5217 am 9b96dd6b: am d2d63740: am 21cdd22f: Merge "Include <malloc.h> for struct mallinfo."
* commit '9b96dd6b173a8d5752ddfd1e9179b141aca0c58c':
  Include <malloc.h> for struct mallinfo.
2015-01-31 08:34:02 +00:00
Elliott Hughes
74c5abbd5d am a26423f2: am fd10c019: am 09c33824: Merge "Break two incorrect transitive includes."
* commit 'a26423f22c3d92d7944e7e1706d3a347db78baf3':
  Break two incorrect transitive includes.
2015-01-31 08:34:01 +00:00
Elliott Hughes
9b96dd6b17 am d2d63740: am 21cdd22f: Merge "Include <malloc.h> for struct mallinfo."
* commit 'd2d63740b78459a414e293efdb16e7a9ac089d5c':
  Include <malloc.h> for struct mallinfo.
2015-01-31 07:49:25 +00:00
Elliott Hughes
a26423f22c am fd10c019: am 09c33824: Merge "Break two incorrect transitive includes."
* commit 'fd10c019fab50c06f391b6a765b0904ce477d3b7':
  Break two incorrect transitive includes.
2015-01-31 07:49:24 +00:00
Elliott Hughes
d2d63740b7 am 21cdd22f: Merge "Include <malloc.h> for struct mallinfo."
* commit '21cdd22f035efd50902b7780fc6ea53bd1684357':
  Include <malloc.h> for struct mallinfo.
2015-01-31 06:21:34 +00:00
Elliott Hughes
fd10c019fa am 09c33824: Merge "Break two incorrect transitive includes."
* commit '09c3382433ae94ada45780312a2a9fd082ad1478':
  Break two incorrect transitive includes.
2015-01-31 06:21:33 +00:00
Elliott Hughes
21cdd22f03 Merge "Include <malloc.h> for struct mallinfo." 2015-01-31 04:37:11 +00:00
Elliott Hughes
cb0e70389e Include <malloc.h> for struct mallinfo.
GCC doesn't seem to care, but clang does.

Change-Id: I9884820339a9e6f142862928c357f1a538184ae0
2015-01-30 20:33:31 -08:00
Elliott Hughes
09c3382433 Merge "Break two incorrect transitive includes." 2015-01-31 04:18:10 +00:00
Dan Albert
2fde9c03db am 3c68e194: am 18dd2f3b: am 94335cc8: Merge "Put back inline definitions if using an old API."
* commit '3c68e1946ae61fc0bbd18c718d9be441f4d3c350':
  Put back inline definitions if using an old API.
2015-01-30 21:28:05 +00:00
Elliott Hughes
c7a528a19a am 0772f933: am 6cf2cf8b: am 542b94d9: Merge "Remove unused CONFIG_SECONDS."
* commit '0772f933a4e5e7659c7dbc37d784a5f25a2ce94b':
  Remove unused CONFIG_SECONDS.
2015-01-30 21:28:04 +00:00
Dan Albert
3c68e1946a am 18dd2f3b: am 94335cc8: Merge "Put back inline definitions if using an old API."
* commit '18dd2f3b918af8233dc63ad6efa780a26c8ae79c':
  Put back inline definitions if using an old API.
2015-01-30 21:16:35 +00:00
Elliott Hughes
0772f933a4 am 6cf2cf8b: am 542b94d9: Merge "Remove unused CONFIG_SECONDS."
* commit '6cf2cf8bf26b99b7318791c75cbccfd95893b04e':
  Remove unused CONFIG_SECONDS.
2015-01-30 21:16:34 +00:00
Dan Albert
18dd2f3b91 am 94335cc8: Merge "Put back inline definitions if using an old API."
* commit '94335cc8e2f32638d9e38741ddabfd19a38e0840':
  Put back inline definitions if using an old API.
2015-01-30 19:44:02 +00:00
Elliott Hughes
6cf2cf8bf2 am 542b94d9: Merge "Remove unused CONFIG_SECONDS."
* commit '542b94d9bf7eb3838b0582c02d7a1bf2e270af5a':
  Remove unused CONFIG_SECONDS.
2015-01-30 19:44:01 +00:00
Dan Albert
94335cc8e2 Merge "Put back inline definitions if using an old API." 2015-01-30 17:18:49 +00:00
Elliott Hughes
542b94d9bf Merge "Remove unused CONFIG_SECONDS." 2015-01-30 06:21:55 +00:00
Elliott Hughes
4dcfccff8d Remove unused CONFIG_SECONDS.
Bug: https://code.google.com/p/android/issues/detail?id=65951
Change-Id: I8ae7057c68e16618de6dd06cf052426c6cad8a3d
2015-01-29 21:47:37 -08:00
Elliott Hughes
5038b19cef Break two incorrect transitive includes.
Change-Id: I95519caa5258cf5c6b8053f1c7e08ade2a824e49
2015-01-29 20:12:13 -08:00
Dan Albert
466dbe4444 Put back inline definitions if using an old API.
All these inlines were turned in to out of line definitions in L.
This brings us a step closer to being able to just use the current
bionic headers for the NDK, rather than having many old versions of
them.

Change-Id: Ie010bc727d78d3742abc577c70f6578db2e68625
2015-01-29 17:30:40 -08:00
Dan Albert
82292221a0 am 36aad393: am c9af0e9a: am cd1959b0: Merge "Add primitive CPPLINT.cfg."
* commit '36aad393dba7ac1870e36e6e75a71154cd6a8213':
  Add primitive CPPLINT.cfg.
2015-01-29 22:26:14 +00:00
Dan Albert
36aad393db am c9af0e9a: am cd1959b0: Merge "Add primitive CPPLINT.cfg."
* commit 'c9af0e9a2d215b60a128643b6bdddd671e33864b':
  Add primitive CPPLINT.cfg.
2015-01-29 22:06:28 +00:00
Dan Albert
c9af0e9a2d am cd1959b0: Merge "Add primitive CPPLINT.cfg."
* commit 'cd1959b0c506cfa9e89ac7deb56bdb6461b28c3a':
  Add primitive CPPLINT.cfg.
2015-01-29 21:59:51 +00:00
Dan Albert
cd1959b0c5 Merge "Add primitive CPPLINT.cfg." 2015-01-29 21:54:55 +00:00
Yabin Cui
436d4e9566 am f63ae055: am 508d5579: am 782aa39f: Merge "Rewrite __cxa_guard.cpp with <stdatomic.h>."
* commit 'f63ae0553e16171e49d34616d42fc525fadf58a0':
  Rewrite __cxa_guard.cpp with <stdatomic.h>.
2015-01-29 20:57:43 +00:00
Yabin Cui
f63ae0553e am 508d5579: am 782aa39f: Merge "Rewrite __cxa_guard.cpp with <stdatomic.h>."
* commit '508d5579cd0d3723662755ab418ac3085e9f30cd':
  Rewrite __cxa_guard.cpp with <stdatomic.h>.
2015-01-29 20:35:44 +00:00
Yabin Cui
508d5579cd am 782aa39f: Merge "Rewrite __cxa_guard.cpp with <stdatomic.h>."
* commit '782aa39f704e3d597c0ec869ec1b9701bc90a5c9':
  Rewrite __cxa_guard.cpp with <stdatomic.h>.
2015-01-29 20:29:23 +00:00
Yabin Cui
782aa39f70 Merge "Rewrite __cxa_guard.cpp with <stdatomic.h>." 2015-01-29 20:22:25 +00:00
Dan Albert
6ac4dd8ba9 Add primitive CPPLINT.cfg.
We'll add more things to this as we discover other warnings we don't
care about.

Change-Id: I408f688827cab0f74e055d8f1778069163663f0b
2015-01-29 11:41:59 -08:00
Yabin Cui
6a3ff01cd4 Rewrite __cxa_guard.cpp with <stdatomic.h>.
Bug: 19180923
Change-Id: If4912d01db43c72ef12f4b04270ddb5d76d09462
2015-01-29 11:19:15 -08:00
Elliott Hughes
f807e20934 am dbfcf000: am e40b4eb3: am 7f17aea2: Merge "Add missing includes."
* commit 'dbfcf000c077ba97d22d957647eabb3b45d015cf':
  Add missing includes.
2015-01-29 17:22:39 +00:00
Yabin Cui
c4798e81b2 am 5d7fb6f0: am 38dfc222: am 017da8bc: Merge "Add --gtest-filter as synonym for --gtest_filter in bionic gtest main."
* commit '5d7fb6f054de7525b737f6c755b81e9244c581b9':
  Add --gtest-filter as synonym for --gtest_filter in bionic gtest main.
2015-01-29 17:22:22 +00:00
Christopher Ferris
e6399d68d3 am 1d72a38d: am 2633dfa5: am 43606bc1: Merge "Only one crashing thread should contact debuggerd."
* commit '1d72a38dbb40b0096cf205fcdf0e3c2eca28f7f5':
  Only one crashing thread should contact debuggerd.
2015-01-29 17:22:08 +00:00
Elliott Hughes
f1fa1002fd am 4f2e2a9d: am 8661b092: am a9c3d056: Merge "Modify MIPS64 stat structure to match a generic one in AOSP."
* commit '4f2e2a9d703f1999bb638aebae5800906c94beed':
  Modify MIPS64 stat structure to match a generic one in AOSP.
2015-01-29 17:22:02 +00:00
Elliott Hughes
dbfcf000c0 am e40b4eb3: am 7f17aea2: Merge "Add missing includes."
* commit 'e40b4eb35a6f8ae5c286f53abb920b452b7b6792':
  Add missing includes.
2015-01-29 03:33:42 +00:00
Elliott Hughes
e40b4eb35a am 7f17aea2: Merge "Add missing includes."
* commit '7f17aea2fc21aaf657824a023a4b7582fb74a2d9':
  Add missing includes.
2015-01-29 03:27:56 +00:00
Elliott Hughes
7f17aea2fc Merge "Add missing includes." 2015-01-29 03:23:35 +00:00
Elliott Hughes
05fc1d7050 Add missing includes.
Change-Id: Ibf549266a19a67eb9158d341a69dddfb654be669
2015-01-28 19:23:11 -08:00
Yabin Cui
5d7fb6f054 am 38dfc222: am 017da8bc: Merge "Add --gtest-filter as synonym for --gtest_filter in bionic gtest main."
* commit '38dfc222adb557b95e3fe7d606d3532de56c998a':
  Add --gtest-filter as synonym for --gtest_filter in bionic gtest main.
2015-01-29 02:40:24 +00:00
Yabin Cui
38dfc222ad am 017da8bc: Merge "Add --gtest-filter as synonym for --gtest_filter in bionic gtest main."
* commit '017da8bc58ba07be92dd371020e9dc3fe26f481b':
  Add --gtest-filter as synonym for --gtest_filter in bionic gtest main.
2015-01-29 02:33:59 +00:00
Yabin Cui
017da8bc58 Merge "Add --gtest-filter as synonym for --gtest_filter in bionic gtest main." 2015-01-29 02:30:25 +00:00
Christopher Ferris
1d72a38dbb am 2633dfa5: am 43606bc1: Merge "Only one crashing thread should contact debuggerd."
* commit '2633dfa5f6f453dc56b1a08917dd6f51b619681c':
  Only one crashing thread should contact debuggerd.
2015-01-29 02:01:05 +00:00
Christopher Ferris
2633dfa5f6 am 43606bc1: Merge "Only one crashing thread should contact debuggerd."
* commit '43606bc1ce974e4ba42d7d2c3682ad5182e6fc96':
  Only one crashing thread should contact debuggerd.
2015-01-29 01:53:49 +00:00
Christopher Ferris
43606bc1ce Merge "Only one crashing thread should contact debuggerd." 2015-01-29 01:49:21 +00:00
Elliott Hughes
4f2e2a9d70 am 8661b092: am a9c3d056: Merge "Modify MIPS64 stat structure to match a generic one in AOSP."
* commit '8661b092fe24c6b56426e07c6f02f5d83daae172':
  Modify MIPS64 stat structure to match a generic one in AOSP.
2015-01-29 01:42:06 +00:00
Elliott Hughes
8661b092fe am a9c3d056: Merge "Modify MIPS64 stat structure to match a generic one in AOSP."
* commit 'a9c3d0569f3b9511af445457cd455a7bb967b60e':
  Modify MIPS64 stat structure to match a generic one in AOSP.
2015-01-29 01:35:38 +00:00
Elliott Hughes
a9c3d0569f Merge "Modify MIPS64 stat structure to match a generic one in AOSP." 2015-01-29 01:31:59 +00:00
Christopher Ferris
8ea53fa87e Only one crashing thread should contact debuggerd.
If two or more threads crash at the same time, only let one talk to
debuggerd. It's possible for a race to occur that two threads send
data to debuggerd, the second one will cause errors in debuggerd since
the process will die once debuggerd lets the crashing pid start again.

Bug: 19183955
Change-Id: I17dfce46102117ab4a870f7381bd526488d37fb5
2015-01-28 16:20:26 -08:00
Raghu Gandham
86d2feef9f Modify MIPS64 stat structure to match a generic one in AOSP.
The kernel version of the stat structure is used during the syscalls. After the syscall,
the kernel stat structure is converted to match the generic one. Eventually we would like
the generic stat structure and related syscalls be added to MIPS64 kernel, removing the
thunks added to AOSP.

Change-Id: I7764e80278c1cc8254754c3531ec2dda7544a8ec
2015-01-28 16:12:17 -08:00
Yabin Cui
11c4353cdd Add --gtest-filter as synonym for --gtest_filter in bionic gtest main.
Bug: 19130480
Change-Id: I0d3df70ee8f692581cc4b9b742c5f347259fd0d2
2015-01-28 14:28:14 -08:00
Yabin Cui
44e8578c03 am c6438cd4: am 3c95c887: am 9e82c4be: Merge "Switch pthread_once_t to stdatomic.h."
* commit 'c6438cd4b0d4304e61c895941f68325efc6d9996':
  Switch pthread_once_t to stdatomic.h.
2015-01-28 22:08:38 +00:00
Yabin Cui
c6438cd4b0 am 3c95c887: am 9e82c4be: Merge "Switch pthread_once_t to stdatomic.h."
* commit '3c95c887820018cff06039e1dc35afe585e661c1':
  Switch pthread_once_t to stdatomic.h.
2015-01-28 21:27:32 +00:00
Yabin Cui
3c95c88782 am 9e82c4be: Merge "Switch pthread_once_t to stdatomic.h."
* commit '9e82c4be359a4637f21988b66b6d25abbfb79ddb':
  Switch pthread_once_t to stdatomic.h.
2015-01-28 21:20:54 +00:00
Yabin Cui
9e82c4be35 Merge "Switch pthread_once_t to stdatomic.h." 2015-01-28 21:16:05 +00:00
Dimitry Ivanov
b9bd15cc07 am c6c624fc: am 18661cd8: am 3780aba6: Merge "Fix mips64 build. Replace explicit cast with static_cast"
* commit 'c6c624fc37dc6240a41bbc7d550980f79295796b':
  Fix mips64 build. Replace explicit cast with static_cast
2015-01-28 17:49:14 +00:00
Dimitry Ivanov
c6c624fc37 am 18661cd8: am 3780aba6: Merge "Fix mips64 build. Replace explicit cast with static_cast"
* commit '18661cd8881dfce34306242011198128867777bb':
  Fix mips64 build. Replace explicit cast with static_cast
2015-01-28 17:42:47 +00:00
Dimitry Ivanov
18661cd888 am 3780aba6: Merge "Fix mips64 build. Replace explicit cast with static_cast"
* commit '3780aba6352affc7d2dcdad0737cb4254448fcae':
  Fix mips64 build. Replace explicit cast with static_cast
2015-01-28 17:39:01 +00:00
Dimitry Ivanov
3780aba635 Merge "Fix mips64 build. Replace explicit cast with static_cast" 2015-01-28 17:34:51 +00:00
Nikola Veljkovic
db3078d97b Fix mips64 build. Replace explicit cast with static_cast
Change-Id: Ib08fbe8bb832884a3eb33904fe4d490759116cb2
2015-01-28 16:19:18 +01:00
Yabin Cui
80e6d6d825 Switch pthread_once_t to stdatomic.h.
Bug: 17574610

Change-Id: I653f2aa4b5b38dbdaffe4a6c3deccfe6ad3b0e74
2015-01-27 19:49:12 -08:00
Yabin Cui
030ac03c2b am c10cfc05: am d13e6268: am 385c07a7: Merge "Fix parse of gtest_filter in bionic gtest main."
* commit 'c10cfc052043b0b70e6a3153e93dabc73764b58f':
  Fix parse of gtest_filter in bionic gtest main.
2015-01-28 00:42:21 +00:00
Elliott Hughes
8d71a40c79 am 63c74b2c: am 6c55034a: am 86d98962: Merge "Fix mips build."
* commit '63c74b2c2281b605f7946c707f756835ce83bd44':
  Fix mips build.
2015-01-27 23:42:53 +00:00
Elliott Hughes
57e41c6a45 am f6083836: am aa0b88f7: am acc06a0b: Merge "Add a test for float registers across setjmp/logjmp."
* commit 'f6083836a71179cc3a222e7a22af010bdc05bad6':
  Add a test for float registers across setjmp/logjmp.
2015-01-27 23:42:50 +00:00
Elliott Hughes
2cea48a77e am 4bdc2a61: am ca3396ef: am 192e169a: Merge "x86 has an assembler bcopy implementation."
* commit '4bdc2a6105c7f91d780c62a05e02ccb2a75a8837':
  x86 has an assembler bcopy implementation.
2015-01-27 23:31:36 +00:00
Yabin Cui
ba8f594152 am 67266eac: am a8041f9b: am b518836e: Merge "Rename "TIMEWARN" to "SLOW" in bionic gtest."
* commit '67266eacf603a1dae7cfd81e24d55c9bff1cc61a':
  Rename "TIMEWARN" to "SLOW" in bionic gtest.
2015-01-27 23:31:35 +00:00
Elliott Hughes
d83cd1924b am 0dadeb81: am 2bb5664f: am 643a9be8: Merge "[Arm64] Fix overlapping fp fields in jmp_buf"
* commit '0dadeb8134147ac07723e5047003485654b2bcc7':
  [Arm64] Fix overlapping fp fields in jmp_buf
2015-01-27 23:31:31 +00:00
Elliott Hughes
2aa82b5804 am 5bf4a172: am dedacf10: am 5c7964c5: Merge "Clean up <stdlib.h> slightly."
* commit '5bf4a1729ad35356c8c18b77842e9bac0f1ea0b2':
  Clean up <stdlib.h> slightly.
2015-01-27 23:31:30 +00:00
Yabin Cui
c10cfc0520 am d13e6268: am 385c07a7: Merge "Fix parse of gtest_filter in bionic gtest main."
* commit 'd13e626817cfd552bf082fb35019177274147449':
  Fix parse of gtest_filter in bionic gtest main.
2015-01-27 22:13:28 +00:00
Yabin Cui
d13e626817 am 385c07a7: Merge "Fix parse of gtest_filter in bionic gtest main."
* commit '385c07a74ca5438a6f7fe0ada2b461f880563073':
  Fix parse of gtest_filter in bionic gtest main.
2015-01-27 22:05:40 +00:00
Yabin Cui
385c07a74c Merge "Fix parse of gtest_filter in bionic gtest main." 2015-01-27 22:00:35 +00:00
Elliott Hughes
63c74b2c22 am 6c55034a: am 86d98962: Merge "Fix mips build."
* commit '6c55034a1d24caa82cb7e5a6c0ca71e9697c0f12':
  Fix mips build.
2015-01-27 19:51:12 +00:00
Elliott Hughes
6c55034a1d am 86d98962: Merge "Fix mips build."
* commit '86d9896273e81941d16034fdbf781a3f2bf94b81':
  Fix mips build.
2015-01-27 19:43:32 +00:00
Elliott Hughes
86d9896273 Merge "Fix mips build." 2015-01-27 19:39:37 +00:00
Yabin Cui
0bc4e9697e Fix parse of gtest_filter in bionic gtest main.
Bug: 19130330
Change-Id: Id6a60570a8aab6ae7259ff228b3801285b378f77
2015-01-27 11:22:46 -08:00
Elliott Hughes
f6083836a7 am aa0b88f7: am acc06a0b: Merge "Add a test for float registers across setjmp/logjmp."
* commit 'aa0b88f7a8a96bef2cec739678ceb69c3f9f1ce1':
  Add a test for float registers across setjmp/logjmp.
2015-01-27 19:19:38 +00:00
Elliott Hughes
aa0b88f7a8 am acc06a0b: Merge "Add a test for float registers across setjmp/logjmp."
* commit 'acc06a0b74e41728c6067280134a59d8b700d535':
  Add a test for float registers across setjmp/logjmp.
2015-01-27 19:13:23 +00:00
Elliott Hughes
e6099098a5 Fix mips build.
Move various mips-only things into the arch-mips directory. As soon as mips
writes assembler replacements, we can remove these.

Change-Id: Ia7308559bc361f5c8df3e1d456b381865e060b93
2015-01-27 11:09:27 -08:00
Elliott Hughes
acc06a0b74 Merge "Add a test for float registers across setjmp/logjmp." 2015-01-27 19:08:33 +00:00
Lorenzo Colitti
80fee21ada am ecbeee61: am 329db346: am f2d02c38: Merge "Make bionic compile even if resolver debugging is enabled."
* commit 'ecbeee61ede2b1100e6ff8f3e1d181e7049242c2':
  Make bionic compile even if resolver debugging is enabled.
2015-01-27 18:33:16 +00:00
Christopher Ferris
5bf95c10cf am 99272d40: am 85ecef2c: am 5d428bba: Merge "Do not build host benchmark code on macs."
* commit '99272d40cb989744a5518eed22c71979c35d05b3':
  Do not build host benchmark code on macs.
2015-01-27 18:33:00 +00:00
Yabin Cui
f0de5f8ae6 am 2a79e882: am 65b227b0: am 0e6af17a: Merge "Support --gtest_ouput option in bionic gtest main."
* commit '2a79e8820521d1d6b4fa64599e12d22b358dad7a':
  Support --gtest_ouput option in bionic gtest main.
2015-01-27 18:32:59 +00:00
Elliott Hughes
4bdc2a6105 am ca3396ef: am 192e169a: Merge "x86 has an assembler bcopy implementation."
* commit 'ca3396ef2d08777f83362c72939aed7cfd4f6edf':
  x86 has an assembler bcopy implementation.
2015-01-27 05:59:07 +00:00
Elliott Hughes
ca3396ef2d am 192e169a: Merge "x86 has an assembler bcopy implementation."
* commit '192e169a404fee48483335ed988788924266ff5d':
  x86 has an assembler bcopy implementation.
2015-01-27 05:52:55 +00:00
Elliott Hughes
192e169a40 Merge "x86 has an assembler bcopy implementation." 2015-01-27 05:46:56 +00:00
Elliott Hughes
1edfd9e36a x86 has an assembler bcopy implementation.
Change-Id: I4ed7af3c5b104f86550120401f773150c460f37b
2015-01-26 21:45:56 -08:00
Yabin Cui
67266eacf6 am a8041f9b: am b518836e: Merge "Rename "TIMEWARN" to "SLOW" in bionic gtest."
* commit 'a8041f9b1db0ea8e232bbd98eeb98b7395fca0e6':
  Rename "TIMEWARN" to "SLOW" in bionic gtest.
2015-01-27 05:43:37 +00:00
Yabin Cui
a8041f9b1d am b518836e: Merge "Rename "TIMEWARN" to "SLOW" in bionic gtest."
* commit 'b518836e8c8aa8fce933d59705a24543672bf238':
  Rename "TIMEWARN" to "SLOW" in bionic gtest.
2015-01-27 05:38:20 +00:00
Yabin Cui
b518836e8c Merge "Rename "TIMEWARN" to "SLOW" in bionic gtest." 2015-01-27 05:32:52 +00:00
Elliott Hughes
0dadeb8134 am 2bb5664f: am 643a9be8: Merge "[Arm64] Fix overlapping fp fields in jmp_buf"
* commit '2bb5664f5e73221bbc14def1721bb541c901b277':
  [Arm64] Fix overlapping fp fields in jmp_buf
2015-01-27 05:05:56 +00:00
Elliott Hughes
5bf4a1729a am dedacf10: am 5c7964c5: Merge "Clean up <stdlib.h> slightly."
* commit 'dedacf109b35e74d76594c29560a09f4ef3eb94d':
  Clean up <stdlib.h> slightly.
2015-01-27 05:00:11 +00:00
Elliott Hughes
2bb5664f5e am 643a9be8: Merge "[Arm64] Fix overlapping fp fields in jmp_buf"
* commit '643a9be82e4a9897f22cee6dcb6070ee102107d6':
  [Arm64] Fix overlapping fp fields in jmp_buf
2015-01-27 04:59:51 +00:00
Yabin Cui
4a82ede754 Rename "TIMEWARN" to "SLOW" in bionic gtest.
Bug: 19109188.
Change-Id: Idfe769ac652bf37642da24e4abb6061ca861d57e
2015-01-26 20:56:20 -08:00
Elliott Hughes
643a9be82e Merge "[Arm64] Fix overlapping fp fields in jmp_buf" 2015-01-27 04:56:20 +00:00
Elliott Hughes
dedacf109b am 5c7964c5: Merge "Clean up <stdlib.h> slightly."
* commit '5c7964c5f159bc3e1bbc577c7ace52177f399b21':
  Clean up <stdlib.h> slightly.
2015-01-27 04:54:07 +00:00
Elliott Hughes
87dd503018 Add a test for float registers across setjmp/logjmp.
Change-Id: I17cc056b185755e0b91de096b5ceefee4f4e0b3a
2015-01-26 20:52:34 -08:00
Elliott Hughes
5c7964c5f1 Merge "Clean up <stdlib.h> slightly." 2015-01-27 04:49:07 +00:00
Lorenzo Colitti
ecbeee61ed am 329db346: am f2d02c38: Merge "Make bionic compile even if resolver debugging is enabled."
* commit '329db346f54c629e0c9fcc98c21c19619a573e9b':
  Make bionic compile even if resolver debugging is enabled.
2015-01-27 04:14:09 +00:00
Lorenzo Colitti
329db346f5 am f2d02c38: Merge "Make bionic compile even if resolver debugging is enabled."
* commit 'f2d02c38fb7a7b91ddbb7e54fffa1e9c6c0c7449':
  Make bionic compile even if resolver debugging is enabled.
2015-01-27 04:07:10 +00:00
Lorenzo Colitti
f2d02c38fb Merge "Make bionic compile even if resolver debugging is enabled." 2015-01-27 04:02:42 +00:00
Christopher Ferris
99272d40cb am 85ecef2c: am 5d428bba: Merge "Do not build host benchmark code on macs."
* commit '85ecef2c6b7a624ba9db066ebefcfd0d394da6af':
  Do not build host benchmark code on macs.
2015-01-27 02:18:49 +00:00
Yabin Cui
2a79e88205 am 65b227b0: am 0e6af17a: Merge "Support --gtest_ouput option in bionic gtest main."
* commit '65b227b02e8239ee6a72c3c26f0b1937f80b8027':
  Support --gtest_ouput option in bionic gtest main.
2015-01-27 02:18:17 +00:00
Christopher Ferris
85ecef2c6b am 5d428bba: Merge "Do not build host benchmark code on macs."
* commit '5d428bbab4d5a1124186a75bef6a4fb008682e43':
  Do not build host benchmark code on macs.
2015-01-27 01:37:45 +00:00
Christopher Ferris
5d428bbab4 Merge "Do not build host benchmark code on macs." 2015-01-27 01:32:06 +00:00
Yabin Cui
65b227b02e am 0e6af17a: Merge "Support --gtest_ouput option in bionic gtest main."
* commit '0e6af17a35b1e5e6e8c4a22dcb934bb641a92488':
  Support --gtest_ouput option in bionic gtest main.
2015-01-27 01:21:06 +00:00
Yabin Cui
0e6af17a35 Merge "Support --gtest_ouput option in bionic gtest main." 2015-01-27 01:01:05 +00:00
Christopher Ferris
941a1a191f Do not build host benchmark code on macs.
Macs don't have clock_gettime, and it doesn't seem worth getting this
to run on the host for mac.

Change-Id: I59d9939acc2ede1308b24a60c4242d45355d967d
2015-01-26 16:54:40 -08:00
Yabin Cui
657b1f9bef Support --gtest_ouput option in bionic gtest main.
Bug: 19109500
Change-Id: Ib18f90ad522e66ea62dd4e02e314585d9b36e15f
2015-01-26 16:53:05 -08:00
Duane Sand
dbaab26021 [Arm64] Fix overlapping fp fields in jmp_buf
Change-Id: I9be9f118108f3f6e2bb02a5b01e0420fbfd15d85
2015-01-26 16:20:05 -08:00
Elliott Hughes
76f8916b90 Clean up <stdlib.h> slightly.
Interestingly, this mostly involves cleaning up our implementation of
various <string.h> functions.

Change-Id: Ifaef49b5cb997134f7bc0cc31bdac844bdb9e089
2015-01-26 14:28:41 -08:00
Christopher Ferris
15f382585c am 62c51518: am a5af57d3: am 419ed122: Merge "Update kernel headers to v3.18.3."
* commit '62c51518abc6f05b37efc4fdda4637e62de9ee3f':
  Update kernel headers to v3.18.3.
2015-01-26 22:09:47 +00:00
Elliott Hughes
6660e98965 am 46bed722: am e3c350f8: am 247cfe03: Merge "Add <error.h>."
* commit '46bed722eb4726cef7bccfa266dc32ab9d3f2886':
  Add <error.h>.
2015-01-26 22:09:35 +00:00
Christopher Ferris
62c51518ab am a5af57d3: am 419ed122: Merge "Update kernel headers to v3.18.3."
* commit 'a5af57d3e6e8cccf32d0e84eb148b5f4b9db3552':
  Update kernel headers to v3.18.3.
2015-01-26 21:45:15 +00:00
Christopher Ferris
a5af57d3e6 am 419ed122: Merge "Update kernel headers to v3.18.3."
* commit '419ed122aa21cf04334f21baab135ac4f9f49840':
  Update kernel headers to v3.18.3.
2015-01-26 21:33:55 +00:00
Christopher Ferris
419ed122aa Merge "Update kernel headers to v3.18.3." 2015-01-26 21:27:52 +00:00
Elliott Hughes
46bed722eb am e3c350f8: am 247cfe03: Merge "Add <error.h>."
* commit 'e3c350f8c8a3be0637e4894639b14a3965a1b312':
  Add <error.h>.
2015-01-26 20:53:58 +00:00
Elliott Hughes
e3c350f8c8 am 247cfe03: Merge "Add <error.h>."
* commit '247cfe03825f46e38371954d04fcb90a8b36c824':
  Add <error.h>.
2015-01-26 20:46:58 +00:00
Elliott Hughes
247cfe0382 Merge "Add <error.h>." 2015-01-26 20:38:46 +00:00
Elliott Hughes
b8a8cf0d1a Add <error.h>.
Bug: https://code.google.com/p/android/issues/detail?id=79170
Change-Id: Id91765fac45124545e2674a5b2c814707c1a448b
2015-01-26 11:57:11 -08:00
Christopher Ferris
82d7504cd7 Update kernel headers to v3.18.3.
Bug: 19127803
Change-Id: I67fa0832322ddd0032d909476047578be052bcf2
2015-01-26 10:57:07 -08:00
Lorenzo Colitti
616344d169 Make bionic compile even if resolver debugging is enabled.
The code now compiles with all combinations of DEBUG and
DEBUG_DATA except DEBUG_DATA=1, DEBUG=0, which is unsupported.

Change-Id: I9035a65c649df73092f1fc0864ae1cdd9a14aa3b
2015-01-26 16:05:27 +09:00
Dan Albert
5dd626840b am 7102d69e: am 2991f2a3: am 6eb5dc1d: Merge "Fix coverage build after adding clang coverage."
* commit '7102d69ef1d3e264e63fcd75d078231c11daa4d3':
  Fix coverage build after adding clang coverage.
2015-01-25 23:09:57 +00:00
Dan Albert
7102d69ef1 am 2991f2a3: am 6eb5dc1d: Merge "Fix coverage build after adding clang coverage."
* commit '2991f2a3d92f54757c0e726a3dcaa103cd8fed9e':
  Fix coverage build after adding clang coverage.
2015-01-25 23:05:47 +00:00
Dan Albert
2991f2a3d9 am 6eb5dc1d: Merge "Fix coverage build after adding clang coverage."
* commit '6eb5dc1d9c38ff8f717b70a2f66417c599aeb08c':
  Fix coverage build after adding clang coverage.
2015-01-25 22:55:24 +00:00
Dan Albert
6eb5dc1d9c Merge "Fix coverage build after adding clang coverage." 2015-01-25 22:51:37 +00:00
Dan Albert
6e9e6ad3bf Fix coverage build after adding clang coverage.
Static libraries are painful. Details are in the comment. I'll try to
get prebuilts in to the tree so I can fix this on Monday. Until then,
this isn't actually a regression because we've not had coverage
available for this library until now anyway.

Bug: 17574078
Change-Id: I7505c8a94007203e15a6cf192caa06004849d7d9
2015-01-25 14:27:51 -08:00
Elliott Hughes
2e747a65c0 am a028ab9e: am c7aaf228: am f108bbba: Merge "Remove obsolete BUILD_TINY_ANDROID."
* commit 'a028ab9e09fc08d7551fe20514d197f7fa4cb86f':
  Remove obsolete BUILD_TINY_ANDROID.
2015-01-25 21:00:53 +00:00
Elliott Hughes
a028ab9e09 am c7aaf228: am f108bbba: Merge "Remove obsolete BUILD_TINY_ANDROID."
* commit 'c7aaf228beddc4c68a3e4f3986aee40c568c208c':
  Remove obsolete BUILD_TINY_ANDROID.
2015-01-25 20:42:50 +00:00
Elliott Hughes
c7aaf228be am f108bbba: Merge "Remove obsolete BUILD_TINY_ANDROID."
* commit 'f108bbbaf7a11c3226780d0424fa123155e30f36':
  Remove obsolete BUILD_TINY_ANDROID.
2015-01-25 05:17:29 +00:00
Elliott Hughes
f108bbbaf7 Merge "Remove obsolete BUILD_TINY_ANDROID." 2015-01-25 05:09:21 +00:00
Elliott Hughes
14152b9f31 Remove obsolete BUILD_TINY_ANDROID.
Change-Id: If2fc97134340fd09ec2583b666ace2f673cbdf66
2015-01-24 19:01:58 -08:00
Elliott Hughes
e361dbb8fc am 9e4827de: am 7eed99da: am 66eeec8e: Merge "Reduce <stdlib.h> namespace pollution."
* commit '9e4827de125e37bec0bc2a2c02b65176b30129f9':
  Reduce <stdlib.h> namespace pollution.
2015-01-24 23:57:37 +00:00
Elliott Hughes
9e4827de12 am 7eed99da: am 66eeec8e: Merge "Reduce <stdlib.h> namespace pollution."
* commit '7eed99dad95003b8b40e6a1136bd83ac68dc54dc':
  Reduce <stdlib.h> namespace pollution.
2015-01-24 23:53:11 +00:00
Elliott Hughes
7eed99dad9 am 66eeec8e: Merge "Reduce <stdlib.h> namespace pollution."
* commit '66eeec8e160feddc2b35c4ff9d20de92f37331dd':
  Reduce <stdlib.h> namespace pollution.
2015-01-24 23:47:36 +00:00
Elliott Hughes
66eeec8e16 Merge "Reduce <stdlib.h> namespace pollution." 2015-01-24 23:44:27 +00:00
Elliott Hughes
c5dc02a91e Reduce <stdlib.h> namespace pollution.
<stdlib.h> shouldn't drag in all of <string.h>.

Change-Id: I949172f7ff17e329e411e5054e50f79c13775444
2015-01-24 15:22:57 -08:00
Elliott Hughes
568ecb2314 am fe1709bd: am 12144696: am 62d20fb2: Merge "Reduce <signal.h> namespace pollution."
* commit 'fe1709bdca1a335df315ba11efcdfec96e71658f':
  Reduce <signal.h> namespace pollution.
2015-01-24 22:55:16 +00:00
Elliott Hughes
fe1709bdca am 12144696: am 62d20fb2: Merge "Reduce <signal.h> namespace pollution."
* commit '12144696ac9b53462fbfb0fb4f1a181e10df7437':
  Reduce <signal.h> namespace pollution.
2015-01-24 22:47:01 +00:00
Elliott Hughes
12144696ac am 62d20fb2: Merge "Reduce <signal.h> namespace pollution."
* commit '62d20fb21948d7a31d453ec08ed5abc02d3dd1d3':
  Reduce <signal.h> namespace pollution.
2015-01-24 22:41:01 +00:00
Elliott Hughes
62d20fb219 Merge "Reduce <signal.h> namespace pollution." 2015-01-24 22:34:51 +00:00
Elliott Hughes
ddc4c8f8ec am cf936c1e: am 61a80735: am 6e15edcc: Merge "Say "Bad file descriptor" rather than "Bad file number"."
* commit 'cf936c1e43456d50f9d58444442e31609ff75256':
  Say "Bad file descriptor" rather than "Bad file number".
2015-01-24 22:24:27 +00:00
Elliott Hughes
6466292a7e Reduce <signal.h> namespace pollution.
<signal.h> shouldn't drag in all of <string.h>.

Change-Id: I57aea36dad5e89ea2f9541c35594ca6225e532be
2015-01-24 14:18:16 -08:00
Elliott Hughes
cf936c1e43 am 61a80735: am 6e15edcc: Merge "Say "Bad file descriptor" rather than "Bad file number"."
* commit '61a8073565dd9870f4f93a96f91881955833757b':
  Say "Bad file descriptor" rather than "Bad file number".
2015-01-24 22:18:09 +00:00
Elliott Hughes
61a8073565 am 6e15edcc: Merge "Say "Bad file descriptor" rather than "Bad file number"."
* commit '6e15edcca5f5b35221b33e9994c236f148cb3c38':
  Say "Bad file descriptor" rather than "Bad file number".
2015-01-24 22:12:06 +00:00
Elliott Hughes
6e15edcca5 Merge "Say "Bad file descriptor" rather than "Bad file number"." 2015-01-24 22:08:20 +00:00
Elliott Hughes
851f09de5d am e5cfda5b: am 94a4a173: am 59936a3b: Merge "Fix optimized fread."
* commit 'e5cfda5b5d372ef674e8f8c36faded2d653c10b5':
  Fix optimized fread.
2015-01-24 21:43:05 +00:00
Elliott Hughes
d309877eee Say "Bad file descriptor" rather than "Bad file number".
This text is actually in POSIX (though it's not mandatory) and it's what glibc
says. Who says "file number" anyway?

Change-Id: Icc91ac24587c2bc692e0b97c19d32ac1bdda4ea7
2015-01-24 13:38:57 -08:00
Elliott Hughes
e5cfda5b5d am 94a4a173: am 59936a3b: Merge "Fix optimized fread."
* commit '94a4a173d24ce8feac5c49fb5ad209a836d41439':
  Fix optimized fread.
2015-01-24 21:38:15 +00:00
Elliott Hughes
94a4a173d2 am 59936a3b: Merge "Fix optimized fread."
* commit '59936a3b51474fc3216659f089ff6543ac31ab4e':
  Fix optimized fread.
2015-01-24 21:31:09 +00:00
Elliott Hughes
59936a3b51 Merge "Fix optimized fread." 2015-01-24 21:25:06 +00:00
Elliott Hughes
e6bb5a2776 Fix optimized fread.
gcov does writes after reads on the same stream, but the bulk read optimization
was clobbering the FILE _flags, causing fwrite to fail.

Bug: 19129055
Change-Id: I9650cb7de4bb173a706b502406266ed0d2b654d7
2015-01-24 12:35:41 -08:00
Dmitriy Ivanov
844b4e1638 am ebbf3b0e: am 37043dff: am 31005ca4: Merge "Minimize calls to mprotect"
* commit 'ebbf3b0ec22d729b9531ed562322655844676df4':
  Minimize calls to mprotect
2015-01-24 16:58:12 +00:00
Dan Albert
849f23c594 am 1042afe6: am e6ad1630: am 305be18d: Merge "Allow make to set a timeout for the host tests."
* commit '1042afe618c7b2f06d520f9cadc4482124e5c875':
  Allow make to set a timeout for the host tests.
2015-01-24 16:58:03 +00:00
Chih-Hung Hsieh
791081c37b am 54ab69d3: am 75bce066: am f5ae7e91: Merge "Add comments about the -shared flag."
* commit '54ab69d33fb39c4e97e401087e384a944345d1e4':
  Add comments about the -shared flag.
2015-01-24 16:57:51 +00:00
Dmitriy Ivanov
ebbf3b0ec2 am 37043dff: am 31005ca4: Merge "Minimize calls to mprotect"
* commit '37043dff1d2d7ea475cea1ef5728fbf88f6fb321':
  Minimize calls to mprotect
2015-01-24 00:59:54 +00:00
Dmitriy Ivanov
37043dff1d am 31005ca4: Merge "Minimize calls to mprotect"
* commit '31005ca4c8562f3e6dfbed079eeaff8361ff8cdc':
  Minimize calls to mprotect
2015-01-24 00:51:09 +00:00
Dmitriy Ivanov
31005ca4c8 Merge "Minimize calls to mprotect" 2015-01-24 00:45:25 +00:00
Dmitriy Ivanov
279a22f96e Minimize calls to mprotect
Implement refcounter based data protection guard
  to avoid unnecessary calls to mprotect when dlopen/dlclose
  is called from a constructor.

Bug: 19124318
Big: 7941716
Change-Id: Id221b84ce75443094f99756dc9950b0a1dc87222
2015-01-23 16:30:34 -08:00
Dan Albert
1042afe618 am e6ad1630: am 305be18d: Merge "Allow make to set a timeout for the host tests."
* commit 'e6ad16304d054a9e6fff25693153a03455808bde':
  Allow make to set a timeout for the host tests.
2015-01-24 00:13:54 +00:00
Dan Albert
e6ad16304d am 305be18d: Merge "Allow make to set a timeout for the host tests."
* commit '305be18d10254df4a9444f8505f569e94718f488':
  Allow make to set a timeout for the host tests.
2015-01-24 00:07:20 +00:00
Chih-Hung Hsieh
54ab69d33f am 75bce066: am f5ae7e91: Merge "Add comments about the -shared flag."
* commit '75bce0660ad558577dd5a2913f8fbcd39da1cbb6':
  Add comments about the -shared flag.
2015-01-24 00:04:17 +00:00
Dan Albert
305be18d10 Merge "Allow make to set a timeout for the host tests." 2015-01-24 00:01:40 +00:00
Chih-Hung Hsieh
75bce0660a am f5ae7e91: Merge "Add comments about the -shared flag."
* commit 'f5ae7e91ea2c3364d6423ef4d54f5f295197335f':
  Add comments about the -shared flag.
2015-01-23 23:41:01 +00:00
Chih-Hung Hsieh
f5ae7e91ea Merge "Add comments about the -shared flag." 2015-01-23 23:33:54 +00:00
Elliott Hughes
ed78e5f883 am 590641b0: am cf744fc8: am 7f3d65de: Merge "Add a log message to make the transition from linker to user code clear."
* commit '590641b0ad90d88c99cf965036d3c806f381d879':
  Add a log message to make the transition from linker to user code clear.
2015-01-23 19:57:07 +00:00
Dan Albert
4ce907d2ce Allow make to set a timeout for the host tests.
Change-Id: Icc2ebf64bd1da1687bf313fe7a5640155c5795d8
2015-01-23 11:35:48 -08:00
Elliott Hughes
590641b0ad am cf744fc8: am 7f3d65de: Merge "Add a log message to make the transition from linker to user code clear."
* commit 'cf744fc89a7bac815bb42802dcfce73101ddbe1d':
  Add a log message to make the transition from linker to user code clear.
2015-01-23 19:14:16 +00:00
Elliott Hughes
cf744fc89a am 7f3d65de: Merge "Add a log message to make the transition from linker to user code clear."
* commit '7f3d65de8cf2920981d73adee278c0d7bee79170':
  Add a log message to make the transition from linker to user code clear.
2015-01-23 18:59:45 +00:00
Elliott Hughes
7f3d65de8c Merge "Add a log message to make the transition from linker to user code clear." 2015-01-23 18:55:30 +00:00
Elliott Hughes
611f95689e Add a log message to make the transition from linker to user code clear.
Handy when looking at strace output for seeing "where does my code start?",
though you'll need to set LD_DEBUG=1 (or greater) and constructors will
already have run (but you can set LD_DEBUG to a higher value to track that).

Change-Id: I82d53a7123b39febf5b2a956de83c8a30f229651
2015-01-23 10:43:58 -08:00
Dmitriy Ivanov
39b7bc3167 am 4d2dcb89: am 8e2b0e55: am bb3b1303: Merge "Enable -Wold-style-cast warnings for linker"
* commit '4d2dcb896abcf3e13972665d3eaf179365bc799f':
  Enable -Wold-style-cast warnings for linker
2015-01-23 04:19:50 +00:00
Dmitriy Ivanov
4d2dcb896a am 8e2b0e55: am bb3b1303: Merge "Enable -Wold-style-cast warnings for linker"
* commit '8e2b0e550a8e64da23c95fe265dbea7c6701e7c1':
  Enable -Wold-style-cast warnings for linker
2015-01-23 03:28:02 +00:00
Dmitriy Ivanov
8e2b0e550a am bb3b1303: Merge "Enable -Wold-style-cast warnings for linker"
* commit 'bb3b1303e1167a662218c9686977b379964e0072':
  Enable -Wold-style-cast warnings for linker
2015-01-23 03:14:35 +00:00
Dan Albert
3e41329e62 am 2e7715b2: am f908b21a: am ab58559a: Merge "Add a basic NDK compatibility library."
* commit '2e7715b29fc7e2e96c997eb005343cd8563fff36':
  Add a basic NDK compatibility library.
2015-01-23 03:12:17 +00:00
Elliott Hughes
c6f3ed2db4 am 682d5d8b: am 9c8a5265: am b161fe27: Merge "There\'s no such thing as LOCAL_CXXFLAGS."
* commit '682d5d8b826a8b4fec181dde264caa699955aecd':
  There's no such thing as LOCAL_CXXFLAGS.
2015-01-23 03:10:40 +00:00
Elliott Hughes
08c18b67f8 am 4adced31: am 25437c59: am ae095a73: Merge "Fix the stdio.fread_EOF test."
* commit '4adced31e84d299a907e8ffa0f8ff9840a1ce5ee':
  Fix the stdio.fread_EOF test.
2015-01-23 03:10:39 +00:00
Elliott Hughes
903dbf99a0 am 0f7f31f8: am a0313e04: am d5d9221b: Merge "Fix fread_EOF test name."
* commit '0f7f31f8193ffb61d73d3a3f2c89e437f81a0245':
  Fix fread_EOF test name.
2015-01-23 03:10:38 +00:00
Dmitriy Ivanov
bb3b1303e1 Merge "Enable -Wold-style-cast warnings for linker" 2015-01-23 03:09:22 +00:00
Chih-Hung Hsieh
306ea7ebe5 Add comments about the -shared flag.
Must build this linker as a shared object.
A statically linked module does not load during init.

BUG: 18008984

Change-Id: I5f0411129024edcb9381c473ea4e741a075e9184
2015-01-22 19:09:20 -08:00
Dan Albert
2e7715b29f am f908b21a: am ab58559a: Merge "Add a basic NDK compatibility library."
* commit 'f908b21a5cdb68184907ac6cb1475dfe771c28cf':
  Add a basic NDK compatibility library.
2015-01-23 00:54:53 +00:00
Dan Albert
f908b21a5c am ab58559a: Merge "Add a basic NDK compatibility library."
* commit 'ab58559a9cc40766c0636c6e97a93dfd5e74d923':
  Add a basic NDK compatibility library.
2015-01-23 00:51:39 +00:00
Elliott Hughes
682d5d8b82 am 9c8a5265: am b161fe27: Merge "There\'s no such thing as LOCAL_CXXFLAGS."
* commit '9c8a5265c9a2262735214a1310b5fc0246873bc9':
  There's no such thing as LOCAL_CXXFLAGS.
2015-01-23 00:50:32 +00:00
Elliott Hughes
4adced31e8 am 25437c59: am ae095a73: Merge "Fix the stdio.fread_EOF test."
* commit '25437c598473a22a697b8cae009a897df80f38e6':
  Fix the stdio.fread_EOF test.
2015-01-23 00:50:31 +00:00
Dan Albert
ab58559a9c Merge "Add a basic NDK compatibility library." 2015-01-23 00:46:54 +00:00
Elliott Hughes
0f7f31f819 am a0313e04: am d5d9221b: Merge "Fix fread_EOF test name."
* commit 'a0313e04b368c3af4152c573780549477b0ec5f8':
  Fix fread_EOF test name.
2015-01-23 00:46:45 +00:00
Dmitriy Ivanov
1649e7ee5b Enable -Wold-style-cast warnings for linker
And fix old style casts.

Change-Id: I37e7a3e3fd852528ea76f02d967c7bd8cd5b06c9
2015-01-22 16:33:30 -08:00
Elliott Hughes
9c8a5265c9 am b161fe27: Merge "There\'s no such thing as LOCAL_CXXFLAGS."
* commit 'b161fe27433b899b896b5685571373df4a1f8a21':
  There's no such thing as LOCAL_CXXFLAGS.
2015-01-22 23:41:35 +00:00
Elliott Hughes
25437c5984 am ae095a73: Merge "Fix the stdio.fread_EOF test."
* commit 'ae095a730d6b3af69dc5eff662c5609cde6f5d70':
  Fix the stdio.fread_EOF test.
2015-01-22 23:41:34 +00:00
Elliott Hughes
b161fe2743 Merge "There's no such thing as LOCAL_CXXFLAGS." 2015-01-22 23:40:08 +00:00
Elliott Hughes
62284dd2cc There's no such thing as LOCAL_CXXFLAGS.
Change-Id: Iad70e6bd4cb7cec9e0ece500a540e4dadc83d92e
2015-01-22 15:36:24 -08:00
Elliott Hughes
ae095a730d Merge "Fix the stdio.fread_EOF test." 2015-01-22 23:35:48 +00:00
Elliott Hughes
0ed7e08cda Fix the stdio.fread_EOF test.
Another sizeof/strlen screwup caused by trying to be too clever. Use
std::string instead.

Also fix all the ASSERT_STREQ calls in this file that had the arguments
the right^Wwrong way round. If I ever see Kent Beck...

Change-Id: I47a1bdfee99cf4e7bed9b398f3158a308fbcf1e8
2015-01-22 15:28:48 -08:00
Elliott Hughes
a0313e04b3 am d5d9221b: Merge "Fix fread_EOF test name."
* commit 'd5d9221b9c96a8213b0a83dde468653d49e76dd8':
  Fix fread_EOF test name.
2015-01-22 22:28:23 +00:00
Elliott Hughes
d5d9221b9c Merge "Fix fread_EOF test name." 2015-01-22 22:24:53 +00:00
Elliott Hughes
bcb378d643 Fix fread_EOF test name.
Change-Id: I53a7f1428fd27c0b2a5c80f2e8af4845d17f5b4b
2015-01-22 14:18:35 -08:00
Dan Albert
d75ff6c9ea am b874754c: am 579fda5f: am d2806754: Merge "Add support for building other architectures."
* commit 'b874754c2b3e46017e6af222e8f0f77d08948968':
  Add support for building other architectures.
2015-01-22 22:16:37 +00:00
Dan Albert
b874754c2b am 579fda5f: am d2806754: Merge "Add support for building other architectures."
* commit '579fda5f0d9db0042cec9741f0cd8a68c57dfaaf':
  Add support for building other architectures.
2015-01-22 22:10:49 +00:00
Dan Albert
579fda5f0d am d2806754: Merge "Add support for building other architectures."
* commit 'd280675405e605d47c74c037b0d2b4f06826ed4d':
  Add support for building other architectures.
2015-01-22 22:04:48 +00:00
Dan Albert
d280675405 Merge "Add support for building other architectures." 2015-01-22 22:00:37 +00:00
Elliott Hughes
08aec8cbd3 am 9455d3b7: am d4517fb3: am 53df4bfc: Merge "Use a more specific return type for app_id_from_name."
* commit '9455d3b7a07628bed4cb36b25f1a6e5af84ce881':
  Use a more specific return type for app_id_from_name.
2015-01-22 20:32:15 +00:00
Elliott Hughes
7647f16284 am f7b64d09: am 69838daa: am d1668a71: Merge "Turn on -Wold-style-cast and fix the errors."
* commit 'f7b64d09002b22fade3ab703cf31c7b140ea9cd1':
  Turn on -Wold-style-cast and fix the errors.
2015-01-22 20:32:15 +00:00
Elliott Hughes
9455d3b7a0 am d4517fb3: am 53df4bfc: Merge "Use a more specific return type for app_id_from_name."
* commit 'd4517fb37ce5d306fa3d6f65e0fcfe949e7fd6fd':
  Use a more specific return type for app_id_from_name.
2015-01-22 20:26:36 +00:00
Elliott Hughes
d4517fb37c am 53df4bfc: Merge "Use a more specific return type for app_id_from_name."
* commit '53df4bfce81d8a6cfd4b5d991f5299f18dc4c958':
  Use a more specific return type for app_id_from_name.
2015-01-22 20:21:30 +00:00
Elliott Hughes
53df4bfce8 Merge "Use a more specific return type for app_id_from_name." 2015-01-22 20:15:04 +00:00
Elliott Hughes
c56af08c21 Use a more specific return type for app_id_from_name.
I suspect we can simplify this code, but I don't know enough about it
to get involved now.

Change-Id: I1c39761ae31beb70d41ffa6f0e396a4f17529d46
2015-01-22 11:02:59 -08:00
Dan Albert
9c3fd59b00 Add a basic NDK compatibility library.
We know we can safely statically link `libm`, since it doesn't have
any dependencies on the OS or the layout of a data type that has
changed between releases (like `pthread_t`).

We can safely statically link `libc_syscalls` because the user can
check for and handle `ENOSYS`.

Update `ndk_missing_symbols.py` to account for symbols that are in the
compatibility library.

Improve `symbols.py` to be able to pull symbols from a static library.

Change-Id: Ifb0ede1e8b4a8f0f33865d9fed72fb8b4d443fbc
2015-01-21 18:12:15 -08:00
Dan Albert
2b6c99b6e2 am 0855e923: am c673a2fe: am 4f11c59b: Merge "Add ndk_missing_symbols.py."
* commit '0855e923f6ff268632a9529caf44ae526953842a':
  Add ndk_missing_symbols.py.
2015-01-22 02:07:36 +00:00
Elliott Hughes
f7b64d0900 am 69838daa: am d1668a71: Merge "Turn on -Wold-style-cast and fix the errors."
* commit '69838daa8764eb4d008df679e961fb510a37687b':
  Turn on -Wold-style-cast and fix the errors.
2015-01-22 02:02:46 +00:00
Elliott Hughes
563fbe2863 am 0edffb85: am a2e5d98b: am 2a8c929a: Merge "Implement __fsetlocking."
* commit '0edffb85fa40987c00dd078111c6218efd5aded7':
  Implement __fsetlocking.
2015-01-22 01:59:21 +00:00
Christopher Ferris
6d37015dfd am 0a45cc25: am 0930323e: am 8476b8ed: Merge "Contact proper debuggerd when crashing."
* commit '0a45cc25566049860f3f38ab174569964af6ac6a':
  Contact proper debuggerd when crashing.
2015-01-22 01:59:21 +00:00
Dan Albert
a91ab8f2c5 am f0de7d6c: am a6e2e070: am fbc70d38: Merge "Report 404 errors from Gerrit and continue."
* commit 'f0de7d6c6973b0c2e268fac4373bfd5765b49dc1':
  Report 404 errors from Gerrit and continue.
2015-01-22 01:59:20 +00:00
Elliott Hughes
69838daa87 am d1668a71: Merge "Turn on -Wold-style-cast and fix the errors."
* commit 'd1668a71df761eb1644496f3e2c77c16fd54bb06':
  Turn on -Wold-style-cast and fix the errors.
2015-01-22 01:55:33 +00:00
Dan Albert
0855e923f6 am c673a2fe: am 4f11c59b: Merge "Add ndk_missing_symbols.py."
* commit 'c673a2fea9246665ff87d619c48e882800a0793d':
  Add ndk_missing_symbols.py.
2015-01-22 01:54:29 +00:00
Elliott Hughes
d1668a71df Merge "Turn on -Wold-style-cast and fix the errors." 2015-01-22 01:52:06 +00:00
Dan Albert
c673a2fea9 am 4f11c59b: Merge "Add ndk_missing_symbols.py."
* commit '4f11c59b3f3acffe6c8e359296a9e38c4b7edfb6':
  Add ndk_missing_symbols.py.
2015-01-22 01:31:42 +00:00
Dan Albert
4f11c59b3f Merge "Add ndk_missing_symbols.py." 2015-01-22 01:25:57 +00:00
Elliott Hughes
8b5df3920f Turn on -Wold-style-cast and fix the errors.
A couple of dodgy cases where we cast away const, but otherwise pretty boring.

Change-Id: Ibc39ebd525377792b5911464be842121c20f03b9
2015-01-21 17:09:58 -08:00
Dan Albert
169eb66451 Add ndk_missing_symbols.py.
ndk_missing_symbols.py pulls libc.so and libm.so off a running device
or emulator and shows the list of symbols that are in the current
bionic that aren't available on the target.

Change-Id: Ia92c315a6a0ce2e5c33db0b62c8fab41c08a4c31
2015-01-21 17:09:50 -08:00
Elliott Hughes
0edffb85fa am a2e5d98b: am 2a8c929a: Merge "Implement __fsetlocking."
* commit 'a2e5d98b641bef4c5611f6aba5defff74abcad93':
  Implement __fsetlocking.
2015-01-22 00:13:10 +00:00
Christopher Ferris
0a45cc2556 am 0930323e: am 8476b8ed: Merge "Contact proper debuggerd when crashing."
* commit '0930323e98e88157b567dab3b1c75618229dd281':
  Contact proper debuggerd when crashing.
2015-01-22 00:13:09 +00:00
Dan Albert
f0de7d6c69 am a6e2e070: am fbc70d38: Merge "Report 404 errors from Gerrit and continue."
* commit 'a6e2e070f2add9869e2160e3c0ca4454cac7bb7b':
  Report 404 errors from Gerrit and continue.
2015-01-22 00:13:08 +00:00
Elliott Hughes
a2e5d98b64 am 2a8c929a: Merge "Implement __fsetlocking."
* commit '2a8c929aaf8d34d2b6e89ed9c8b6da163316143e':
  Implement __fsetlocking.
2015-01-21 22:58:17 +00:00
Christopher Ferris
0930323e98 am 8476b8ed: Merge "Contact proper debuggerd when crashing."
* commit '8476b8ed9e290d79cd00e7801c505268f0e8ec15':
  Contact proper debuggerd when crashing.
2015-01-21 22:58:11 +00:00
Dan Albert
a6e2e070f2 am fbc70d38: Merge "Report 404 errors from Gerrit and continue."
* commit 'fbc70d3899a58e6aff7d3e94803fcdc80629de5a':
  Report 404 errors from Gerrit and continue.
2015-01-21 22:58:07 +00:00
Elliott Hughes
2a8c929aaf Merge "Implement __fsetlocking." 2015-01-21 19:42:44 +00:00
Christopher Ferris
8476b8ed9e Merge "Contact proper debuggerd when crashing." 2015-01-21 18:39:59 +00:00
Elliott Hughes
8c4994bbc1 Implement __fsetlocking.
The old __isthreaded hack was never very useful on Android because all user
code runs in a VM where there are lots of threads running. But __fsetlocking
lets a caller say "I'll worry about the locking for this FILE*", which is
useful for the normal case where you don't share a FILE* between threads
so you don't need any locking.

Bug: 17154740
Bug: 18593728
Change-Id: I2a8dddc29d3edff39a3d7d793387f2253608a68d
2015-01-21 10:33:30 -08:00
Dan Albert
fbc70d3899 Merge "Report 404 errors from Gerrit and continue." 2015-01-21 18:25:40 +00:00
Dan Albert
2b87351063 Report 404 errors from Gerrit and continue.
Currently, we get a 404 from Gerrit in the event that two projects
have the same Change-Id. We should be able to handle this and actually
cherry-pick each change so we can check multi-project changes, but for
now just skip these changes.

Change-Id: I7bc63208998d58beec83b71b302450d9be3ea026
2015-01-21 09:56:28 -08:00
Elliott Hughes
d170e58b7c am eb1ac69d: am 45bdcf89: am f3743584: Merge "Fix signed/unsigned comparison that was upsetting clang."
* commit 'eb1ac69d453c586192f1fff8bb8604f9c54a718e':
  Fix signed/unsigned comparison that was upsetting clang.
2015-01-21 02:25:41 +00:00
Elliott Hughes
74ed6c32cb am e574a70d: am c4f1cfc9: am a779719d: Merge "Add TEMP_FAILURE_RETRY to stdio\'s low-level read/write functions."
* commit 'e574a70d1e3dca32893ded21ae043221a1f9882a':
  Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions.
2015-01-21 02:25:39 +00:00
Elliott Hughes
0514b6be04 am 6428c625: am 7d196768: am 927d8be7: Merge "Fix build error when XLOG is enabled"
* commit '6428c625e8012cbb7a367e900d2a9c31439c6ebf':
  Fix build error when XLOG is enabled
2015-01-21 02:25:38 +00:00
Elliott Hughes
288e599eb8 am 822fe55e: am 06645218: am c053a428: Merge "Optimized fread."
* commit '822fe55ea982326c91df79ef2e8eeed4f8052d3a':
  Optimized fread.
2015-01-21 02:25:37 +00:00
Elliott Hughes
eb1ac69d45 am 45bdcf89: am f3743584: Merge "Fix signed/unsigned comparison that was upsetting clang."
* commit '45bdcf895b7f4cd6b4741fe33bc7a56d40fb220a':
  Fix signed/unsigned comparison that was upsetting clang.
2015-01-21 02:21:59 +00:00
Elliott Hughes
e574a70d1e am c4f1cfc9: am a779719d: Merge "Add TEMP_FAILURE_RETRY to stdio\'s low-level read/write functions."
* commit 'c4f1cfc9fc5ba053525cd155d50fae8b67df0392':
  Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions.
2015-01-21 02:21:58 +00:00
Elliott Hughes
6428c625e8 am 7d196768: am 927d8be7: Merge "Fix build error when XLOG is enabled"
* commit '7d196768029f36b0e3fa57ba747ce58ef2b1c9d6':
  Fix build error when XLOG is enabled
2015-01-21 02:21:57 +00:00
Elliott Hughes
822fe55ea9 am 06645218: am c053a428: Merge "Optimized fread."
* commit '0664521893e88f2cd266306e707a832d9d1f94a2':
  Optimized fread.
2015-01-21 02:21:56 +00:00
Elliott Hughes
45bdcf895b am f3743584: Merge "Fix signed/unsigned comparison that was upsetting clang."
* commit 'f374358414812d3e5a45ba75a2b1926693924420':
  Fix signed/unsigned comparison that was upsetting clang.
2015-01-21 02:11:35 +00:00
Elliott Hughes
c4f1cfc9fc am a779719d: Merge "Add TEMP_FAILURE_RETRY to stdio\'s low-level read/write functions."
* commit 'a779719d628de5e504dac08d334bc576f3b7fb0a':
  Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions.
2015-01-21 02:11:34 +00:00
Elliott Hughes
7d19676802 am 927d8be7: Merge "Fix build error when XLOG is enabled"
* commit '927d8be76d956fcda630e1088e9b89eb31be5146':
  Fix build error when XLOG is enabled
2015-01-21 02:11:33 +00:00
Elliott Hughes
0664521893 am c053a428: Merge "Optimized fread."
* commit 'c053a42831165044cca0bb9eb220b8f5d27fdd18':
  Optimized fread.
2015-01-21 02:11:32 +00:00
Christopher Ferris
151da68100 Contact proper debuggerd when crashing.
Make the request structure match the new structure found in debuggerd
code.

On 64 bit systems, make sure that the 32 bit compiled linker is contacted.

Bug: https://code.google.com/p/android/issues/detail?id=97024
Change-Id: I675b8ff222fcf836b05de4e9b5976ff91ca929bf
2015-01-20 17:22:25 -08:00
Elliott Hughes
f374358414 Merge "Fix signed/unsigned comparison that was upsetting clang." 2015-01-21 00:57:06 +00:00
Elliott Hughes
e69e6458cc Fix signed/unsigned comparison that was upsetting clang.
bionic/libc/stdio/fread.c:86:27: error: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Werror,-Wsign-compare]

Change-Id: Ia7e1e053e0cb13113e8f2eede820be013acbab82
2015-01-20 16:52:04 -08:00
Elliott Hughes
a779719d62 Merge "Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions." 2015-01-21 00:50:01 +00:00
Elliott Hughes
8885dcc779 Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions.
This is correctness rather than performance, but found while investigating
performance.

Bug: 18593728
Change-Id: Idbdfed89d1931fcfae65db29d662108d4bbd9b65
2015-01-20 16:18:32 -08:00
Elliott Hughes
927d8be76d Merge "Fix build error when XLOG is enabled" 2015-01-21 00:13:28 +00:00
Patrick Tjin
a6a0949b1d Fix build error when XLOG is enabled
(cherrypick of 79a49c9857f3949fc13373eeb179f27b6ecdca81.)

Change-Id: I7bb44fd1fe3ef2ddfc115247f328eccfceeb5352
Signed-off-by: Patrick Tjin <pattjin@google.com>
2015-01-20 16:12:45 -08:00
Elliott Hughes
c053a42831 Merge "Optimized fread." 2015-01-21 00:11:31 +00:00
Patrick Tjin
6aa63a9b8e Merge "Fix build error when XLOG is enabled" 2015-01-21 00:09:27 +00:00
Patrick Tjin
79a49c9857 Fix build error when XLOG is enabled
Change-Id: I7bb44fd1fe3ef2ddfc115247f328eccfceeb5352
Signed-off-by: Patrick Tjin <pattjin@google.com>
2015-01-20 16:04:53 -08:00
Elliott Hughes
75b99387dd Optimized fread.
This makes us competitive with glibc for fully-buffered and unbuffered reads,
except in single-threaded situations where glibc avoids locking, but since
we're never really single-threaded anyway, that isn't a priority.

Bug: 18593728
Change-Id: Ib776bfba422ccf46209581fc0dc54f3567645b8f
2015-01-20 15:59:17 -08:00
Yabin Cui
fc35d1f887 am 0d53dd80: am da307e7d: am d3d75c02: Merge "Remove testcase time printing in bionic-unit-tests."
* commit '0d53dd8081e618ca6891f33dae1045d3cd565010':
  Remove testcase time printing in bionic-unit-tests.
2015-01-20 23:54:42 +00:00
Yabin Cui
0d53dd8081 am da307e7d: am d3d75c02: Merge "Remove testcase time printing in bionic-unit-tests."
* commit 'da307e7d91559f32a15390b1ac48693ffb7def89':
  Remove testcase time printing in bionic-unit-tests.
2015-01-20 23:48:37 +00:00
Yabin Cui
da307e7d91 am d3d75c02: Merge "Remove testcase time printing in bionic-unit-tests."
* commit 'd3d75c029a9b768989d5370000788dca4032b97a':
  Remove testcase time printing in bionic-unit-tests.
2015-01-20 23:43:15 +00:00
Yabin Cui
d3d75c029a Merge "Remove testcase time printing in bionic-unit-tests." 2015-01-20 23:38:35 +00:00
Yabin Cui
eb6212694c am e00eb27c: am 978e54a7: am 1c01c9f7: Merge "Add target libbionic_gtest_main for cts test."
* commit 'e00eb27c651d6de62cb4ee2ece73182f6dff5de5':
  Add target libbionic_gtest_main for cts test.
2015-01-20 23:24:47 +00:00
Yabin Cui
e00eb27c65 am 978e54a7: am 1c01c9f7: Merge "Add target libbionic_gtest_main for cts test."
* commit '978e54a7884211302b230685d73c8e1d9790a0ae':
  Add target libbionic_gtest_main for cts test.
2015-01-20 23:15:21 +00:00
Yabin Cui
978e54a788 am 1c01c9f7: Merge "Add target libbionic_gtest_main for cts test."
* commit '1c01c9f752c07d758349356c18563261b8216da9':
  Add target libbionic_gtest_main for cts test.
2015-01-20 22:51:49 +00:00
Yabin Cui
516eb53113 Remove testcase time printing in bionic-unit-tests.
Bug: 19075565
Change-Id: Icccb60657a2985e96abb1703673f0ebe2199586a
2015-01-20 14:46:03 -08:00
Yabin Cui
1c01c9f752 Merge "Add target libbionic_gtest_main for cts test." 2015-01-20 22:44:02 +00:00
Yabin Cui
6104eb9fa7 Add target libbionic_gtest_main for cts test.
Bug: 17589740
Change-Id: I37f2d3fe72870b9dc867407fa1619c9a6fcd5cbb
2015-01-20 14:32:07 -08:00
Elliott Hughes
66ebd36863 am 717bb49e: am 3873c9df: am 1d7b3f3c: Merge "Improve <stdio_ext.h> testing."
* commit '717bb49ec3d93c1f4ab3782227d4747e758294a6':
  Improve <stdio_ext.h> testing.
2015-01-20 18:41:40 +00:00
Elliott Hughes
717bb49ec3 am 3873c9df: am 1d7b3f3c: Merge "Improve <stdio_ext.h> testing."
* commit '3873c9dfe675e05fdda8ebfc11fdee0ee810b1b3':
  Improve <stdio_ext.h> testing.
2015-01-20 18:34:28 +00:00
Elliott Hughes
3873c9dfe6 am 1d7b3f3c: Merge "Improve <stdio_ext.h> testing."
* commit '1d7b3f3ccc4f2883cbc0fe677dff888c56c18996':
  Improve <stdio_ext.h> testing.
2015-01-20 18:27:47 +00:00
Elliott Hughes
1d7b3f3ccc Merge "Improve <stdio_ext.h> testing." 2015-01-20 18:07:37 +00:00
Elliott Hughes
1b03dc8359 am 4e7078de: am 3ef0c58d: am 3bbf4639: Merge "Add a benchmark for using stdio to read a file in /proc."
* commit '4e7078de2cc4925616fab1ee36eab51fafa571e4':
  Add a benchmark for using stdio to read a file in /proc.
2015-01-17 02:11:11 +00:00
Elliott Hughes
4e7078de2c am 3ef0c58d: am 3bbf4639: Merge "Add a benchmark for using stdio to read a file in /proc."
* commit '3ef0c58db6ed50b6ae0f8560230f0791b9e51415':
  Add a benchmark for using stdio to read a file in /proc.
2015-01-17 02:05:59 +00:00
Elliott Hughes
3ef0c58db6 am 3bbf4639: Merge "Add a benchmark for using stdio to read a file in /proc."
* commit '3bbf4639080bc2f42435b4a7fd400c44aab7fd70':
  Add a benchmark for using stdio to read a file in /proc.
2015-01-17 01:42:16 +00:00
Elliott Hughes
3bbf463908 Merge "Add a benchmark for using stdio to read a file in /proc." 2015-01-17 01:24:44 +00:00
Elliott Hughes
1cf32f83d3 Add a benchmark for using stdio to read a file in /proc.
Change-Id: I12517aae19e36b7c022a11e8807aece61bb0cb9c
2015-01-16 17:08:31 -08:00
Elliott Hughes
df8f1a42d1 Improve <stdio_ext.h> testing.
I almost fixed a non-bug. Add a test to prevent me from doing that.

Change-Id: I4a1dc13e603a7a377bdaee2e78132015087f7107
2015-01-16 16:40:55 -08:00
Elliott Hughes
1be56d6a2a am d3509e4a: am 52e9fe53: am 481cf21e: Merge "Use SI prefixes throughout the benchmark output."
* commit 'd3509e4ad0785fceedc5d3575999b946f0175a5c':
  Use SI prefixes throughout the benchmark output.
2015-01-17 00:38:18 +00:00
Elliott Hughes
d3509e4ad0 am 52e9fe53: am 481cf21e: Merge "Use SI prefixes throughout the benchmark output."
* commit '52e9fe53bb73a399449d2b3ac47d243ce0ba5b3f':
  Use SI prefixes throughout the benchmark output.
2015-01-17 00:31:45 +00:00
Elliott Hughes
52e9fe53bb am 481cf21e: Merge "Use SI prefixes throughout the benchmark output."
* commit '481cf21e08a6cbbc686487744f1cb07b6d3f400e':
  Use SI prefixes throughout the benchmark output.
2015-01-17 00:27:58 +00:00
Elliott Hughes
481cf21e08 Merge "Use SI prefixes throughout the benchmark output." 2015-01-17 00:23:35 +00:00
Yabin Cui
459d8646e1 am 39b71a98: am 58bbe437: am cfe7e75f: Merge "Make sys_resource test more robust."
* commit '39b71a98926a76511d6425c7aefab8997dbb553a':
  Make sys_resource test more robust.
2015-01-16 22:10:34 +00:00
Yabin Cui
39b71a9892 am 58bbe437: am cfe7e75f: Merge "Make sys_resource test more robust."
* commit '58bbe437ac1cf8f74780235a421d844dfe0cc4dc':
  Make sys_resource test more robust.
2015-01-16 22:03:55 +00:00
Yabin Cui
58bbe437ac am cfe7e75f: Merge "Make sys_resource test more robust."
* commit 'cfe7e75fc13afb987d86aaaee305040f3369f797':
  Make sys_resource test more robust.
2015-01-16 21:57:33 +00:00
Yabin Cui
cfe7e75fc1 Merge "Make sys_resource test more robust." 2015-01-16 21:52:11 +00:00
Yabin Cui
4853f40f3f Make sys_resource test more robust.
"ulimit -c xxx" command may run before bionic-unit-tests.
Make sure sys_resource test fails gently in that case.

Change-Id: Ic3b5ed8b20acba56df8c5ef082c88e5050e761aa
2015-01-16 13:28:43 -08:00
Elliott Hughes
8bb020e8e5 Use SI prefixes throughout the benchmark output.
Also switch throughput to GiB/s. I did play with using the new code,
but having consistent units for all results seemed easier to use
anyway (and doesn't require extra code).

Change-Id: I466fd573373bd05619e6f6e6d3dedd7dae0d9362
2015-01-16 13:11:25 -08:00
Elliott Hughes
ead026c23a am 7c385167: am e8d620d5: am ffad8df6: Merge "Use a vector of benchmarks and new for loop syntax."
* commit '7c385167242373859414434ca7d3354a0b88b9c7':
  Use a vector of benchmarks and new for loop syntax.
2015-01-16 06:14:37 +00:00
Elliott Hughes
7c38516724 am e8d620d5: am ffad8df6: Merge "Use a vector of benchmarks and new for loop syntax."
* commit 'e8d620d5a2716cfc16b40c82016ae9d4b84a181c':
  Use a vector of benchmarks and new for loop syntax.
2015-01-16 06:07:41 +00:00
Elliott Hughes
e8d620d5a2 am ffad8df6: Merge "Use a vector of benchmarks and new for loop syntax."
* commit 'ffad8df672363bad43528898cc47aa2ed3d08c66':
  Use a vector of benchmarks and new for loop syntax.
2015-01-16 03:27:04 +00:00
Elliott Hughes
ffad8df672 Merge "Use a vector of benchmarks and new for loop syntax." 2015-01-16 03:22:40 +00:00
Elliott Hughes
e48f533c95 Use a vector of benchmarks and new for loop syntax.
Change-Id: Ib1f1250e7786770083ed6a478677a893b2075a93
2015-01-15 17:10:42 -08:00
Elliott Hughes
ecf096f9b9 am 927875a7: am cb41ce5f: am 594db0f1: Merge "bionic benchmarks: limit benchmark run time to 1s real time"
* commit '927875a7d01ef252539fa742612327f60c9f4fe8':
  bionic benchmarks: limit benchmark run time to 1s real time
2015-01-16 01:00:48 +00:00
Elliott Hughes
f467b74099 am 29bfcf2a: am f1417093: am 3159972a: Merge "bionic benchmarks: export benchmark library"
* commit '29bfcf2a032eb61a3d033b4cf245321a868390dc':
  bionic benchmarks: export benchmark library
2015-01-16 00:56:41 +00:00
Elliott Hughes
927875a7d0 am cb41ce5f: am 594db0f1: Merge "bionic benchmarks: limit benchmark run time to 1s real time"
* commit 'cb41ce5f4e942dce66defb76f25b2e7d61f8ab8d':
  bionic benchmarks: limit benchmark run time to 1s real time
2015-01-16 00:54:14 +00:00
Elliott Hughes
cb41ce5f4e am 594db0f1: Merge "bionic benchmarks: limit benchmark run time to 1s real time"
* commit '594db0f1b235306d2687395564745888348df808':
  bionic benchmarks: limit benchmark run time to 1s real time
2015-01-16 00:48:36 +00:00
Elliott Hughes
29bfcf2a03 am f1417093: am 3159972a: Merge "bionic benchmarks: export benchmark library"
* commit 'f14170937f19710cdedf4bc44f3c3712545648a2':
  bionic benchmarks: export benchmark library
2015-01-16 00:48:32 +00:00
Elliott Hughes
594db0f1b2 Merge "bionic benchmarks: limit benchmark run time to 1s real time" 2015-01-16 00:44:16 +00:00
Elliott Hughes
f14170937f am 3159972a: Merge "bionic benchmarks: export benchmark library"
* commit '3159972a80234f7a8e3903cefaeb7719a50f6279':
  bionic benchmarks: export benchmark library
2015-01-16 00:42:43 +00:00
Colin Cross
a763504f9d bionic benchmarks: limit benchmark run time to 1s real time
The benchmark run loop tries to run until 1s of time has been
accumulated between StartBenchmarkTiming() and StopBenchmarkTiming().
If a majority of the time is spent stopped this can lead to
benchmarks running for very long periods of time.  This can easily
happen when benchmarking something that requires initialization or
cleanup on each iteration.

Modify the loop to run for 1s of real time instead of 1s of
benchmark time.  For existing benchmarks this shouldn't make much
of a difference.

Change-Id: Iaba8a13b4dfc4a5e2cd9992041c9173ea556f9cc
2015-01-15 16:42:20 -08:00
Elliott Hughes
3159972a80 Merge "bionic benchmarks: export benchmark library" 2015-01-16 00:36:20 +00:00
Colin Cross
7b9df19491 bionic benchmarks: export benchmark library
Export libbenchmark for external projects to write benchmarks against.

Change-Id: I3b04a56a62ce517afc0d5e06dc8d28879ada3d30
2015-01-15 16:22:42 -08:00
Yabin Cui
e42c7de3ee am b8679a84: am afb488a3: am 6fac2f68: Merge "Fix possible leak in pthread_detach."
* commit 'b8679a84dfc5f8ed628e7bd4772c72f76240d458':
  Fix possible leak in pthread_detach.
2015-01-15 22:17:47 +00:00
Yabin Cui
0a179a57b6 am 5b143c54: am 4a538412: am deab11ac: Merge "Make bionic-unit-tests default run isolate mode."
* commit '5b143c547bf8a576e656ce7d5bbded0029c45cb2':
  Make bionic-unit-tests default run isolate mode.
2015-01-15 22:17:46 +00:00
Dmitriy Ivanov
0d745c5ba2 am 9a0641a0: am c16eafd5: am fcc6fd35: Merge "Refactoring: move mips reloc to separate method"
* commit '9a0641a0f321dffc5991f883cd8e65df83b5c800':
  Refactoring: move mips reloc to separate method
2015-01-15 22:17:21 +00:00
Yabin Cui
b8679a84df am afb488a3: am 6fac2f68: Merge "Fix possible leak in pthread_detach."
* commit 'afb488a3e91c7ac297b4f91e9985fd10c09d6f81':
  Fix possible leak in pthread_detach.
2015-01-15 19:47:35 +00:00
Yabin Cui
afb488a3e9 am 6fac2f68: Merge "Fix possible leak in pthread_detach."
* commit '6fac2f680f829570122276dc6876f02350a652b1':
  Fix possible leak in pthread_detach.
2015-01-15 19:43:52 +00:00
Yabin Cui
6fac2f680f Merge "Fix possible leak in pthread_detach." 2015-01-15 19:35:38 +00:00
Yabin Cui
5b143c547b am 4a538412: am deab11ac: Merge "Make bionic-unit-tests default run isolate mode."
* commit '4a53841212de2c129ca0769968d8891be97b6cde':
  Make bionic-unit-tests default run isolate mode.
2015-01-15 19:17:06 +00:00
Yabin Cui
4a53841212 am deab11ac: Merge "Make bionic-unit-tests default run isolate mode."
* commit 'deab11acd7000573ad9c034e5bf9475aadbc5cbe':
  Make bionic-unit-tests default run isolate mode.
2015-01-15 19:10:33 +00:00
Yabin Cui
19e246dda6 Fix possible leak in pthread_detach.
If pthread_detach() is called while the thread is in pthread_exit(),
it takes the risk that no one can free the pthread_internal_t.
So I add PTHREAD_ATTR_FLAG_ZOMBIE to detect this, maybe very rare, but
both glibc and netbsd libpthread have similar function.

Change-Id: Iaa15f651903b8ca07aaa7bd4de46ff14a2f93835
2015-01-15 10:45:25 -08:00
Yabin Cui
deab11acd7 Merge "Make bionic-unit-tests default run isolate mode." 2015-01-15 18:10:30 +00:00
Dmitriy Ivanov
9a0641a0f3 am c16eafd5: am fcc6fd35: Merge "Refactoring: move mips reloc to separate method"
* commit 'c16eafd5ff06845606fa24ed83794104c7f995e6':
  Refactoring: move mips reloc to separate method
2015-01-15 18:08:14 +00:00
Dmitriy Ivanov
c16eafd5ff am fcc6fd35: Merge "Refactoring: move mips reloc to separate method"
* commit 'fcc6fd35dfa88e659aa1769d1a1351ad74278763':
  Refactoring: move mips reloc to separate method
2015-01-15 18:01:49 +00:00
Dmitriy Ivanov
fcc6fd35df Merge "Refactoring: move mips reloc to separate method" 2015-01-15 17:56:36 +00:00
Dmitriy Ivanov
53789e7f3c am 59c080ca: am 0f1fe41f: am ffa2c9ed: Merge "Refactoring: unify relocate function"
* commit '59c080ca7935934a8a2db57127945eff10dcea16':
  Refactoring: unify relocate function
2015-01-15 02:27:52 +00:00
Andres Morales
ec4c8e9c87 am 6dcbe942: am 740ac6fe: am 2b15f54a: Merge "bionic: libc: Added path to root ramdisk build properties file."
* commit '6dcbe94239385526c97d1954af92c14f29185950':
  bionic: libc: Added path to root ramdisk build properties file.
2015-01-15 02:27:39 +00:00
Yabin Cui
80b0935a57 am 49810c36: am d12ea31b: am 85747809: Merge "Test that ip6-localhost exists in etc/hosts."
* commit '49810c36960e2821b056be450b7ac007e0257c19':
  Test that ip6-localhost exists in etc/hosts.
2015-01-15 02:27:25 +00:00
Dmitriy Ivanov
37aa5a5aee am 5ae47f4d: am 47a32828: am a23569c9: Merge "Refactoring: use generic reloc constants"
* commit '5ae47f4d815d9ef41fa1391706bac37ab0efddf7':
  Refactoring: use generic reloc constants
2015-01-15 02:27:24 +00:00
Elliott Hughes
b7fce775eb am 7d640183: am 5bff8a23: am d986f2e4: Merge "Sync with upstream OpenBSD stdio."
* commit '7d640183f2ab6ec46cad73becc7fd259e8a48bdb':
  Sync with upstream OpenBSD stdio.
2015-01-15 02:27:23 +00:00
Dmitriy Ivanov
114ff69f17 Refactoring: move mips reloc to separate method
Change-Id: I712614853e3f0e515f5c2bdd8f0aaa5feeae8e55
2015-01-14 18:03:19 -08:00
Dimitry Ivanov
c3a7cae009 am 0e8bf252: am a0f25379: am b13f5f50: Merge "Revert "Refactoring: use generic reloc constants""
* commit '0e8bf252f4d783b6f104b5df8d51deab648f0064':
  Revert "Refactoring: use generic reloc constants"
2015-01-14 21:14:04 +00:00
Dmitriy Ivanov
1f432f9f6b am 83d6a494: am b6c4f646: am 684a861b: Merge "Refactoring: use generic reloc constants"
* commit '83d6a49403b81fb71372994273ae65e711038d0b':
  Refactoring: use generic reloc constants
2015-01-14 21:14:03 +00:00
Dmitriy Ivanov
59c080ca79 am 0f1fe41f: am ffa2c9ed: Merge "Refactoring: unify relocate function"
* commit '0f1fe41f536abd17a9f20b813b57ae2e3ace13cb':
  Refactoring: unify relocate function
2015-01-14 18:26:59 +00:00
Dmitriy Ivanov
0f1fe41f53 am ffa2c9ed: Merge "Refactoring: unify relocate function"
* commit 'ffa2c9edb5b1cf295bceffc7876a68747b6fa259':
  Refactoring: unify relocate function
2015-01-14 18:19:37 +00:00
Dmitriy Ivanov
ffa2c9edb5 Merge "Refactoring: unify relocate function" 2015-01-14 18:14:30 +00:00
Andres Morales
6dcbe94239 am 740ac6fe: am 2b15f54a: Merge "bionic: libc: Added path to root ramdisk build properties file."
* commit '740ac6fe7358ac73643189bbe1b7a5e7c76142f3':
  bionic: libc: Added path to root ramdisk build properties file.
2015-01-14 16:05:28 +00:00
Andres Morales
740ac6fe73 am 2b15f54a: Merge "bionic: libc: Added path to root ramdisk build properties file."
* commit '2b15f54a489d84d9a273025b615cdb63f63d5fc9':
  bionic: libc: Added path to root ramdisk build properties file.
2015-01-14 15:59:03 +00:00
Andres Morales
2b15f54a48 Merge "bionic: libc: Added path to root ramdisk build properties file." 2015-01-14 15:54:04 +00:00
Yabin Cui
49810c3696 am d12ea31b: am 85747809: Merge "Test that ip6-localhost exists in etc/hosts."
* commit 'd12ea31b8dd050c5567425c121de3356b8e07e93':
  Test that ip6-localhost exists in etc/hosts.
2015-01-14 12:07:32 +00:00
Dmitriy Ivanov
5ae47f4d81 am 47a32828: am a23569c9: Merge "Refactoring: use generic reloc constants"
* commit '47a32828c2e2825ab0e81970f40514fc411bd45d':
  Refactoring: use generic reloc constants
2015-01-14 12:07:25 +00:00
Elliott Hughes
7d640183f2 am 5bff8a23: am d986f2e4: Merge "Sync with upstream OpenBSD stdio."
* commit '5bff8a23379ea4034d3112ad5725e91e4b801d5a':
  Sync with upstream OpenBSD stdio.
2015-01-14 12:07:23 +00:00
Yabin Cui
d12ea31b8d am 85747809: Merge "Test that ip6-localhost exists in etc/hosts."
* commit '85747809b05a5e3b48bd4da9a7ea98d0adf8f919':
  Test that ip6-localhost exists in etc/hosts.
2015-01-14 12:00:21 +00:00
Dmitriy Ivanov
47a32828c2 am a23569c9: Merge "Refactoring: use generic reloc constants"
* commit 'a23569c9485d50e9184dcc7d97640140015b3f3d':
  Refactoring: use generic reloc constants
2015-01-14 12:00:19 +00:00
Elliott Hughes
5bff8a2337 am d986f2e4: Merge "Sync with upstream OpenBSD stdio."
* commit 'd986f2e4642a0571754cb1349101acf8ac10b484':
  Sync with upstream OpenBSD stdio.
2015-01-14 12:00:18 +00:00
Dmitriy Ivanov
bcc04d0069 Refactoring: unify relocate function
Use one relocate for all platforms.

Change-Id: I43e75162c5b29105e651defc11a511e168368736
2015-01-13 19:15:02 -08:00
Andres Morales
9d9ebc5fc9 bionic: libc: Added path to root ramdisk build properties file.
Change-Id: Id850e4e5ef4e91cea7ad53f6858886daf660eeec
2015-01-13 18:07:23 -08:00
Yabin Cui
85747809b0 Merge "Test that ip6-localhost exists in etc/hosts." 2015-01-14 01:50:20 +00:00
Dmitriy Ivanov
a23569c948 Merge "Refactoring: use generic reloc constants" 2015-01-14 01:35:39 +00:00
Yabin Cui
a35cd8cdc2 Test that ip6-localhost exists in etc/hosts.
Addition change: make netdb_test pass on host.

Bug: 18791191
Change-Id: I7a9e29aa559ff6557288b47323d8a436379201a2
2015-01-13 17:30:51 -08:00
Elliott Hughes
d986f2e464 Merge "Sync with upstream OpenBSD stdio." 2015-01-14 01:27:37 +00:00
Elliott Hughes
01abeacded Sync with upstream OpenBSD stdio.
Mainly to get the __atexit_register_cleanup removals we suggested.

Change-Id: I58d40b8c5b8401bfb6bfffe8f3430ac0718af917
2015-01-13 17:19:21 -08:00
Dmitriy Ivanov
1b694693b4 Refactoring: use generic reloc constants
Change-Id: I94dd6256b1b4509b6ea696a3aff17a3991529468
2015-01-13 15:56:54 -08:00
Dimitry Ivanov
0e8bf252f4 am a0f25379: am b13f5f50: Merge "Revert "Refactoring: use generic reloc constants""
* commit 'a0f253791cce7050515056786a575a61409e9c2e':
  Revert "Refactoring: use generic reloc constants"
2015-01-13 23:26:13 +00:00
Dmitriy Ivanov
83d6a49403 am b6c4f646: am 684a861b: Merge "Refactoring: use generic reloc constants"
* commit 'b6c4f646c9dea20ec783e2e6562e17d5b95632df':
  Refactoring: use generic reloc constants
2015-01-13 23:26:12 +00:00
Dimitry Ivanov
a0f253791c am b13f5f50: Merge "Revert "Refactoring: use generic reloc constants""
* commit 'b13f5f5029d5fab190a4480ea3caa623328c5415':
  Revert "Refactoring: use generic reloc constants"
2015-01-13 23:20:28 +00:00
Dmitriy Ivanov
b6c4f646c9 am 684a861b: Merge "Refactoring: use generic reloc constants"
* commit '684a861bab72b8ec27b41f221982d434b40dcbfe':
  Refactoring: use generic reloc constants
2015-01-13 23:20:27 +00:00
Dimitry Ivanov
b13f5f5029 Merge "Revert "Refactoring: use generic reloc constants"" 2015-01-13 22:32:49 +00:00
Dimitry Ivanov
d338aac19c Revert "Refactoring: use generic reloc constants"
This reverts commit 265a60a0d2.

Change-Id: I6d46db0ac03cda44ed1e20f6084a552e0089eb14
2015-01-13 22:31:54 +00:00
Dmitriy Ivanov
684a861bab Merge "Refactoring: use generic reloc constants" 2015-01-13 22:21:05 +00:00
Dan Albert
e4e8644234 am e659cef5: am 19598a2f: am 5a388898: Merge "Check the committer rather than the Gerrit owner."
* commit 'e659cef5a769a9fa204f1e1f61cb2201b0eb131a':
  Check the committer rather than the Gerrit owner.
2015-01-13 20:32:47 +00:00
Dan Albert
24329863ca am a66b68c2: am d5ff09c2: am 8d50e16a: Merge "Guard against @google.com.example.com."
* commit 'a66b68c22bd301bd1f64e68dd634daa905997a86':
  Guard against @google.com.example.com.
2015-01-13 20:31:56 +00:00
Dan Albert
661f53a6b0 am 905ffc2b: am a38662b4: am 780ea474: Merge "Oops. Fix dict key."
* commit '905ffc2b38796e57dca0f9f53a863fdd5a51de76':
  Oops. Fix dict key.
2015-01-13 20:31:11 +00:00
Dan Albert
64de0e75ad am a88a19f2: am cc1a8935: am 0d0188b0: Merge "Only build changes that come from @google.com."
* commit 'a88a19f2b415f62d7e8b565ebfc75d2bf633ddd0':
  Only build changes that come from @google.com.
2015-01-13 20:31:10 +00:00
Dmitriy Ivanov
265a60a0d2 Refactoring: use generic reloc constants
Change-Id: I67918a1a926164a38a5a47f2264390632eb42905
2015-01-13 12:17:31 -08:00
Dan Albert
e659cef5a7 am 19598a2f: am 5a388898: Merge "Check the committer rather than the Gerrit owner."
* commit '19598a2f548bd545a41741f5b0964b74afb2f4ff':
  Check the committer rather than the Gerrit owner.
2015-01-13 01:27:19 +00:00
Dan Albert
19598a2f54 am 5a388898: Merge "Check the committer rather than the Gerrit owner."
* commit '5a388898cfa9befb7626dfcd9940713ce942cadd':
  Check the committer rather than the Gerrit owner.
2015-01-13 01:05:43 +00:00
Dan Albert
5a388898cf Merge "Check the committer rather than the Gerrit owner." 2015-01-13 00:58:31 +00:00
Dan Albert
b4060330aa Check the committer rather than the Gerrit owner.
Guarding based on the Gerrit owner can be circumvented by an arbitrary
user uploading a different patch with a Change-Id that is non-unique,
with the other copy being owned by a Googler.

Change-Id: I5414b679e361d4c38d70bf9c4516c122f668fc49
2015-01-12 16:33:17 -08:00
Dan Albert
a66b68c22b am d5ff09c2: am 8d50e16a: Merge "Guard against @google.com.example.com."
* commit 'd5ff09c23a954d20b0dc21750dc5c0a666c0ce56':
  Guard against @google.com.example.com.
2015-01-12 21:59:18 +00:00
Dan Albert
d5ff09c23a am 8d50e16a: Merge "Guard against @google.com.example.com."
* commit '8d50e16aa96291612c95f89b49ecfacf556241a6':
  Guard against @google.com.example.com.
2015-01-12 21:52:52 +00:00
Dan Albert
8d50e16aa9 Merge "Guard against @google.com.example.com." 2015-01-12 21:49:05 +00:00
Dan Albert
ad248b7c00 Guard against @google.com.example.com.
Begin adding some unit tests. Testing the Jenkins interface will
probably be difficult, but testing that we can properly handle
messages from Gerrit is easy enough.

Change-Id: Id7e8e175e0f064fd10715febe40040a65564c701
2015-01-12 13:48:46 -08:00
Dan Albert
905ffc2b38 am a38662b4: am 780ea474: Merge "Oops. Fix dict key."
* commit 'a38662b4423a2277f15305de69df91fa995afac0':
  Oops. Fix dict key.
2015-01-12 20:10:04 +00:00
Dan Albert
a38662b442 am 780ea474: Merge "Oops. Fix dict key."
* commit '780ea47482854e1b58931bea928bf93bcaf6e3aa':
  Oops. Fix dict key.
2015-01-12 20:04:11 +00:00
Dan Albert
a88a19f2b4 am cc1a8935: am 0d0188b0: Merge "Only build changes that come from @google.com."
* commit 'cc1a8935c53295c87429d7120f25bfb6352e9071':
  Only build changes that come from @google.com.
2015-01-12 20:01:00 +00:00
Dan Albert
780ea47482 Merge "Oops. Fix dict key." 2015-01-12 19:59:29 +00:00
Dan Albert
f988da4730 Oops. Fix dict key.
Change-Id: Ia8295417d4097f38eef633089cb4539b849f3c74
2015-01-12 11:58:09 -08:00
Dan Albert
cc1a8935c5 am 0d0188b0: Merge "Only build changes that come from @google.com."
* commit '0d0188b0c7e017e431c83b2f7e4956137430b6d9':
  Only build changes that come from @google.com.
2015-01-12 19:55:19 +00:00
Dan Albert
0d0188b0c7 Merge "Only build changes that come from @google.com." 2015-01-12 19:51:39 +00:00
Dan Albert
29be129342 Only build changes that come from @google.com.
Googlers should be able to tell the buildbot to launch builds for an
external contributor's change, but Gerrit is determined to make this
hard for us. The email sent by Gerrit for comments doesn't actually
contain the email address of the commenter in any clear way, only the
name. It does however contain a list of `Gerrit-Reviewer: Name
<email>` entries that could be used for this though.

Change-Id: Iee61f06dcd8f0024f16b535ea9a34765bf01b2e7
2015-01-12 11:48:04 -08:00
Dan Albert
f82df6af9f am 535c3471: am 61a6a940: am d7f935a0: Merge "Make indentation match the style guide."
* commit '535c34716097f9c73d045c182f8be6b8301e5305':
  Make indentation match the style guide.
2015-01-10 15:57:02 +00:00
Yabin Cui
d7929d3eaa am 5631f47e: am 1217d9a3: am c80eb091: Merge "Clean up paths.h."
* commit '5631f47eb694d15aaddd4087eb61184f32c00356':
  Clean up paths.h.
2015-01-10 15:56:58 +00:00
Dan Albert
535c347160 am 61a6a940: am d7f935a0: Merge "Make indentation match the style guide."
* commit '61a6a940ce93ad503905f21a2e7a2c89208832d8':
  Make indentation match the style guide.
2015-01-10 06:55:19 +00:00
Dan Albert
61a6a940ce am d7f935a0: Merge "Make indentation match the style guide."
* commit 'd7f935a05b25d003a721565ba64a015b3a341fbe':
  Make indentation match the style guide.
2015-01-10 06:49:29 +00:00
Dan Albert
64390f940c Add support for building other architectures.
Since we often make changes that might break on other architectures,
let the buildbot deal with some of these for us. They can be invoked
by `bionicbb:ARCH`, where `ARCH` is one of:

 * arm
 * aarch64
 * mips
 * mips64
 * x86
 * x86_64

Specifying arm isn't particularly interesting (since the default
target for the buildbot is hammerhead), but there are some differences
in the math instructions available for the default ARM target, so it
could be helpful for testing changes to the compiler-rt builtins.

Change-Id: I94018fd3c30d26fcf405e747fc633cbdd08ff4e5
2015-01-09 22:45:33 -08:00
Dan Albert
d7f935a05b Merge "Make indentation match the style guide." 2015-01-10 06:45:20 +00:00
Yabin Cui
5631f47eb6 am 1217d9a3: am c80eb091: Merge "Clean up paths.h."
* commit '1217d9a3d13222f16978282d4488588bfe420233':
  Clean up paths.h.
2015-01-10 05:29:04 +00:00
Yabin Cui
1217d9a3d1 am c80eb091: Merge "Clean up paths.h."
* commit 'c80eb091a4c090d1162959e08921f8989b3dc355':
  Clean up paths.h.
2015-01-10 05:24:53 +00:00
Yabin Cui
c80eb091a4 Merge "Clean up paths.h." 2015-01-10 05:17:29 +00:00
Yabin Cui
3471fcbb6a Clean up paths.h.
Bug: 18905946
Change-Id: I02cd1ddd5c0b0af165685413bc1fb12ca6bf5f33
2015-01-09 20:04:04 -08:00
Dan Albert
0b0ac9c1b4 am 7d327dce: am da89944a: am 7e3766a8: Merge "Use relative imports."
* commit '7d327dcefbc2af21e5360f7b5e4b3bd04f3a7fce':
  Use relative imports.
2015-01-10 02:02:39 +00:00
Dan Albert
7d327dcefb am da89944a: am 7e3766a8: Merge "Use relative imports."
* commit 'da89944a7d7049b0f3554a78208bd2676d6d6529':
  Use relative imports.
2015-01-10 01:58:41 +00:00
Dan Albert
c02df47f20 Make indentation match the style guide.
Apparently Google abandoned the 2 space indent for Python long ago.
Helps to actually read the style guide before trying to adhere to it.

Change-Id: I4feb019f0916f9d8e4f78c0dbeafbe45d8a46bfd
2015-01-09 17:22:00 -08:00
Dan Albert
da89944a7d am 7e3766a8: Merge "Use relative imports."
* commit '7e3766a8fcc534d92a6f7416fcbbdc092756e415':
  Use relative imports.
2015-01-10 01:02:45 +00:00
Dan Albert
c3a715bac7 am 43bbf5d0: am d8075224: am 2f8f6db5: Merge "Add JSON files and oauth storage to .gitignore."
* commit '43bbf5d0b44dd64043449bbd65731cd2f4f838cc':
  Add JSON files and oauth storage to .gitignore.
2015-01-10 00:59:20 +00:00
Dan Albert
b5a90f004b am 0e168aee: am 4b90d41e: am c8fec746: Merge "Make service URLs configurable."
* commit '0e168aee6ccbff45c6af5d2ac194cfd09858e05c':
  Make service URLs configurable.
2015-01-10 00:59:19 +00:00
Dan Albert
7e3766a8fc Merge "Use relative imports." 2015-01-10 00:58:13 +00:00
Dan Albert
43bbf5d0b4 am d8075224: am 2f8f6db5: Merge "Add JSON files and oauth storage to .gitignore."
* commit 'd807522467deb32ee54d3bbc361919164dca07d6':
  Add JSON files and oauth storage to .gitignore.
2015-01-10 00:54:07 +00:00
Dan Albert
0e168aee6c am 4b90d41e: am c8fec746: Merge "Make service URLs configurable."
* commit '4b90d41e18288254fdfd83b3b640b4a83f0dd4bd':
  Make service URLs configurable.
2015-01-10 00:54:02 +00:00
Dan Albert
8a15a4e5c4 Use relative imports.
Making `bionicbb` its own package required `PYTHONPATH=..`, which we
don't want. Just use a relative import instead.

Change-Id: I59b9852522118ece89829288a4921902e756e4aa
2015-01-09 16:53:09 -08:00
Dan Albert
d807522467 am 2f8f6db5: Merge "Add JSON files and oauth storage to .gitignore."
* commit '2f8f6db5e4730a9f52be7415236f5ea55623d789':
  Add JSON files and oauth storage to .gitignore.
2015-01-10 00:48:03 +00:00
Dan Albert
4b90d41e18 am c8fec746: Merge "Make service URLs configurable."
* commit 'c8fec746b692812d549167514c4d0d30b09162e6':
  Make service URLs configurable.
2015-01-10 00:48:02 +00:00
Dan Albert
2f8f6db5e4 Merge "Add JSON files and oauth storage to .gitignore." 2015-01-10 00:43:08 +00:00
Dan Albert
c8fec746b6 Merge "Make service URLs configurable." 2015-01-10 00:43:04 +00:00
Dan Albert
eb85ff0aba Add JSON files and oauth storage to .gitignore.
The only JSON file is the client secret file, which we really don't
want leaking. Same goes for the oauth storage file.

Change-Id: Ie860704574ec37ccfc50ff7c9d59717a7b9b443b
2015-01-09 16:24:17 -08:00
Dan Albert
691e809edb Make service URLs configurable.
Change-Id: I91df77b7e0294be5e6180460b0ef26d7ead2ea7d
2015-01-09 16:18:48 -08:00
Dmitriy Ivanov
21db822906 am dde3d83a: am 2e44e464: am 9c4783b1: Merge changes I713800ce,I1dea46c3
* commit 'dde3d83a6f7b8d4c876e53ca111f7a36424866f3':
  Refactor soinfo::relocate
  Add ARM_IRELATIVE relocation
2015-01-10 00:01:27 +00:00
Dmitriy Ivanov
dde3d83a6f am 2e44e464: am 9c4783b1: Merge changes I713800ce,I1dea46c3
* commit '2e44e4649a5ebf00e7ab1bc5ff32f6bd79845347':
  Refactor soinfo::relocate
  Add ARM_IRELATIVE relocation
2015-01-09 23:55:42 +00:00
Dmitriy Ivanov
2e44e4649a am 9c4783b1: Merge changes I713800ce,I1dea46c3
* commit '9c4783b18c75f02be7bfb6756101ee31a05aba01':
  Refactor soinfo::relocate
  Add ARM_IRELATIVE relocation
2015-01-09 23:49:49 +00:00
Dan Albert
26768ab636 am 5dc75719: am bbd668f9: am 84cbe049: Merge "Markdown-ify 5137db3."
* commit '5dc7571967fd0bc0f226a92557fd9eca5513424f':
  Markdown-ify 5137db3.
2015-01-09 23:49:03 +00:00
Dmitriy Ivanov
9c4783b18c Merge changes I713800ce,I1dea46c3
* changes:
  Refactor soinfo::relocate
  Add ARM_IRELATIVE relocation
2015-01-09 23:44:50 +00:00
Dan Albert
5dc7571967 am bbd668f9: am 84cbe049: Merge "Markdown-ify 5137db3."
* commit 'bbd668f9be148dfcfb1c9ee1490b8ca1c1362ebb':
  Markdown-ify 5137db3.
2015-01-09 23:42:30 +00:00
Dan Albert
bbd668f9be am 84cbe049: Merge "Markdown-ify 5137db3."
* commit '84cbe0491857471d3e4208f0d9cc184adb43914b':
  Markdown-ify 5137db3.
2015-01-09 23:37:06 +00:00
Dan Albert
84cbe04918 Merge "Markdown-ify 5137db3." 2015-01-09 23:32:27 +00:00
Dan Albert
81387484b5 am e052971b: am 60272219: am 11b3fa54: Merge "Check in bionicbb code."
* commit 'e052971b9747a594f13baeedf64d77ecbc8bfa1e':
  Check in bionicbb code.
2015-01-09 23:31:24 +00:00
Dan Albert
79b9830b1d Markdown-ify 5137db3.
Most of these are just aesthetic, but the `_FILE_OFFSET_BITS` probably
would have rendered partly as italics and skipped some underscores.

GitHub's Markdown also doesn't identify our bug URLs as links, so mark
them explicitly.

Change-Id: I62be7542aa43929d847de2bad7d8d1ed3aaa640c
2015-01-09 15:29:46 -08:00
Dan Albert
e052971b97 am 60272219: am 11b3fa54: Merge "Check in bionicbb code."
* commit '6027221967aed3a5cd60b54ae207483739d51a38':
  Check in bionicbb code.
2015-01-09 23:27:53 +00:00
Dan Albert
6027221967 am 11b3fa54: Merge "Check in bionicbb code."
* commit '11b3fa5432951950b3fc9aadfe56139969300cad':
  Check in bionicbb code.
2015-01-09 23:22:50 +00:00
Dan Albert
11b3fa5432 Merge "Check in bionicbb code." 2015-01-09 23:17:49 +00:00
Dan Albert
7c78d24011 Check in bionicbb code.
These have been sitting around in a git repo on my machine for a
while. They're now big an important enough that I'd like to both keep
them securely backed up, and also have my changes reviewed.

Change-Id: Ic4545149b4b07f0d57b21cac32aab8553dceb567
2015-01-09 15:12:48 -08:00
Dmitriy Ivanov
cefef7dab6 Refactor soinfo::relocate
Move common relocation types outside of ifdefs

Change-Id: I713800ce123a18178b5ac80c0b3c7bd6b21a02c2
2015-01-09 14:57:53 -08:00
Elliott Hughes
2ca1a33c59 am bb819d30: am a36a4076: am 5137db34: Merge "Add our LP32 ABI defects to the readme."
* commit 'bb819d30d392f77c23155efff7b17a947dddc069':
  Add our LP32 ABI defects to the readme.
2015-01-09 22:12:03 +00:00
Elliott Hughes
bb819d30d3 am a36a4076: am 5137db34: Merge "Add our LP32 ABI defects to the readme."
* commit 'a36a407675c30b40e67f393be8e0dbfad1f81676':
  Add our LP32 ABI defects to the readme.
2015-01-09 22:06:01 +00:00
Elliott Hughes
a36a407675 am 5137db34: Merge "Add our LP32 ABI defects to the readme."
* commit '5137db34a2c4d0de258849753cca2b44968b0a10':
  Add our LP32 ABI defects to the readme.
2015-01-09 22:01:08 +00:00
Elliott Hughes
5137db34a2 Merge "Add our LP32 ABI defects to the readme." 2015-01-09 21:54:08 +00:00
Chih-hung Hsieh
97b0bfc5c0 am 950fd097: am 9e0d50f0: am 10805009: Merge "Revert "Must use Clang assembler for mips target.""
* commit '950fd09771a385855e6f6947db6b9498871dec98':
  Revert "Must use Clang assembler for mips target."
2015-01-09 20:22:54 +00:00
Elliott Hughes
0b1de06910 Add our LP32 ABI defects to the readme.
Change-Id: Id77a3dbf6b91243c57528ed86ca24100d8795907
2015-01-09 12:21:24 -08:00
Chih-hung Hsieh
950fd09771 am 9e0d50f0: am 10805009: Merge "Revert "Must use Clang assembler for mips target.""
* commit '9e0d50f04406a7b2923d501bdd213b7fcec24d2a':
  Revert "Must use Clang assembler for mips target."
2015-01-09 20:15:32 +00:00
Chih-hung Hsieh
9e0d50f044 am 10805009: Merge "Revert "Must use Clang assembler for mips target.""
* commit '10805009e8003629fe08c5a2a8b8905773526f2d':
  Revert "Must use Clang assembler for mips target."
2015-01-09 20:10:00 +00:00
Chih-hung Hsieh
10805009e8 Merge "Revert "Must use Clang assembler for mips target."" 2015-01-09 20:05:16 +00:00
Dmitriy Ivanov
7102658709 am 9ab5808b: am da8b89a1: am edf87617: Merge "Remove outdated list of abi bugs"
* commit '9ab5808b606fcbbaa3b6fddae002b17e3bf71207':
  Remove outdated list of abi bugs
2015-01-09 18:46:06 +00:00
Dmitriy Ivanov
9ab5808b60 am da8b89a1: am edf87617: Merge "Remove outdated list of abi bugs"
* commit 'da8b89a1f0d8195a65c7352028a12c4d219658fe':
  Remove outdated list of abi bugs
2015-01-09 18:41:52 +00:00
Dmitriy Ivanov
da8b89a1f0 am edf87617: Merge "Remove outdated list of abi bugs"
* commit 'edf87617e3355cf06cbf7eb5dd2a0119422c38fa':
  Remove outdated list of abi bugs
2015-01-09 18:36:32 +00:00
Dmitriy Ivanov
edf87617e3 Merge "Remove outdated list of abi bugs" 2015-01-09 18:32:39 +00:00
Duane Sand
6f40a8ac74 Revert "Must use Clang assembler for mips target."
This reverts commit 6f96d58c0d.
2015-01-09 10:24:11 -08:00
Dmitriy Ivanov
a137f53980 Add ARM_IRELATIVE relocation
Bug: 17399706
Change-Id: I1dea46c3a3c4572558e718283489c323794176c7
2015-01-08 22:22:27 -08:00
Yabin Cui
be837360c3 Make bionic-unit-tests default run isolate mode.
Fix bug of handling signal terminated tests.

Bug: 17589740
Bug: 18951146
Change-Id: I4803382b26cd5454693090202b3ba38e3dbe66e5
2015-01-08 20:34:58 -08:00
Elliott Hughes
3db10f76a1 am 857e1124: am e6594658: am 8623dc75: Merge "Fix freeaddrinfo(NULL)."
* commit '857e1124433a4946bc38f427d390ef39a2f083b1':
  Fix freeaddrinfo(NULL).
2015-01-09 03:04:43 +00:00
Elliott Hughes
857e112443 am e6594658: am 8623dc75: Merge "Fix freeaddrinfo(NULL)."
* commit 'e6594658f7d36172007a2573e345d6ae0d0ac58a':
  Fix freeaddrinfo(NULL).
2015-01-09 02:58:56 +00:00
Elliott Hughes
e6594658f7 am 8623dc75: Merge "Fix freeaddrinfo(NULL)."
* commit '8623dc75479f88e7ccdec708b5c7ca0abeb285d1':
  Fix freeaddrinfo(NULL).
2015-01-09 02:53:54 +00:00
Elliott Hughes
8623dc7547 Merge "Fix freeaddrinfo(NULL)." 2015-01-09 02:48:29 +00:00
Elliott Hughes
c62a4b5a7a Fix freeaddrinfo(NULL).
Bug: https://code.google.com/p/android/issues/detail?id=13228
Change-Id: I5e3b126d90d750a93ac0b8872198e50ba047e603
2015-01-08 17:28:46 -08:00
Yabin Cui
690510b561 am f4af806b: am 1ecafe3f: am 4c47fc4e: Merge "Make pthread stack size match real range."
* commit 'f4af806bb769498d8170748c27876822e1842369':
  Make pthread stack size match real range.
2015-01-08 23:12:53 +00:00
Yabin Cui
f4af806bb7 am 1ecafe3f: am 4c47fc4e: Merge "Make pthread stack size match real range."
* commit '1ecafe3feff42e9c7a171e6c865ae4a5df4f6284':
  Make pthread stack size match real range.
2015-01-08 23:07:22 +00:00
Yabin Cui
1ecafe3fef am 4c47fc4e: Merge "Make pthread stack size match real range."
* commit '4c47fc4ed39dff497d4c56ba864b3a3f659250f4':
  Make pthread stack size match real range.
2015-01-08 23:00:46 +00:00
Yabin Cui
4c47fc4ed3 Merge "Make pthread stack size match real range." 2015-01-08 22:57:27 +00:00
Yabin Cui
917d390510 Make pthread stack size match real range.
Bug: 18908062
Change-Id: I7037ac8273ebe54dd19b1561c7a376819049124c
2015-01-08 14:27:24 -08:00
Dmitriy Ivanov
7c561427fd am 6dd9bd18: am 1e17b491: am b5e508cf: Merge "Set linux 32bit personality for 32 bit processes"
* commit '6dd9bd1887a1cd5152011545a3ebecf4701829b2':
  Set linux 32bit personality for 32 bit processes
2015-01-08 01:03:16 +00:00
Dmitriy Ivanov
6dd9bd1887 am 1e17b491: am b5e508cf: Merge "Set linux 32bit personality for 32 bit processes"
* commit '1e17b4914f33fce506a91003536f8a4fc52380e2':
  Set linux 32bit personality for 32 bit processes
2015-01-08 00:56:47 +00:00
Dmitriy Ivanov
1e17b4914f am b5e508cf: Merge "Set linux 32bit personality for 32 bit processes"
* commit 'b5e508cfee2355bad0502587e4fce8f4173584d6':
  Set linux 32bit personality for 32 bit processes
2015-01-08 00:50:49 +00:00
Dmitriy Ivanov
b5e508cfee Merge "Set linux 32bit personality for 32 bit processes" 2015-01-08 00:46:49 +00:00
Dmitriy Ivanov
bfa15e464e Set linux 32bit personality for 32 bit processes
Bug: 18069809
Change-Id: Ie143d56b0f8f03510dc451649291067e1add1d2f
2015-01-07 16:32:05 -08:00
Dmitriy Ivanov
f7caf17795 am 7c16f565: am 880aed0b: am 1d548dc9: Merge "Print error when prelink fails for main executable"
* commit '7c16f56566b1bc54d144eda32d112ebb9cb4be17':
  Print error when prelink fails for main executable
2015-01-08 00:27:05 +00:00
Dmitriy Ivanov
7c16f56566 am 880aed0b: am 1d548dc9: Merge "Print error when prelink fails for main executable"
* commit '880aed0b4defd7e30afcf29d4bcdf0bdd7a0bc64':
  Print error when prelink fails for main executable
2015-01-08 00:21:33 +00:00
Dmitriy Ivanov
880aed0b4d am 1d548dc9: Merge "Print error when prelink fails for main executable"
* commit '1d548dc95c87fcfa686f81c021269e4193e1ee2f':
  Print error when prelink fails for main executable
2015-01-08 00:15:10 +00:00
Dmitriy Ivanov
1d548dc95c Merge "Print error when prelink fails for main executable" 2015-01-08 00:08:35 +00:00
Dmitriy Ivanov
6718125ac7 Print error when prelink fails for main executable
Bug: 18931021
Change-Id: Ib6c39a409161b20a10c3485272c73bc2abd4ee4f
(cherry picked from commit d9e211ca1f)
2015-01-07 15:49:40 -08:00
Dmitriy Ivanov
0fc38d468d am 382f4adb: resolved conflicts for merge of d9e211ca to lmp-mr1-dev-plus-aosp
* commit '382f4adbb7c92361c932ba779ed61703b74a0a44':
  Print error when prelink fails for main executable
2015-01-07 23:26:24 +00:00
Dmitriy Ivanov
382f4adbb7 resolved conflicts for merge of d9e211ca to lmp-mr1-dev-plus-aosp
Change-Id: I242b448583401c77ccf01f4f2436d63ef18c4e68
2015-01-07 15:21:21 -08:00
Dmitriy Ivanov
1b8f467c02 Remove outdated list of abi bugs
Change-Id: I275093a7a66b53ec25317e02c4bff46c2facc030
2015-01-07 14:14:34 -08:00
Dmitriy Ivanov
d9e211ca1f Print error when prelink fails for main executable
Bug: 18931021
Change-Id: Ieefdcf60f1506af522714300030754a4ed61c08e
2015-01-07 11:23:34 -08:00
Elliott Hughes
d7f0b5d53d am de97a518: am 6ed76e8c: am ac8f2810: Merge "_Unwind_Context is a struct."
* commit 'de97a518d7468e8e2ab7bd68292494b7a510b8dc':
  _Unwind_Context is a struct.
2015-01-07 03:19:19 +00:00
Elliott Hughes
de97a518d7 am 6ed76e8c: am ac8f2810: Merge "_Unwind_Context is a struct."
* commit '6ed76e8c7d551ae8cf11de57a787169538370369':
  _Unwind_Context is a struct.
2015-01-07 03:15:06 +00:00
Elliott Hughes
6ed76e8c7d am ac8f2810: Merge "_Unwind_Context is a struct."
* commit 'ac8f2810297cd6c104aad38686627fcc13591347':
  _Unwind_Context is a struct.
2015-01-07 03:08:37 +00:00
Elliott Hughes
ac8f281029 Merge "_Unwind_Context is a struct." 2015-01-07 02:59:26 +00:00
Elliott Hughes
30e59c4c69 _Unwind_Context is a struct.
Change-Id: Iff2c52dc630eb83b931a78fdebc4494d69462db7
2015-01-06 18:48:24 -08:00
Yabin Cui
a6ba7cc8df am 023b5d1a: am 8e8daba1: am 8004f735: Merge "Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK."
* commit '023b5d1aa5e116db831f8f1bd688cfd9172b5ab8':
  Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK.
2015-01-07 02:15:11 +00:00
Yabin Cui
023b5d1aa5 am 8e8daba1: am 8004f735: Merge "Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK."
* commit '8e8daba18540fc7d5d11b6fb1d85234049086f29':
  Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK.
2015-01-07 02:10:36 +00:00
Yabin Cui
8e8daba185 am 8004f735: Merge "Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK."
* commit '8004f735f1bad7255268392e2c7ac648f0702e5e':
  Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK.
2015-01-07 01:59:07 +00:00
Yabin Cui
8004f735f1 Merge "Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK." 2015-01-07 01:28:40 +00:00
Yabin Cui
ba8dfc2669 Remove PTHREAD_ATTR_FLAG_USER_ALLOCATED_STACK.
Patch for https://android-review.googlesource.com/#/c/120844/.

Change-Id: Idca5ccd7b28e8f07f1d2d1b6e3bba6781b62f0e0
2015-01-06 17:11:23 -08:00
Elliott Hughes
ac1b553cc0 am d27ff239: am 9d8b7d1a: am d3de1dde: Merge "[MIPS64] Add correct mcontext_t for 64-bit MIPS"
* commit 'd27ff239dbc2e6e792e438b385c5414f34ed3065':
  [MIPS64] Add correct mcontext_t for 64-bit MIPS
2015-01-06 19:57:02 +00:00
Elliott Hughes
d27ff239db am 9d8b7d1a: am d3de1dde: Merge "[MIPS64] Add correct mcontext_t for 64-bit MIPS"
* commit '9d8b7d1ac495b2cda848fd6a06088e5654b74ed6':
  [MIPS64] Add correct mcontext_t for 64-bit MIPS
2015-01-06 18:17:42 +00:00
Elliott Hughes
9d8b7d1ac4 am d3de1dde: Merge "[MIPS64] Add correct mcontext_t for 64-bit MIPS"
* commit 'd3de1ddef1427708581af4df02943486783f980d':
  [MIPS64] Add correct mcontext_t for 64-bit MIPS
2015-01-06 17:47:45 +00:00
Elliott Hughes
d3de1ddef1 Merge "[MIPS64] Add correct mcontext_t for 64-bit MIPS" 2015-01-06 17:43:25 +00:00
Faraz Shahbazker
e247e1c89e [MIPS64] Add correct mcontext_t for 64-bit MIPS
Change-Id: I76d503860d0e1d937b6913bf2c1c6ebb531617da
2015-01-06 07:58:02 -08:00
Yabin Cui
f2a0e9923a am 001208e6: am 5e1bc9f7: am 597800f1: Merge "better gtest runner for bionic"
* commit '001208e6ae5c18d02324ef57361aa25739c98edd':
  better gtest runner for bionic
2015-01-02 22:53:48 +00:00
Yabin Cui
4b99b0d310 am 473a0db7: am 745b236d: am 541b0b18: Merge "Reserve enough user request stack space in pthread_create."
* commit '473a0db7db022dbb47eb040759b16ce466dc1c38':
  Reserve enough user request stack space in pthread_create.
2015-01-02 22:53:46 +00:00
Yabin Cui
001208e6ae am 5e1bc9f7: am 597800f1: Merge "better gtest runner for bionic"
* commit '5e1bc9f7b8fde582ed08dd20c0bfb2779df9953c':
  better gtest runner for bionic
2015-01-02 22:48:07 +00:00
Yabin Cui
473a0db7db am 745b236d: am 541b0b18: Merge "Reserve enough user request stack space in pthread_create."
* commit '745b236dc3bc935c1fb581c7f93c3464f2bb8216':
  Reserve enough user request stack space in pthread_create.
2015-01-02 22:48:06 +00:00
Yabin Cui
5e1bc9f7b8 am 597800f1: Merge "better gtest runner for bionic"
* commit '597800f1d71590fc9ad51ce5227280586b2ceda5':
  better gtest runner for bionic
2015-01-02 22:41:45 +00:00
Yabin Cui
745b236dc3 am 541b0b18: Merge "Reserve enough user request stack space in pthread_create."
* commit '541b0b187dd91684efdcebf72c8830e976ca04a6':
  Reserve enough user request stack space in pthread_create.
2015-01-02 22:41:44 +00:00
Yabin Cui
597800f1d7 Merge "better gtest runner for bionic" 2015-01-02 22:38:41 +00:00
Yabin Cui
541b0b187d Merge "Reserve enough user request stack space in pthread_create." 2015-01-02 22:37:56 +00:00
Yabin Cui
6a7aaf4675 Reserve enough user request stack space in pthread_create.
Bug: 18830897
Change-Id: I1ba4aaeaf66a7ff99c5d82ad45469011171b0a3b
2015-01-02 14:33:48 -08:00
Elliott Hughes
6a1f21685f am db4fe340: am 46987a94: am 9b6164ca: Merge "Remove bogus transitive includes."
* commit 'db4fe340501a09699c9883f765abc58b2e9d0f13':
  Remove bogus transitive includes.
2014-12-30 12:27:29 +00:00
Elliott Hughes
db4fe34050 am 46987a94: am 9b6164ca: Merge "Remove bogus transitive includes."
* commit '46987a9490cfe8409ea73e94f36e7f0bb69e43de':
  Remove bogus transitive includes.
2014-12-30 12:21:08 +00:00
Elliott Hughes
46987a9490 am 9b6164ca: Merge "Remove bogus transitive includes."
* commit '9b6164ca8d7b2c5e7fced1cbbda6c353e6e21e54':
  Remove bogus transitive includes.
2014-12-30 12:16:06 +00:00
Elliott Hughes
9b6164ca8d Merge "Remove bogus transitive includes." 2014-12-29 21:52:04 +00:00
Elliott Hughes
40360b379c Remove bogus transitive includes.
<signal.h> shouldn't get you the contents of <errno.h>, and <fcntl.h>
shouldn't get you the contents of <unistd.h>.

Change-Id: I347499cd8671bfee98e6b8e875a97cab3a3655d3
2014-12-29 13:29:50 -08:00
Elliott Hughes
b6c73f8276 am 84715cbc: am 52a2df5f: am 0a552407: Merge "Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>."
* commit '84715cbccba4d443ff7efb0a7a8969f37e704fe0':
  Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>.
2014-12-29 19:56:37 +00:00
Elliott Hughes
84715cbccb am 52a2df5f: am 0a552407: Merge "Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>."
* commit '52a2df5f2ad445042b31ffef01d6a0fbf18d9a1a':
  Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>.
2014-12-29 19:51:40 +00:00
Elliott Hughes
52a2df5f2a am 0a552407: Merge "Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>."
* commit '0a552407ada6fc718be016df0902f6c23aa88eea':
  Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>.
2014-12-29 19:45:21 +00:00
Elliott Hughes
0a552407ad Merge "Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>." 2014-12-29 19:40:45 +00:00
Elliott Hughes
64d8382394 Ensure <fcntl.h> defines the S_* constants from <sys/stat.h>.
POSIX says "The <fcntl.h> header shall define the symbolic constants for file
modes for use as values of mode_t as described in <sys/stat.h>".

Needed to build ToT strace.

Change-Id: Ia85a51ef6fd86a48084fe48ce24963000a937d37
2014-12-29 11:14:38 -08:00
Elliott Hughes
811363b88e am 82e66a3d: am cc107443: am 50e15a2e: Merge "Remove more BSD cruft from the public headers."
* commit '82e66a3d9d104197c2699a41729cdf8961b44348':
  Remove more BSD cruft from the public headers.
2014-12-23 20:26:32 +00:00
Elliott Hughes
82e66a3d9d am cc107443: am 50e15a2e: Merge "Remove more BSD cruft from the public headers."
* commit 'cc1074431e46333671875345d4bb26b65fe96dd7':
  Remove more BSD cruft from the public headers.
2014-12-23 20:21:15 +00:00
Elliott Hughes
cc1074431e am 50e15a2e: Merge "Remove more BSD cruft from the public headers."
* commit '50e15a2ec7189eb3279cbf546679ccac4a138e90':
  Remove more BSD cruft from the public headers.
2014-12-23 20:17:38 +00:00
Elliott Hughes
50e15a2ec7 Merge "Remove more BSD cruft from the public headers." 2014-12-23 20:14:52 +00:00
Elliott Hughes
ddbbff5725 am 77707a3d: am d029db10: am ba09edcb: Merge "Fix nan output in the printf family."
* commit '77707a3d4f957ddc8e714b4df56eb2d6f48cd4d1':
  Fix nan output in the printf family.
2014-12-21 15:02:19 +00:00
Elliott Hughes
77707a3d4f am d029db10: am ba09edcb: Merge "Fix nan output in the printf family."
* commit 'd029db10526c2091acfe940d7d008019a309c47c':
  Fix nan output in the printf family.
2014-12-21 06:30:39 +00:00
Elliott Hughes
d029db1052 am ba09edcb: Merge "Fix nan output in the printf family."
* commit 'ba09edcb41799e037780b92ddcbe6bd08bac5996':
  Fix nan output in the printf family.
2014-12-21 05:59:46 +00:00
Elliott Hughes
ba09edcb41 Merge "Fix nan output in the printf family." 2014-12-21 02:54:06 +00:00
Elliott Hughes
1b18aff9ba Fix nan output in the printf family.
Bug: https://code.google.com/p/android/issues/detail?id=82452
Change-Id: I51f226c8b033de6e81baeea5e6db3de6ed196f73
2014-12-20 18:53:08 -08:00
Yabin Cui
8f05d451e3 am 598f8666: am e4d3161a: am 4c30fedf: Merge "Move gethtnamaddr.c to net/ subdirectory."
* commit '598f86661d242f60c9a885fee7c90d9a692488ad':
  Move gethtnamaddr.c to net/ subdirectory.
2014-12-20 03:32:02 +00:00
Elliott Hughes
998f2d5a50 Remove more BSD cruft from the public headers.
Change-Id: I1e3097f745b526db448bf72fbc05fb2ba23929a0
2014-12-19 19:30:11 -08:00
Yabin Cui
598f86661d am e4d3161a: am 4c30fedf: Merge "Move gethtnamaddr.c to net/ subdirectory."
* commit 'e4d3161a84c0373d35f43f981559212a9ae44397':
  Move gethtnamaddr.c to net/ subdirectory.
2014-12-20 03:26:19 +00:00
Yabin Cui
e4d3161a84 am 4c30fedf: Merge "Move gethtnamaddr.c to net/ subdirectory."
* commit '4c30fedfd3c78333596b31aa675d8cbd23e60487':
  Move gethtnamaddr.c to net/ subdirectory.
2014-12-20 03:20:51 +00:00
Yabin Cui
4c30fedfd3 Merge "Move gethtnamaddr.c to net/ subdirectory." 2014-12-20 03:16:05 +00:00
Yabin Cui
a2177c6ccb Move gethtnamaddr.c to net/ subdirectory.
It may be the better place to stay.

Change-Id: I517cc2769f63e1873191768c4732907c14f2c60e
2014-12-19 17:29:04 -08:00
Yabin Cui
dbfbc63935 am 66870e1b: am a62755ad: am 7e202e4e: Merge "Remove t->tls==NULL check in pthread_key_delete."
* commit '66870e1be53f3e5f46ef1c005dc882e5ddf9dd07':
  Remove t->tls==NULL check in pthread_key_delete.
2014-12-20 00:57:17 +00:00
Yabin Cui
66870e1be5 am a62755ad: am 7e202e4e: Merge "Remove t->tls==NULL check in pthread_key_delete."
* commit 'a62755adba509a7cb295d1bc5f9d3447e3943c6a':
  Remove t->tls==NULL check in pthread_key_delete.
2014-12-20 00:51:30 +00:00
Yabin Cui
a62755adba am 7e202e4e: Merge "Remove t->tls==NULL check in pthread_key_delete."
* commit '7e202e4eb150158e505859b506e4aa3706a14497':
  Remove t->tls==NULL check in pthread_key_delete.
2014-12-20 00:48:38 +00:00
Yabin Cui
7e202e4eb1 Merge "Remove t->tls==NULL check in pthread_key_delete." 2014-12-20 00:44:41 +00:00
Yabin Cui
246bcb10b6 Remove t->tls==NULL check in pthread_key_delete.
Change-Id: I6c0c71d30fe9d5b888752a4204abd95d5149bb96
2014-12-19 16:31:03 -08:00
Yabin Cui
0fc2bd930d am a15bd72c: am da2317ed: am cdc7ad11: Merge "Use mmap to create the pthread_internal_t"
* commit 'a15bd72cf0e6b721b6cffc5652ded636dde6b7e7':
  Use mmap to create the pthread_internal_t
2014-12-20 00:25:27 +00:00
Yabin Cui
a15bd72cf0 am da2317ed: am cdc7ad11: Merge "Use mmap to create the pthread_internal_t"
* commit 'da2317edb36acdaa6a7bc49cef8deba2a42bfb15':
  Use mmap to create the pthread_internal_t
2014-12-20 00:19:25 +00:00
Yabin Cui
da2317edb3 am cdc7ad11: Merge "Use mmap to create the pthread_internal_t"
* commit 'cdc7ad11e931ed9fc329b96e880f22e24be1c267':
  Use mmap to create the pthread_internal_t
2014-12-20 00:15:30 +00:00
Yabin Cui
cdc7ad11e9 Merge "Use mmap to create the pthread_internal_t" 2014-12-20 00:10:38 +00:00
Yabin Cui
8cf1b30567 Use mmap to create the pthread_internal_t
Add name to mmaped regions.
Add pthread benchmark code.
Allocate pthread_internal_t on regular stack.

Bug: 16847284
Change-Id: Id60835163bb0d68092241f1a118015b5a8f85069
2014-12-19 16:05:29 -08:00
Yabin Cui
bf31e358b6 am b695cb47: am be327941: am e28a1864: Merge "Support gethostbyname_r_ERANGE."
* commit 'b695cb47c36f63d63ca6c29e7a922e32c16aa416':
  Support gethostbyname_r_ERANGE.
2014-12-19 23:08:37 +00:00
Yabin Cui
b695cb47c3 am be327941: am e28a1864: Merge "Support gethostbyname_r_ERANGE."
* commit 'be32794141e95ea5d65626bbf29be95b9d974d54':
  Support gethostbyname_r_ERANGE.
2014-12-19 23:02:51 +00:00
Yabin Cui
be32794141 am e28a1864: Merge "Support gethostbyname_r_ERANGE."
* commit 'e28a1864916373f4c520f2a8be1c1c7ea97424cf':
  Support gethostbyname_r_ERANGE.
2014-12-19 22:57:22 +00:00
Yabin Cui
e28a186491 Merge "Support gethostbyname_r_ERANGE." 2014-12-19 22:53:26 +00:00
Yabin Cui
7069256495 Support gethostbyname_r_ERANGE.
Bug: 18802601
Change-Id: Iaa64921e96f91e330f1845c5399ee8aba39d9c10
2014-12-19 14:11:29 -08:00
Dimitry Ivanov
f95b314222 am 7544631e: am c692d3e5: am db314648: Merge "Add support for DT_MIPS_RLD_MAP2 tag."
* commit '7544631ef6c2b0ae22ba38ac44eba28d16439ee5':
  Add support for DT_MIPS_RLD_MAP2 tag.
2014-12-19 21:33:00 +00:00
Dimitry Ivanov
7544631ef6 am c692d3e5: am db314648: Merge "Add support for DT_MIPS_RLD_MAP2 tag."
* commit 'c692d3e50a3af788e9294769fca33e29eb91b139':
  Add support for DT_MIPS_RLD_MAP2 tag.
2014-12-19 21:26:04 +00:00
Dimitry Ivanov
c692d3e50a am db314648: Merge "Add support for DT_MIPS_RLD_MAP2 tag."
* commit 'db3146489eecf2757cab9c3a7a0abb561f2addc8':
  Add support for DT_MIPS_RLD_MAP2 tag.
2014-12-19 21:21:05 +00:00
Dimitry Ivanov
db3146489e Merge "Add support for DT_MIPS_RLD_MAP2 tag." 2014-12-19 21:15:02 +00:00
Raghu Gandham
688157295f Add support for DT_MIPS_RLD_MAP2 tag.
Position Independent Executables cannot communicate with GDB using DT_MIPS_RLD_TAG.
Hence a new tag DT_MIPS_RLD_MAP2 got introduced to fix the issue.

Change-Id: I77ce3faf1ef2e121003b804ecd291abb25cfbb56
Signed-off-by: Nikola Veljkovic<Nikola.Veljkovic@imgtec.com>
2014-12-19 11:13:11 -08:00
Chih-Hung Hsieh
8257c26e1f am 31a38647: am 70acee19: am 65e69856: Merge "Must use Clang assembler for mips target."
* commit '31a38647d0f9f28bbd959c393a9bd87c7f15584d':
  Must use Clang assembler for mips target.
2014-12-19 03:58:00 +00:00
Elliott Hughes
3ae5bb6f9c am a5359bb1: am c400e072: am 7eb9b6c5: Merge "Update bionic NOTICE files."
* commit 'a5359bb11a895fb1aae2b59cba4744c34ec6d9b5':
  Update bionic NOTICE files.
2014-12-19 03:57:59 +00:00
Chih-Hung Hsieh
31a38647d0 am 70acee19: am 65e69856: Merge "Must use Clang assembler for mips target."
* commit '70acee197411102b58dfa261f75a8b359595c907':
  Must use Clang assembler for mips target.
2014-12-19 03:52:16 +00:00
Elliott Hughes
a5359bb11a am c400e072: am 7eb9b6c5: Merge "Update bionic NOTICE files."
* commit 'c400e072db8dca8710298bf138c86e30c7b47991':
  Update bionic NOTICE files.
2014-12-19 03:52:15 +00:00
Chih-Hung Hsieh
70acee1974 am 65e69856: Merge "Must use Clang assembler for mips target."
* commit '65e6985617d035ef45da86f8c8bcceea7bc47239':
  Must use Clang assembler for mips target.
2014-12-19 03:35:25 +00:00
Elliott Hughes
c400e072db am 7eb9b6c5: Merge "Update bionic NOTICE files."
* commit '7eb9b6c537c32280571fead8676634c3dfc6388e':
  Update bionic NOTICE files.
2014-12-19 03:35:24 +00:00
Chih-Hung Hsieh
65e6985617 Merge "Must use Clang assembler for mips target." 2014-12-19 01:27:23 +00:00
Chih-Hung Hsieh
6f96d58c0d Must use Clang assembler for mips target.
GNU assembler has internal error with clang's output.

BUG: 18807290
Change-Id: Iabbe991720fc562884f19d79bded903505fc891d
2014-12-18 17:10:56 -08:00
Elliott Hughes
7eb9b6c537 Merge "Update bionic NOTICE files." 2014-12-19 01:10:37 +00:00
Elliott Hughes
6b2b5856d9 Update bionic NOTICE files.
Change-Id: Ic280872ef3137febd9d4a87d5c7662e264692071
2014-12-18 16:27:30 -08:00
Elliott Hughes
eb4d915cc6 am 649386ae: am a5193f2f: am c631bb21: Merge "Fix the types of some of the struct stat fields."
* commit '649386ae1a54357cca00bc13cc6d8b345e1a0cbb':
  Fix the types of some of the struct stat fields.
2014-12-19 00:08:17 +00:00
Elliott Hughes
571d09d73e am 3801189b: am 7cff30c7: am b7f0693a: Merge "Remove bogus #include <endian.h> from <sys/stat.h>."
* commit '3801189b586eb3538d9ef42863ecdfb17e78009c':
  Remove bogus #include <endian.h> from <sys/stat.h>.
2014-12-19 00:08:08 +00:00
Elliott Hughes
de6472eac1 am 53544f5a: am 7d4d2297: am 8597c2b3: Merge "Split the shared group data from the shared passwd data."
* commit '53544f5af679828fd3c27225bfbd2adaee87d846':
  Split the shared group data from the shared passwd data.
2014-12-19 00:08:06 +00:00
Elliott Hughes
0a0865a954 am 28bba7b4: am e14086a8: am a9c940a6: Merge "Fix struct stat member types for x86-64."
* commit '28bba7b488200093db5ec8831605c07bf75b88c5':
  Fix struct stat member types for x86-64.
2014-12-19 00:08:05 +00:00
Elliott Hughes
649386ae1a am a5193f2f: am c631bb21: Merge "Fix the types of some of the struct stat fields."
* commit 'a5193f2ffe39ff88f27ffb34a6967e023cb3daee':
  Fix the types of some of the struct stat fields.
2014-12-18 23:45:30 +00:00
Elliott Hughes
a5193f2ffe am c631bb21: Merge "Fix the types of some of the struct stat fields."
* commit 'c631bb215e29981222f19c092ded49c7c1f15845':
  Fix the types of some of the struct stat fields.
2014-12-18 23:42:02 +00:00
Elliott Hughes
c631bb215e Merge "Fix the types of some of the struct stat fields." 2014-12-18 23:38:26 +00:00
Elliott Hughes
3801189b58 am 7cff30c7: am b7f0693a: Merge "Remove bogus #include <endian.h> from <sys/stat.h>."
* commit '7cff30c7c67454e5b0f97c0dcc6261c73ae664c8':
  Remove bogus #include <endian.h> from <sys/stat.h>.
2014-12-18 23:35:21 +00:00
Elliott Hughes
53544f5af6 am 7d4d2297: am 8597c2b3: Merge "Split the shared group data from the shared passwd data."
* commit '7d4d2297856106f132283c4e501b7210fc7b0bd8':
  Split the shared group data from the shared passwd data.
2014-12-18 23:35:20 +00:00
Elliott Hughes
28bba7b488 am e14086a8: am a9c940a6: Merge "Fix struct stat member types for x86-64."
* commit 'e14086a8fc137c9900ad895556710385fc423e10':
  Fix struct stat member types for x86-64.
2014-12-18 23:35:18 +00:00
Elliott Hughes
7cff30c7c6 am b7f0693a: Merge "Remove bogus #include <endian.h> from <sys/stat.h>."
* commit 'b7f0693aaac9907070443ee6e47fe1d594b42251':
  Remove bogus #include <endian.h> from <sys/stat.h>.
2014-12-18 23:27:47 +00:00
Elliott Hughes
b7f0693aaa Merge "Remove bogus #include <endian.h> from <sys/stat.h>." 2014-12-18 23:24:26 +00:00
Dan Albert
54ea1ed18a am 6aed1a13: am ec3601cd: am 9dd5ab46: Merge "Disable ASAN for more of our libraries."
* commit '6aed1a1358a3395e10913ca2b008db823b8f1987':
  Disable ASAN for more of our libraries.
2014-12-18 23:21:02 +00:00
Yabin Cui
3c902c64a4 am 858e2390: am 9a734138: am 370a3e57: Merge "Sync with upstream for gethnamaddr.c."
* commit '858e239094ba014ec36bee7bab43da29525bbe3a':
  Sync with upstream for gethnamaddr.c.
2014-12-18 23:21:01 +00:00
Elliott Hughes
9257c477ae Fix the types of some of the struct stat fields.
Bug: 17062519
Change-Id: I5207867939f3c2876bf6448e565fa4364aa7e4f0
2014-12-18 15:17:42 -08:00
Elliott Hughes
7d4d229785 am 8597c2b3: Merge "Split the shared group data from the shared passwd data."
* commit '8597c2b3f2ac3df9abe30378cdd3ecd559d995e7':
  Split the shared group data from the shared passwd data.
2014-12-18 23:15:40 +00:00
Elliott Hughes
8597c2b3f2 Merge "Split the shared group data from the shared passwd data." 2014-12-18 23:12:45 +00:00
Elliott Hughes
0c92e8c3d1 Remove bogus #include <endian.h> from <sys/stat.h>.
Bug: 17062519
Change-Id: I3dc21ee8b90580f112c73c72aff5d3bec4778026
2014-12-18 15:10:19 -08:00
Elliott Hughes
e14086a8fc am a9c940a6: Merge "Fix struct stat member types for x86-64."
* commit 'a9c940a69a5ad01a92620594d41e462c5d46186e':
  Fix struct stat member types for x86-64.
2014-12-18 23:10:03 +00:00
Elliott Hughes
a9c940a69a Merge "Fix struct stat member types for x86-64." 2014-12-18 23:05:20 +00:00
Elliott Hughes
1c52e6c926 Fix struct stat member types for x86-64.
Bug: 17062519
Change-Id: I93b1e8b1d4b6918ab7c3a985e2f7da277077375e
2014-12-18 15:03:33 -08:00
Elliott Hughes
7874f1d718 Split the shared group data from the shared passwd data.
Found by the toybox id(1) which calls both getpwuid(3) and getgrgid(3) before
looking at either result. The use of a shared buffer in this code meant that
even on a single thread, the data for any of the passwd functions would be
clobbered by the data for any of the group functions (or vice versa).

This might seem like an insufficient fix, but POSIX explicitly says (for
getpwnam) that the result "might be overwritten by a subsequent call to
getpwent(), getpwnam(), or getpwuid()" and likewise for other members of
that group, plus equivalent text for the group-related functions.

Change-Id: I2272f47e91f72e043fdaf7c169fa9f6978ff4370
2014-12-18 15:01:10 -08:00
Dan Albert
6aed1a1358 am ec3601cd: am 9dd5ab46: Merge "Disable ASAN for more of our libraries."
* commit 'ec3601cdf4730e5ec1559079486bbb4f9a43e042':
  Disable ASAN for more of our libraries.
2014-12-18 21:50:34 +00:00
Yabin Cui
858e239094 am 9a734138: am 370a3e57: Merge "Sync with upstream for gethnamaddr.c."
* commit '9a734138138fcde0a2f0935e86246b9d7ff0ccb1':
  Sync with upstream for gethnamaddr.c.
2014-12-18 21:49:52 +00:00
Dan Albert
ec3601cdf4 am 9dd5ab46: Merge "Disable ASAN for more of our libraries."
* commit '9dd5ab46194a3ef7992b0c08d18f2e30551f9331':
  Disable ASAN for more of our libraries.
2014-12-18 16:10:45 +00:00
Dan Albert
9dd5ab4619 Merge "Disable ASAN for more of our libraries." 2014-12-18 16:07:15 +00:00
Dan Albert
da194780b1 Disable ASAN for more of our libraries.
Since ASAN depends on these libraries, we need to exclude them from
being instrumented.

Change-Id: I62005b6d04ee7b2283c4bd54ace5304386c67358
2014-12-18 08:03:49 -08:00
Yabin Cui
9a73413813 am 370a3e57: Merge "Sync with upstream for gethnamaddr.c."
* commit '370a3e573d1cdff6070c77322d4a07bd53e5db3c':
  Sync with upstream for gethnamaddr.c.
2014-12-18 01:11:56 +00:00
Yabin Cui
370a3e573d Merge "Sync with upstream for gethnamaddr.c." 2014-12-18 01:06:10 +00:00
Yabin Cui
58d33a51f3 Sync with upstream for gethnamaddr.c.
Bug: 18566967
Change-Id: I37e7410226b49eec67614e20b2c1d5e3e47817a5
2014-12-17 16:19:27 -08:00
Dmitriy Ivanov
437fa965af am c24329c7: am 4c344aff: am 92b9cb2c: Merge "Add another test for weak-reference"
* commit 'c24329c710a9ce0d9d9ee3b3d2f6a16b32fabc6a':
  Add another test for weak-reference
2014-12-16 22:16:12 +00:00
Dmitriy Ivanov
c24329c710 am 4c344aff: am 92b9cb2c: Merge "Add another test for weak-reference"
* commit '4c344affba81b630241fd4e012e90fe594a7b196':
  Add another test for weak-reference
2014-12-16 22:10:00 +00:00
Dmitriy Ivanov
4c344affba am 92b9cb2c: Merge "Add another test for weak-reference"
* commit '92b9cb2c899c386954b8f9ad8111aa6c8c63e306':
  Add another test for weak-reference
2014-12-16 22:06:05 +00:00
Dmitriy Ivanov
92b9cb2c89 Merge "Add another test for weak-reference" 2014-12-16 22:01:47 +00:00
Elliott Hughes
1b8e7b6cf8 am 50b6dc34: am 48bc703a: am 3a50b65f: Merge "Fix <net/route.h>."
* commit '50b6dc34f196fd7216a7395a4f82dedf68f2bac2':
  Fix <net/route.h>.
2014-12-16 21:49:25 +00:00
Elliott Hughes
50b6dc34f1 am 48bc703a: am 3a50b65f: Merge "Fix <net/route.h>."
* commit '48bc703a3c30512f06f65f2660ed9d2841b0acce':
  Fix <net/route.h>.
2014-12-16 20:35:01 +00:00
Dmitriy Ivanov
bfa88bca5c Add another test for weak-reference
This one covers undefined weak reference in .so
  referenced via JUMP_SLOT relocation.

Bug: 17526061
Change-Id: Ib8764bd30c1f686c4818ebbc6683cf42dee908b2
2014-12-16 19:46:45 +00:00
Elliott Hughes
48bc703a3c am 3a50b65f: Merge "Fix <net/route.h>."
* commit '3a50b65fd152b4a50dc15ec33f19080e8724b02c':
  Fix <net/route.h>.
2014-12-16 16:58:33 +00:00
Elliott Hughes
3a50b65fd1 Merge "Fix <net/route.h>." 2014-12-16 16:53:25 +00:00
Elliott Hughes
badd7e1a58 Fix <net/route.h>.
Previously it couldn't be included alone. Also add a header and include guard,
and fix its siblings' include guards.

Bug: https://code.google.com/p/android/issues/detail?id=82638
Change-Id: I32139a4bda0a6b015508a2319bf4e1a1453345f2
2014-12-15 18:47:14 -08:00
Elliott Hughes
2e507db0e2 am 63978dec: am 7de05306: am 16ea2790: Merge "Move the generic arm memcmp.S into the generic directory."
* commit '63978deca9582e98576d7b12601e5e6dd163a0bb':
  Move the generic arm memcmp.S into the generic directory.
2014-12-15 22:22:18 +00:00
Elliott Hughes
30fcb99ecd am c45b108d: am a2bfb531: am ad01c983: Merge "Remove arm assembler not referenced from any makefile."
* commit 'c45b108deb70f02902cb3309ea0b287ee99d5095':
  Remove arm assembler not referenced from any makefile.
2014-12-15 22:04:09 +00:00
Elliott Hughes
63978deca9 am 7de05306: am 16ea2790: Merge "Move the generic arm memcmp.S into the generic directory."
* commit '7de05306c6f3b3077b025d5dd3eade2f125535d5':
  Move the generic arm memcmp.S into the generic directory.
2014-12-15 21:32:11 +00:00
Elliott Hughes
7de05306c6 am 16ea2790: Merge "Move the generic arm memcmp.S into the generic directory."
* commit '16ea2790a84b1e65dc1e485c3ec494de787cc490':
  Move the generic arm memcmp.S into the generic directory.
2014-12-15 19:38:34 +00:00
Elliott Hughes
16ea2790a8 Merge "Move the generic arm memcmp.S into the generic directory." 2014-12-15 19:32:42 +00:00
Elliott Hughes
c45b108deb am a2bfb531: am ad01c983: Merge "Remove arm assembler not referenced from any makefile."
* commit 'a2bfb53107a7b770e9ad93287be5745271067786':
  Remove arm assembler not referenced from any makefile.
2014-12-15 19:27:20 +00:00
Elliott Hughes
a2bfb53107 am ad01c983: Merge "Remove arm assembler not referenced from any makefile."
* commit 'ad01c9831918ecae815db2406022ef69e74f6e6d':
  Remove arm assembler not referenced from any makefile.
2014-12-15 19:20:50 +00:00
Elliott Hughes
1ef6ec40e1 Move the generic arm memcmp.S into the generic directory.
Change-Id: I48e4d14a0dcddbb246edbac6d0329619574ab44d
2014-12-15 11:06:34 -08:00
Yabin Cui
e247fd38f8 am bb3579f8: am 96cd50f2: am 0e32e39d: Merge "Fix pthread key num calculation."
* commit 'bb3579f8787fb6cafe5e6373c91e78556f100dfc':
  Fix pthread key num calculation.
2014-12-15 18:46:49 +00:00
Elliott Hughes
9ab3b08829 am 1fc1c898: am 7dc71bb9: am 732d65c1: Merge "[MIPS] Add sgidefs.h for mips64"
* commit '1fc1c8981043f949313103b9532cbc19dc3dd919':
  [MIPS] Add sgidefs.h for mips64
2014-12-15 18:46:31 +00:00
Elliott Hughes
ad01c98319 Merge "Remove arm assembler not referenced from any makefile." 2014-12-15 18:46:16 +00:00
Elliott Hughes
f92cc30571 Remove arm assembler not referenced from any makefile.
I also suspect that libc/arch-arm/bionic/memcmp.S is supposed to like in the
generic directory these days, but this change just removes dead code.

Change-Id: I9072488df6e9b7261d79b6014914a0e937cb387b
2014-12-14 17:52:32 -08:00
Yabin Cui
294d1e2c9e better gtest runner for bionic
1. option to run each test in a separate forked process: "--isolate".
2. warnings about slow tests: "--warnline".
3. run multiple tests at the same time: "-j N".

Bug: 17589740
Change-Id: Ife5f4cafec43aa051ad7bd9c9b2b7e2e437db0de
2014-12-13 18:53:34 -08:00
Yabin Cui
bb3579f878 am 96cd50f2: am 0e32e39d: Merge "Fix pthread key num calculation."
* commit '96cd50f2fc33b0d342f1733894b06fd59a725519':
  Fix pthread key num calculation.
2014-12-13 03:03:51 +00:00
Yabin Cui
96cd50f2fc am 0e32e39d: Merge "Fix pthread key num calculation."
* commit '0e32e39df0e487ec86d86627f1d4b43d1c8c524d':
  Fix pthread key num calculation.
2014-12-13 02:59:05 +00:00
Yabin Cui
0e32e39df0 Merge "Fix pthread key num calculation." 2014-12-13 02:51:27 +00:00
Yabin Cui
6c238f2926 Fix pthread key num calculation.
Bug: 18723085
Change-Id: Iba2c834b350e4cdba0b2d771b221560a3e5df952
2014-12-12 17:00:08 -08:00
Elliott Hughes
1fc1c89810 am 7dc71bb9: am 732d65c1: Merge "[MIPS] Add sgidefs.h for mips64"
* commit '7dc71bb9d5f73dc2ffe6e070efe29e69b88c14a7':
  [MIPS] Add sgidefs.h for mips64
2014-12-13 00:41:40 +00:00
Elliott Hughes
7dc71bb9d5 am 732d65c1: Merge "[MIPS] Add sgidefs.h for mips64"
* commit '732d65c1b1d33b2eadb5d6f2b1771c6fc536e23f':
  [MIPS] Add sgidefs.h for mips64
2014-12-13 00:34:13 +00:00
Elliott Hughes
732d65c1b1 Merge "[MIPS] Add sgidefs.h for mips64" 2014-12-13 00:28:57 +00:00
Duane Sand
50a3c6949b [MIPS] Add sgidefs.h for mips64
Sgidefs.h is needed by strace.
Replaced now-duplicate arch-mips64/include directory
by symlink to arch-mips/include.

Change-Id: I7808602cfa452eca3ffbdb94903f4c5bdb33efa3
2014-12-12 16:25:36 -08:00
Yabin Cui
927d57adde am 04c0d4cb: am 96794bd9: am 6d634f9b: Merge "make stack_protector_DeathTest work for gcc4.9"
* commit '04c0d4cb2235c29f65b6b52660ff34c28c10c93e':
  make stack_protector_DeathTest work for gcc4.9
2014-12-12 02:02:56 +00:00
Yabin Cui
04c0d4cb22 am 96794bd9: am 6d634f9b: Merge "make stack_protector_DeathTest work for gcc4.9"
* commit '96794bd9713882a4cd1452b7bca62729d10dc94c':
  make stack_protector_DeathTest work for gcc4.9
2014-12-12 01:56:09 +00:00
Yabin Cui
96794bd971 am 6d634f9b: Merge "make stack_protector_DeathTest work for gcc4.9"
* commit '6d634f9baaf804a91c97e019c832c1e9611a903a':
  make stack_protector_DeathTest work for gcc4.9
2014-12-12 01:43:50 +00:00
Yabin Cui
6d634f9baa Merge "make stack_protector_DeathTest work for gcc4.9" 2014-12-12 01:38:33 +00:00
Yabin Cui
562ae1e6e4 make stack_protector_DeathTest work for gcc4.9
Bug: 18721888
Change-Id: I5f0b5c84319f56dbc4efb88e9d828138944667ae
2014-12-11 17:24:55 -08:00
Christopher Ferris
9d56c11cf1 am 887a9a48: am 3b811c81: am 3115b34c: Merge "fix runtime issues for scripts"
* commit '887a9a485c36bc1854e45b91e41a3e7b1926ef16':
  fix runtime issues for scripts
2014-12-11 19:02:31 +00:00
Elliott Hughes
baf74e55e5 am a70d5478: am 1dff030e: am e7b8bc4e: Merge "Clean up DNS proxying."
* commit 'a70d54786fb98ec8378a246126ec0c589358691f':
  Clean up DNS proxying.
2014-12-11 19:02:30 +00:00
Christopher Ferris
887a9a485c am 3b811c81: am 3115b34c: Merge "fix runtime issues for scripts"
* commit '3b811c814e4ebe6591992141040ba5997a12407a':
  fix runtime issues for scripts
2014-12-11 18:55:56 +00:00
Elliott Hughes
a70d54786f am 1dff030e: am e7b8bc4e: Merge "Clean up DNS proxying."
* commit '1dff030e6eb527eeb4e7ed163cf19641fdb3872b':
  Clean up DNS proxying.
2014-12-11 18:55:55 +00:00
Christopher Ferris
3b811c814e am 3115b34c: Merge "fix runtime issues for scripts"
* commit '3115b34c9299d69919de39d01bfbbbe5e798e3b2':
  fix runtime issues for scripts
2014-12-11 18:36:25 +00:00
Elliott Hughes
1dff030e6e am e7b8bc4e: Merge "Clean up DNS proxying."
* commit 'e7b8bc4e291a08dfb6f2f84a2bb0ca99f3bbada6':
  Clean up DNS proxying.
2014-12-11 18:18:57 +00:00
Christopher Ferris
9a55815388 am 4173ebb4: am ca5edfb2: am fec60529: Merge "Fix missing symbol for debug malloc."
* commit '4173ebb42a43238f0cd98523f4d0c97c7bac1017':
  Fix missing symbol for debug malloc.
2014-12-10 22:23:23 +00:00
Elliott Hughes
ab94c29b8a am 857a5882: am 38f1804b: am 3a49cfe3: Merge "Fix the setjmp tests for mips."
* commit '857a5882742781fc40d264d70c28b160b309a834':
  Fix the setjmp tests for mips.
2014-12-10 22:23:13 +00:00
Elliott Hughes
2ec131a5a4 am 1fd915b9: am fa465353: am a53c504e: Merge "Fix arm64 clone stack handling."
* commit '1fd915b9c1fcf3803383432ede29fc4d686fdb44':
  Fix arm64 clone stack handling.
2014-12-10 22:00:12 +00:00
Yabin Cui
99e74b8f1d am b9f67dc0: am 1eaf80d6: am 3337435e: Merge "Use machine/timespec.h to separate timespec definition."
* commit 'b9f67dc0f5081f39b204cc97502ba38486dbe2a2':
  Use machine/timespec.h to separate timespec definition.
2014-12-10 22:00:02 +00:00
Elliott Hughes
10b46ded07 am 114cee8c: am 0eaa218c: am 0952a554: Merge "Use the stmdb instead of str to save the fn/arg"
* commit '114cee8c6ed7c6b2abd5a22b3c1b36fba8601eae':
  Use the stmdb instead of str to save the fn/arg
2014-12-10 21:58:49 +00:00
Elliott Hughes
6ead436983 am f9ee8045: am 18779983: am 6a684524: Merge "Fix ptsname(3) and ttyname(3) to use TLS."
* commit 'f9ee804513f8bfddf4b6d4f08e15505c21918359':
  Fix ptsname(3) and ttyname(3) to use TLS.
2014-12-10 21:56:59 +00:00
Elliott Hughes
18b4ae073b am 1f8812b2: am 938c251e: am 3592743f: Merge "Move BSD stuff together in <sys/endian.h>."
* commit '1f8812b2aaf04e2891cabbcb3c55c37d3ee0a714':
  Move BSD stuff together in <sys/endian.h>.
2014-12-10 21:56:58 +00:00
Christopher Ferris
4173ebb42a am ca5edfb2: am fec60529: Merge "Fix missing symbol for debug malloc."
* commit 'ca5edfb23ba45176d1e33fba6f38e7834ef33301':
  Fix missing symbol for debug malloc.
2014-12-10 20:45:10 +00:00
Christopher Ferris
ca5edfb23b am fec60529: Merge "Fix missing symbol for debug malloc."
* commit 'fec605294e894fae1f1d5b59afe78af8fa84e4fa':
  Fix missing symbol for debug malloc.
2014-12-10 20:38:17 +00:00
Elliott Hughes
857a588274 am 38f1804b: am 3a49cfe3: Merge "Fix the setjmp tests for mips."
* commit '38f1804be1f8f27dc2debd69da9d2caf5ddb9cd1':
  Fix the setjmp tests for mips.
2014-12-10 20:16:24 +00:00
Elliott Hughes
38f1804be1 am 3a49cfe3: Merge "Fix the setjmp tests for mips."
* commit '3a49cfe3f2121039900ac8b0340b538b01da35c9':
  Fix the setjmp tests for mips.
2014-12-10 20:09:20 +00:00
Elliott Hughes
1fd915b9c1 am fa465353: am a53c504e: Merge "Fix arm64 clone stack handling."
* commit 'fa46535316a514e1335836bf065c2deddab1c4f3':
  Fix arm64 clone stack handling.
2014-12-10 19:58:04 +00:00
Elliott Hughes
fa46535316 am a53c504e: Merge "Fix arm64 clone stack handling."
* commit 'a53c504e0c6a19361fe3e66d7577682f6e501a4a':
  Fix arm64 clone stack handling.
2014-12-10 19:50:18 +00:00
Yabin Cui
b9f67dc0f5 am 1eaf80d6: am 3337435e: Merge "Use machine/timespec.h to separate timespec definition."
* commit '1eaf80d6805352cb74a4ffb392da4bfd17f4caed':
  Use machine/timespec.h to separate timespec definition.
2014-12-10 19:42:15 +00:00
Yabin Cui
1eaf80d680 am 3337435e: Merge "Use machine/timespec.h to separate timespec definition."
* commit '3337435ec8f45b5c04428c7d7d789020e41dfd36':
  Use machine/timespec.h to separate timespec definition.
2014-12-10 19:33:41 +00:00
Elliott Hughes
114cee8c6e am 0eaa218c: am 0952a554: Merge "Use the stmdb instead of str to save the fn/arg"
* commit '0eaa218c2f567af3ed51ac7538ef9179a9318821':
  Use the stmdb instead of str to save the fn/arg
2014-12-10 19:07:36 +00:00
Elliott Hughes
0eaa218c2f am 0952a554: Merge "Use the stmdb instead of str to save the fn/arg"
* commit '0952a5540e8bb6ceb74389601b9088398d585771':
  Use the stmdb instead of str to save the fn/arg
2014-12-10 18:59:48 +00:00
Elliott Hughes
994b1a406e am d0ee182b: am 4beb28d4: am 3f1c604c: Merge "<net/route.h> should include IPv6 too."
* commit 'd0ee182bcf42cbfd2493d177020a69455388b128':
  <net/route.h> should include IPv6 too.
2014-12-10 17:58:13 +00:00
Elliott Hughes
1e9ff46862 am 0098f245: am 92fd1774: am 7381e145: Merge "Sync <net/if_types.h> with upstream."
* commit '0098f245cf96038b40e73b09b80b0a00734056b7':
  Sync <net/if_types.h> with upstream.
2014-12-10 17:44:40 +00:00
Elliott Hughes
f9ee804513 am 18779983: am 6a684524: Merge "Fix ptsname(3) and ttyname(3) to use TLS."
* commit '187799839d317b3a6ee0f32a70a19ce64d41fac5':
  Fix ptsname(3) and ttyname(3) to use TLS.
2014-12-10 04:52:18 +00:00
Elliott Hughes
187799839d am 6a684524: Merge "Fix ptsname(3) and ttyname(3) to use TLS."
* commit '6a6845244cf9eb8fe21ecc012b7b45990adad7d8':
  Fix ptsname(3) and ttyname(3) to use TLS.
2014-12-10 04:44:14 +00:00
Elliott Hughes
1f8812b2aa am 938c251e: am 3592743f: Merge "Move BSD stuff together in <sys/endian.h>."
* commit '938c251e94cd6f38433ca5f6a1480cbaef2783d1':
  Move BSD stuff together in <sys/endian.h>.
2014-12-10 04:31:18 +00:00
Elliott Hughes
938c251e94 am 3592743f: Merge "Move BSD stuff together in <sys/endian.h>."
* commit '3592743f7191c69ae1fd2d7e01222bd380d93d3e':
  Move BSD stuff together in <sys/endian.h>.
2014-12-10 04:23:50 +00:00
Yabin Cui
d57478892e am c5132eb3: am e0601bd4: am 94926f8c: Merge "support _POSIX_REALTIME_SIGNALS"
* commit 'c5132eb361115cffc976e4757ba3d6c4693068b1':
  support _POSIX_REALTIME_SIGNALS
2014-12-09 23:49:14 +00:00
Yabin Cui
d1ca336ed8 am f3d576b1: am e906cf68: am b033761c: Merge "Change _POSIX_CPUTIME macro to make it compitable with glibc."
* commit 'f3d576b1e71d31313b16ff192e6c59a6bdc51d8a':
  Change _POSIX_CPUTIME macro to make it compitable with glibc.
2014-12-09 23:47:20 +00:00
Elliott Hughes
49a0bf9037 am 19d76add: am b430e6d6: am 5536044b: Merge "Simplify our endian.h implementation."
* commit '19d76adddc3486fd7691875c13fd468f13ea1b24':
  Simplify our endian.h implementation.
2014-12-09 23:46:03 +00:00
Elliott Hughes
8c9fed8355 am fc3d587f: am c63ddc8b: am aa0002de: Merge "Merge mips setjmp/longjmp family."
* commit 'fc3d587f9169ab501bbefb573dfc02279c3e5abc':
  Merge mips setjmp/longjmp family.
2014-12-09 23:45:04 +00:00
Elliott Hughes
8a3f30af2e am 5a103a5a: am 09416c9e: am 0b7d9d6f: Merge "Switch arch-mips64/include/machine to a symlink."
* commit '5a103a5a91be922601527ef139b6eba8918105cf':
  Switch arch-mips64/include/machine to a symlink.
2014-12-09 23:45:03 +00:00
Elliott Hughes
78903d4e1c am b5e1fa50: am 3cc8e0e9: am af829f2d: Merge "Use 64-bit units in the aarch64 setjmp implementation."
* commit 'b5e1fa5046ceb003d3b418751dc0705555de3043':
  Use 64-bit units in the aarch64 setjmp implementation.
2014-12-09 23:45:02 +00:00
Elliott Hughes
e38dd69211 am 408d8fa4: am 16c93b47: am 86d06dcc: Merge "Switch arm and arm64 over to the x86 style of jmpbuf."
* commit '408d8fa46457fc27048a00b0945de4bca1204042':
  Switch arm and arm64 over to the x86 style of jmpbuf.
2014-12-09 23:45:01 +00:00
Elliott Hughes
a27728b036 am b9abfd25: am 65187330: am 515a2ea1: Merge "Fix signal mask save/restore for x86-64."
* commit 'b9abfd25d5185bb0cfdee8d908a68f1adafc43bd':
  Fix signal mask save/restore for x86-64.
2014-12-09 23:45:00 +00:00
Elliott Hughes
6bf05a57c4 am 26609707: am b67ff7e3: am 734f0d64: Merge "Fix signal mask save/restore for arm64."
* commit '26609707082bf9c54be2f219e2827915610b45f6':
  Fix signal mask save/restore for arm64.
2014-12-09 23:44:58 +00:00
Elliott Hughes
d0ee182bcf am 4beb28d4: am 3f1c604c: Merge "<net/route.h> should include IPv6 too."
* commit '4beb28d427a61111e53b12cb78c39599ea1afd7b':
  <net/route.h> should include IPv6 too.
2014-12-09 23:29:19 +00:00
Elliott Hughes
4beb28d427 am 3f1c604c: Merge "<net/route.h> should include IPv6 too."
* commit '3f1c604c9df459f5baecfdc04cbe8ecda07b70eb':
  <net/route.h> should include IPv6 too.
2014-12-09 23:25:25 +00:00
Elliott Hughes
0098f245cf am 92fd1774: am 7381e145: Merge "Sync <net/if_types.h> with upstream."
* commit '92fd17748376523e212dae0e606522b67d2c2883':
  Sync <net/if_types.h> with upstream.
2014-12-09 23:20:59 +00:00
Elliott Hughes
92fd177483 am 7381e145: Merge "Sync <net/if_types.h> with upstream."
* commit '7381e14521fcdc4e32ca512230793ab2256726bb':
  Sync <net/if_types.h> with upstream.
2014-12-09 23:15:15 +00:00
Yabin Cui
c5132eb361 am e0601bd4: am 94926f8c: Merge "support _POSIX_REALTIME_SIGNALS"
* commit 'e0601bd49f04e5f248be4ebd976f73b1cb0b5023':
  support _POSIX_REALTIME_SIGNALS
2014-12-09 22:10:11 +00:00
Yabin Cui
e0601bd49f am 94926f8c: Merge "support _POSIX_REALTIME_SIGNALS"
* commit '94926f8cfa0adf37c4e19256ade7261a97f72e51':
  support _POSIX_REALTIME_SIGNALS
2014-12-09 20:17:05 +00:00
Yabin Cui
f3d576b1e7 am e906cf68: am b033761c: Merge "Change _POSIX_CPUTIME macro to make it compitable with glibc."
* commit 'e906cf68f07ad8b64ec594a1e4115f5bc261caab':
  Change _POSIX_CPUTIME macro to make it compitable with glibc.
2014-12-09 18:06:13 +00:00
Yabin Cui
e906cf68f0 am b033761c: Merge "Change _POSIX_CPUTIME macro to make it compitable with glibc."
* commit 'b033761cbf0e79ade9a8c956c2e63b42ee838183':
  Change _POSIX_CPUTIME macro to make it compitable with glibc.
2014-12-09 17:58:28 +00:00
Elliott Hughes
19d76adddc am b430e6d6: am 5536044b: Merge "Simplify our endian.h implementation."
* commit 'b430e6d6d21d983b62338950b7c7750c76691068':
  Simplify our endian.h implementation.
2014-12-09 15:03:54 +00:00
Elliott Hughes
fc3d587f91 am c63ddc8b: am aa0002de: Merge "Merge mips setjmp/longjmp family."
* commit 'c63ddc8b8c793c732246cac9b4c95b9c1534ca12':
  Merge mips setjmp/longjmp family.
2014-12-09 14:41:13 +00:00
Elliott Hughes
5a103a5a91 am 09416c9e: am 0b7d9d6f: Merge "Switch arch-mips64/include/machine to a symlink."
* commit '09416c9ec602f8385ad38af4ac0079b9385fbfbc':
  Switch arch-mips64/include/machine to a symlink.
2014-12-09 14:41:12 +00:00
Elliott Hughes
b5e1fa5046 am 3cc8e0e9: am af829f2d: Merge "Use 64-bit units in the aarch64 setjmp implementation."
* commit '3cc8e0e9d5b79e78ec3f2f636e0f527ec8a58519':
  Use 64-bit units in the aarch64 setjmp implementation.
2014-12-09 14:41:11 +00:00
Elliott Hughes
408d8fa464 am 16c93b47: am 86d06dcc: Merge "Switch arm and arm64 over to the x86 style of jmpbuf."
* commit '16c93b47646e2ea5c3e09719bf1698363833676f':
  Switch arm and arm64 over to the x86 style of jmpbuf.
2014-12-09 14:41:10 +00:00
Elliott Hughes
b9abfd25d5 am 65187330: am 515a2ea1: Merge "Fix signal mask save/restore for x86-64."
* commit '6518733033ab076df32564ecb1a782313c993a86':
  Fix signal mask save/restore for x86-64.
2014-12-09 14:41:05 +00:00
Elliott Hughes
2660970708 am b67ff7e3: am 734f0d64: Merge "Fix signal mask save/restore for arm64."
* commit 'b67ff7e37eac39bdbc06478a545b507462fdcee9':
  Fix signal mask save/restore for arm64.
2014-12-09 14:41:04 +00:00
Elliott Hughes
b430e6d6d2 am 5536044b: Merge "Simplify our endian.h implementation."
* commit '5536044b7896285729cdb39ee0489265a42697f5':
  Simplify our endian.h implementation.
2014-12-09 05:09:13 +00:00
Elliott Hughes
c63ddc8b8c am aa0002de: Merge "Merge mips setjmp/longjmp family."
* commit 'aa0002de89ee4753bce6e4d714e5d4cc4d9709eb':
  Merge mips setjmp/longjmp family.
2014-12-09 01:30:42 +00:00
Elliott Hughes
09416c9ec6 am 0b7d9d6f: Merge "Switch arch-mips64/include/machine to a symlink."
* commit '0b7d9d6f37d33a155a22efbafa911a5de54f7b65':
  Switch arch-mips64/include/machine to a symlink.
2014-12-09 00:56:54 +00:00
Elliott Hughes
304835cb05 am 6bad956e: am c7450f77: Restore symbols from <arpa/nameser.h>.
* commit '6bad956eade0ad7c9b0d4aaa7d3583f70fca97fd':
  Restore symbols from <arpa/nameser.h>.
2014-12-09 00:54:24 +00:00
Elliott Hughes
3cc8e0e9d5 am af829f2d: Merge "Use 64-bit units in the aarch64 setjmp implementation."
* commit 'af829f2de9432dc817eafc2ed2aa26cfb1e0d93e':
  Use 64-bit units in the aarch64 setjmp implementation.
2014-12-09 00:46:55 +00:00
Elliott Hughes
16c93b4764 am 86d06dcc: Merge "Switch arm and arm64 over to the x86 style of jmpbuf."
* commit '86d06dcc74f1804a1d00b4c1bc420105bba49df7':
  Switch arm and arm64 over to the x86 style of jmpbuf.
2014-12-09 00:25:53 +00:00
Elliott Hughes
6518733033 am 515a2ea1: Merge "Fix signal mask save/restore for x86-64."
* commit '515a2ea1d575d96e774ba08f59a14ceefdd125c3':
  Fix signal mask save/restore for x86-64.
2014-12-09 00:08:09 +00:00
Elliott Hughes
b67ff7e37e am 734f0d64: Merge "Fix signal mask save/restore for arm64."
* commit '734f0d645e461a1061c879e5bd964592d3f326ee':
  Fix signal mask save/restore for arm64.
2014-12-09 00:08:08 +00:00
Elliott Hughes
6bad956ead am c7450f77: Restore symbols from <arpa/nameser.h>.
* commit 'c7450f7738b0d1edf832fc881ef63546d45428cb':
  Restore symbols from <arpa/nameser.h>.
2014-12-08 19:09:42 +00:00
Elliott Hughes
82a67e63b6 am 217f77df: am ae141c52: am 7d3a99b1: Merge "Clean up the x86-64 and x86 setjmp families."
* commit '217f77df4816a6f66327fc0db8ce90546ca3e4dc':
  Clean up the x86-64 and x86 setjmp families.
2014-12-06 06:42:11 +00:00
Elliott Hughes
217f77df48 am ae141c52: am 7d3a99b1: Merge "Clean up the x86-64 and x86 setjmp families."
* commit 'ae141c526f8075f722d16ab6382f94db3a20d46f':
  Clean up the x86-64 and x86 setjmp families.
2014-12-06 06:35:45 +00:00
Elliott Hughes
ae141c526f am 7d3a99b1: Merge "Clean up the x86-64 and x86 setjmp families."
* commit '7d3a99b1bb06c3a261252680b4c3295cbcd77894':
  Clean up the x86-64 and x86 setjmp families.
2014-12-06 06:28:49 +00:00
Elliott Hughes
d9a82af25a am 03f865f0: am 9156e864: am 289f44a4: Merge "Clean up arm setjmp family."
* commit '03f865f03720336996b53393e13ae70787c9cedb':
  Clean up arm setjmp family.
2014-12-06 00:08:26 +00:00
Elliott Hughes
03f865f037 am 9156e864: am 289f44a4: Merge "Clean up arm setjmp family."
* commit '9156e86466d8c9430608f26f1b28aab66e7ee7a1':
  Clean up arm setjmp family.
2014-12-06 00:04:05 +00:00
Elliott Hughes
9156e86466 am 289f44a4: Merge "Clean up arm setjmp family."
* commit '289f44a459b6b28f8e1bb7eef165699129878c85':
  Clean up arm setjmp family.
2014-12-06 00:00:28 +00:00
Elliott Hughes
640cb6de14 am 8c838ec5: am d276faae: am 872da6d3: Merge "Clean up the arm64 setjmp."
* commit '8c838ec5f3458b15a608033c352ecf5c69c6f073':
  Clean up the arm64 setjmp.
2014-12-05 23:27:05 +00:00
Elliott Hughes
8c838ec5f3 am d276faae: am 872da6d3: Merge "Clean up the arm64 setjmp."
* commit 'd276faae7c82cd139e984275b325edc4dbe313f3':
  Clean up the arm64 setjmp.
2014-12-05 23:19:08 +00:00
Elliott Hughes
d276faae7c am 872da6d3: Merge "Clean up the arm64 setjmp."
* commit '872da6d39c3484d4dca0cb181d456587cdaa1acf':
  Clean up the arm64 setjmp.
2014-12-05 23:12:31 +00:00
Tao Bao
43c60afc19 am 65907a22: am cdf9ef0e: am 24214067: Merge "Add cache related sysconf queries"
* commit '65907a22d80db587eb43e212a27565b9f0ce8a77':
  Add cache related sysconf queries
2014-12-05 18:29:09 +00:00
Tao Bao
65907a22d8 am cdf9ef0e: am 24214067: Merge "Add cache related sysconf queries"
* commit 'cdf9ef0e55480d74a1b99d942c37b66f2a3f1cf5':
  Add cache related sysconf queries
2014-12-05 18:23:29 +00:00
Tao Bao
cdf9ef0e55 am 24214067: Merge "Add cache related sysconf queries"
* commit '2421406711e0b2e214234add79c842bbb2c07ca1':
  Add cache related sysconf queries
2014-12-05 18:16:32 +00:00
Elliott Hughes
09897ab73b am 256454b8: am 458d0f1a: am 9e08a7bb: Merge "Restore symbols from <arpa/nameser.h>."
* commit '256454b83b13c04960a829b05e223c3e120b22d4':
  Restore symbols from <arpa/nameser.h>.
2014-12-05 00:15:47 +00:00
Yabin Cui
3f9d41e169 am 9c81c996: am 59932806: am 295bc2b9: Merge "implement posix_madvise"
* commit '9c81c996d9fe0750c35bb4aac3c11baf5efbd7e6':
  implement posix_madvise
2014-12-05 00:15:46 +00:00
Elliott Hughes
e15f109eca am ecabc635: am d5320228: am e3e3feaf: Merge "Make the missing symbols script more useful."
* commit 'ecabc635ed0e8429dfd716849b6ca09544f40049':
  Make the missing symbols script more useful.
2014-12-05 00:15:44 +00:00
Elliott Hughes
256454b83b am 458d0f1a: am 9e08a7bb: Merge "Restore symbols from <arpa/nameser.h>."
* commit '458d0f1a116776a9f83a19285a954983aea162dd':
  Restore symbols from <arpa/nameser.h>.
2014-12-04 22:45:01 +00:00
Yabin Cui
9c81c996d9 am 59932806: am 295bc2b9: Merge "implement posix_madvise"
* commit '599328061c85f07079a9fd647db1dbb127f88854':
  implement posix_madvise
2014-12-04 22:45:00 +00:00
Elliott Hughes
ecabc635ed am d5320228: am e3e3feaf: Merge "Make the missing symbols script more useful."
* commit 'd532022864768e205997254d9177bc6b59636a84':
  Make the missing symbols script more useful.
2014-12-04 22:44:57 +00:00
Elliott Hughes
458d0f1a11 am 9e08a7bb: Merge "Restore symbols from <arpa/nameser.h>."
* commit '9e08a7bbb85179da9ef56ee4bdc87078bfe5c30d':
  Restore symbols from <arpa/nameser.h>.
2014-12-04 21:45:35 +00:00
Elliott Hughes
c7450f7738 Restore symbols from <arpa/nameser.h>.
Bug: 18627252
Bug: https://code.google.com/p/android/issues/detail?id=81690

(cherry picked from commit 42804c4b30)

Change-Id: Idd33578b31bba9a4afdfd15c7b193d10974aea90
2014-12-04 13:45:22 -08:00
Yabin Cui
599328061c am 295bc2b9: Merge "implement posix_madvise"
* commit '295bc2b97041c5b06465effe1c60138a485495d5':
  implement posix_madvise
2014-12-04 21:37:49 +00:00
Elliott Hughes
d532022864 am e3e3feaf: Merge "Make the missing symbols script more useful."
* commit 'e3e3feaf917c725c9c1194c930c8f11216d09ab1':
  Make the missing symbols script more useful.
2014-12-04 20:10:30 +00:00
Elliott Hughes
3a82568ef7 am f0435506: am 18a470e4: am 230005c4: Merge "Code using neon uses ARCH_ARM_HAVE_NEON."
* commit 'f0435506dad4cdf10154b2c042c0d8d46172036f':
  Code using neon uses ARCH_ARM_HAVE_NEON.
2014-12-04 20:05:06 +00:00
Elliott Hughes
0adfc4ac5b am 50ebeec8: am 509317a4: am a18af83b: Merge "Remove __ARM_HAVE_VFP."
* commit '50ebeec8b13e1a898d0b7ddda752379816ae563b':
  Remove __ARM_HAVE_VFP.
2014-12-04 20:05:01 +00:00
Elliott Hughes
96d1793759 am 28764780: am c02d6add: am 6cbc56b8: Merge "Implement <pty.h>."
* commit '28764780742d437dab54cdd45fd9bce56a812aac':
  Implement <pty.h>.
2014-12-04 20:04:59 +00:00
Elliott Hughes
f0435506da am 18a470e4: am 230005c4: Merge "Code using neon uses ARCH_ARM_HAVE_NEON."
* commit '18a470e435508a20b9f32a8d516a0da5fc361c81':
  Code using neon uses ARCH_ARM_HAVE_NEON.
2014-12-04 19:51:42 +00:00
Elliott Hughes
50ebeec8b1 am 509317a4: am a18af83b: Merge "Remove __ARM_HAVE_VFP."
* commit '509317a4758fc7177ca2e7ca1151914cd7701268':
  Remove __ARM_HAVE_VFP.
2014-12-04 19:51:41 +00:00
Elliott Hughes
2876478074 am c02d6add: am 6cbc56b8: Merge "Implement <pty.h>."
* commit 'c02d6add2d12ada65cc88db724921d23be6e3310':
  Implement <pty.h>.
2014-12-04 19:51:40 +00:00
Yabin Cui
0d13c7a1a9 am d7567706: am 0b2aabde: am 1898967e: Merge "change argument type in madvise"
* commit 'd7567706813d33f38e7869769bc8f6e706aee3d5':
  change argument type in madvise
2014-12-04 16:17:19 +00:00
Dmitriy Ivanov
052a834588 am 0c44172f: am f983286e: am 6a447eef: Merge "Fix warning: overriding commands for target"
* commit '0c44172f243ffb163b36aa604a8b3172e0f35909':
  Fix warning: overriding commands for target
2014-12-04 16:17:18 +00:00
Elliott Hughes
18a470e435 am 230005c4: Merge "Code using neon uses ARCH_ARM_HAVE_NEON."
* commit '230005c4bd3910ef974694f88d04e6f6a5a540b4':
  Code using neon uses ARCH_ARM_HAVE_NEON.
2014-12-04 15:16:36 +00:00
Elliott Hughes
509317a475 am a18af83b: Merge "Remove __ARM_HAVE_VFP."
* commit 'a18af83bc1bab330f2558451ffcd61bb31b8f147':
  Remove __ARM_HAVE_VFP.
2014-12-04 15:16:35 +00:00
Elliott Hughes
c02d6add2d am 6cbc56b8: Merge "Implement <pty.h>."
* commit '6cbc56b84be72b3f01c23b865e39f61a01ead895':
  Implement <pty.h>.
2014-12-04 15:16:33 +00:00
Yabin Cui
d756770681 am 0b2aabde: am 1898967e: Merge "change argument type in madvise"
* commit '0b2aabde32db99cffd4d06cda614edeac1112e37':
  change argument type in madvise
2014-12-04 09:22:07 +00:00
Dmitriy Ivanov
0c44172f24 am f983286e: am 6a447eef: Merge "Fix warning: overriding commands for target"
* commit 'f983286eedf71a6cef67ba6ba88c6ea0f19717f5':
  Fix warning: overriding commands for target
2014-12-04 09:22:01 +00:00
Elliott Hughes
d8e3a199a1 am af8d8f2c: resolved conflicts for merge of 27d276f3 to lmp-mr1-dev-plus-aosp
* commit 'af8d8f2c88bcf78cb3c94d241cf412d65f5ed55e':
  Avoid pathological behavior in OpenBSD's fread.
2014-12-03 20:44:17 +00:00
Elliott Hughes
af8d8f2c88 resolved conflicts for merge of 27d276f3 to lmp-mr1-dev-plus-aosp
Change-Id: I905890e17f90ca5e2b73a61176da6f6a36c0d345
2014-12-03 12:37:34 -08:00
Yabin Cui
0b2aabde32 am 1898967e: Merge "change argument type in madvise"
* commit '1898967e41c12948e363b9a442f65965a884cf2d':
  change argument type in madvise
2014-12-03 20:03:18 +00:00
Dmitriy Ivanov
f983286eed am 6a447eef: Merge "Fix warning: overriding commands for target"
* commit '6a447eeffca19a1aa4035f50c19ef9152392ed27':
  Fix warning: overriding commands for target
2014-12-03 19:01:25 +00:00
Elliott Hughes
b858ba5846 am 308c4d3f: am b06e125c: am 91a61f77: Merge "Switch x86 and x86-64 to __builtin_bswap*."
* commit '308c4d3fb1641ffc1e1c42add1b20c2f98cb5022':
  Switch x86 and x86-64 to __builtin_bswap*.
2014-12-03 17:39:16 +00:00
Elliott Hughes
3fa1da6597 am 85591636: am 58543de7: am 244299f4: Merge "Switch aarch64 to __builtin_bswap16."
* commit '855916362cfe0ef935e086fe550251805b01ff4f':
  Switch aarch64 to __builtin_bswap16.
2014-12-03 17:39:15 +00:00
Dmitriy Ivanov
78ef86160e am 44ea65b3: am 57eed1ab: am 8408d7ef: Merge "Fix soinfo_unload"
* commit '44ea65b3959065a260b1deddf7ce2dd0ca241e72':
  Fix soinfo_unload
2014-12-03 17:39:14 +00:00
Elliott Hughes
308c4d3fb1 am b06e125c: am 91a61f77: Merge "Switch x86 and x86-64 to __builtin_bswap*."
* commit 'b06e125c01ff30cc3835d6c8c025e256a82356bf':
  Switch x86 and x86-64 to __builtin_bswap*.
2014-12-03 17:31:35 +00:00
Elliott Hughes
855916362c am 58543de7: am 244299f4: Merge "Switch aarch64 to __builtin_bswap16."
* commit '58543de7215df81859e8ada22210773d4ab0ea82':
  Switch aarch64 to __builtin_bswap16.
2014-12-03 17:31:34 +00:00
Dmitriy Ivanov
44ea65b395 am 57eed1ab: am 8408d7ef: Merge "Fix soinfo_unload"
* commit '57eed1ab38dc2bcc458418b57f194efda055a50b':
  Fix soinfo_unload
2014-12-03 17:31:33 +00:00
Elliott Hughes
b06e125c01 am 91a61f77: Merge "Switch x86 and x86-64 to __builtin_bswap*."
* commit '91a61f77e203bf519c28f9331b9c8db731869499':
  Switch x86 and x86-64 to __builtin_bswap*.
2014-12-03 17:23:29 +00:00
Elliott Hughes
58543de721 am 244299f4: Merge "Switch aarch64 to __builtin_bswap16."
* commit '244299f4e0b58e48b5fdb15fc10a7327e0c32cf9':
  Switch aarch64 to __builtin_bswap16.
2014-12-03 17:23:28 +00:00
Dmitriy Ivanov
57eed1ab38 am 8408d7ef: Merge "Fix soinfo_unload"
* commit '8408d7efacd83c1813501954d3e199b63f350778':
  Fix soinfo_unload
2014-12-03 17:23:27 +00:00
Elliott Hughes
4c7bc66f2a am 1c27acc3: am 5f48eda7: am baf792bf: Merge "Remove __ARM_HAVE_HALFWORD_MULTIPLY."
* commit '1c27acc32cb96ed67bb1be59799fcecfc469a465':
  Remove __ARM_HAVE_HALFWORD_MULTIPLY.
2014-12-03 02:52:37 +00:00
Elliott Hughes
79623f7e9e am f6116c5e: am 81b5f9f4: am 6bec3484: Merge "Remove __ARM_HAVE_LDREXD."
* commit 'f6116c5ea155f3135ba49c09b725dea3458eadf9':
  Remove __ARM_HAVE_LDREXD.
2014-12-03 02:52:36 +00:00
Elliott Hughes
8a2f97d738 am 39bf9593: am 52b3cbae: am f840cefa: Merge "Kill <machine/exec.h>."
* commit '39bf9593c49c1a10e2163a32212ea9342c05841b':
  Kill <machine/exec.h>.
2014-12-03 02:52:35 +00:00
Elliott Hughes
1c27acc32c am 5f48eda7: am baf792bf: Merge "Remove __ARM_HAVE_HALFWORD_MULTIPLY."
* commit '5f48eda760e563e39231b1a0eaba086a5c0403a2':
  Remove __ARM_HAVE_HALFWORD_MULTIPLY.
2014-12-03 02:47:47 +00:00
Elliott Hughes
f6116c5ea1 am 81b5f9f4: am 6bec3484: Merge "Remove __ARM_HAVE_LDREXD."
* commit '81b5f9f42f037690be5fbcb9501bd37e1f8bb3c1':
  Remove __ARM_HAVE_LDREXD.
2014-12-03 02:47:46 +00:00
Elliott Hughes
39bf9593c4 am 52b3cbae: am f840cefa: Merge "Kill <machine/exec.h>."
* commit '52b3cbae58e9069eebb09b913cf51a3a2781813d':
  Kill <machine/exec.h>.
2014-12-03 02:47:45 +00:00
Elliott Hughes
5f48eda760 am baf792bf: Merge "Remove __ARM_HAVE_HALFWORD_MULTIPLY."
* commit 'baf792bff86f9be6f631eece17d9d104cfe54b41':
  Remove __ARM_HAVE_HALFWORD_MULTIPLY.
2014-12-03 02:37:35 +00:00
Elliott Hughes
81b5f9f42f am 6bec3484: Merge "Remove __ARM_HAVE_LDREXD."
* commit '6bec3484ee1e90662c8c5e52c71fcdc430a7b619':
  Remove __ARM_HAVE_LDREXD.
2014-12-03 02:37:34 +00:00
Elliott Hughes
52b3cbae58 am f840cefa: Merge "Kill <machine/exec.h>."
* commit 'f840cefaea5e482e886c81a6b56648399ceb2568':
  Kill <machine/exec.h>.
2014-12-03 02:37:33 +00:00
Dmitriy Ivanov
18fa55188c am 70a2aea6: am ad8e339a: am 6995c1dc: Merge "Extract bionic-prepare-run-on-host to inc file."
* commit '70a2aea6e8df5e5c24b0d83c0a3a2ff34f43e718':
  Extract bionic-prepare-run-on-host to inc file.
2014-12-03 02:21:16 +00:00
Elliott Hughes
84fb1f7ac8 am 66f7b275: Merge "Remove unnecessary #undefs from AOSP." into lmp-mr1-dev-plus-aosp
* commit '66f7b2758f909b981503ab228e92707f8c6b4ebc':
  Remove unnecessary #undefs from AOSP.
2014-12-03 00:30:51 +00:00
Elliott Hughes
16716ba940 am c28e2797: am cc7e28f1: am 432f763c: Merge "Avoid pathological behavior in OpenBSD\'s fread."
* commit 'c28e2797a78f92ba49999710fa5a1cd85b27badc':
  Avoid pathological behavior in OpenBSD's fread.
2014-12-03 00:30:45 +00:00
Dmitriy Ivanov
df206647a3 am 7ef5d8b8: am 5811e3fc: am 5cd127d3: Merge "Fix mips build"
* commit '7ef5d8b8454443e79f109a5f83ab40e4c602b88d':
  Fix mips build
2014-12-03 00:30:15 +00:00
Dmitriy Ivanov
29bf489217 am 20ce0b5b: am 3a43e9f5: am 8dd25905: Merge "Create /system/lib(64)? symlinks for host tests."
* commit '20ce0b5b5d666dd9d0ff41375623bde22670af7b':
  Create /system/lib(64)? symlinks for host tests.
2014-12-03 00:30:14 +00:00
Yabin Cui
9a4af8123a am 864ba276: am 5fea4532: am 4e7d66dd: Merge "Use mmap to create the pthread_internal_t."
* commit '864ba276f96b23835938cd0875cc5fe682ff6b6d':
  Use mmap to create the pthread_internal_t.
2014-12-03 00:30:01 +00:00
Dmitriy Ivanov
c652606558 am e92b30af: am 8d94e2e0: am 291dbf65: Merge "Count references for groups instead of instances"
* commit 'e92b30af6752104f86c564ccec66fc1d0f5be475':
  Count references for groups instead of instances
2014-12-03 00:30:00 +00:00
Dmitriy Ivanov
70a2aea6e8 am ad8e339a: am 6995c1dc: Merge "Extract bionic-prepare-run-on-host to inc file."
* commit 'ad8e339a565af518bcda51e5ebbc536aa63de9e3':
  Extract bionic-prepare-run-on-host to inc file.
2014-12-03 00:12:54 +00:00
Dmitriy Ivanov
ad8e339a56 am 6995c1dc: Merge "Extract bionic-prepare-run-on-host to inc file."
* commit '6995c1dcb5a9ad77a54d950fc24f5aba00909b69':
  Extract bionic-prepare-run-on-host to inc file.
2014-12-03 00:07:38 +00:00
Elliott Hughes
66f7b2758f Merge "Remove unnecessary #undefs from AOSP." into lmp-mr1-dev-plus-aosp 2014-12-02 23:00:37 +00:00
Elliott Hughes
27d276f3a6 Avoid pathological behavior in OpenBSD's fread.
(cherry picked from commit 20841a137b)

Bug: https://code.google.com/p/android/issues/detail?id=81155
Bug: 18556607
Change-Id: Ibdfebc20dce4c34ad565014523c9b074e90ea665
2014-12-02 14:54:52 -08:00
Elliott Hughes
6c1e3f6e56 Remove unnecessary #undefs from AOSP.
This is a manual revert of 111461aaae.
git revert does the wrong thing because that patch shares lines (that we
want to keep) with 168667c972 and git
revert just removes them.

Change-Id: I83ac8c95e5c90a4137b7742a9b7536e1627f1ac7
2014-12-02 14:50:20 -08:00
Elliott Hughes
c28e2797a7 am cc7e28f1: am 432f763c: Merge "Avoid pathological behavior in OpenBSD\'s fread."
* commit 'cc7e28f111bfa5cd859ab7ac4eac8f98d9f10af3':
  Avoid pathological behavior in OpenBSD's fread.
2014-12-02 22:49:36 +00:00
Elliott Hughes
cc7e28f111 am 432f763c: Merge "Avoid pathological behavior in OpenBSD\'s fread."
* commit '432f763c0c370870b653537342aff87fac862d97':
  Avoid pathological behavior in OpenBSD's fread.
2014-12-02 22:45:07 +00:00
Dmitriy Ivanov
7ef5d8b845 am 5811e3fc: am 5cd127d3: Merge "Fix mips build"
* commit '5811e3fce16d2394654447ae9ee504149b7e1000':
  Fix mips build
2014-12-02 22:13:59 +00:00
Dmitriy Ivanov
20ce0b5b5d am 3a43e9f5: am 8dd25905: Merge "Create /system/lib(64)? symlinks for host tests."
* commit '3a43e9f5dbc129bdac5ca3397699a5c94dfd131d':
  Create /system/lib(64)? symlinks for host tests.
2014-12-02 22:13:58 +00:00
Yabin Cui
864ba276f9 am 5fea4532: am 4e7d66dd: Merge "Use mmap to create the pthread_internal_t."
* commit '5fea45328f7a596ab2040c8ea2fe227cf1752a07':
  Use mmap to create the pthread_internal_t.
2014-12-02 22:00:39 +00:00
Dmitriy Ivanov
e92b30af67 am 8d94e2e0: am 291dbf65: Merge "Count references for groups instead of instances"
* commit '8d94e2e0d7c7c4a5cc8c73d424c499db333713c8':
  Count references for groups instead of instances
2014-12-02 22:00:37 +00:00
Dmitriy Ivanov
5811e3fce1 am 5cd127d3: Merge "Fix mips build"
* commit '5cd127d3aa4a2f225be202af01581838fdd3c721':
  Fix mips build
2014-12-02 21:42:57 +00:00
Dmitriy Ivanov
3a43e9f5db am 8dd25905: Merge "Create /system/lib(64)? symlinks for host tests."
* commit '8dd2590549ac85b2fe20329842cf385fb3ed5c95':
  Create /system/lib(64)? symlinks for host tests.
2014-12-02 21:35:11 +00:00
Yabin Cui
5fea45328f am 4e7d66dd: Merge "Use mmap to create the pthread_internal_t."
* commit '4e7d66ddb55a9d5f23ae80b6e6569733adf9262a':
  Use mmap to create the pthread_internal_t.
2014-12-02 19:53:14 +00:00
Dmitriy Ivanov
8d94e2e0d7 am 291dbf65: Merge "Count references for groups instead of instances"
* commit '291dbf65cadeccbb33e60b33fbe9f5f48c8763ff':
  Count references for groups instead of instances
2014-12-02 19:36:09 +00:00
Elliott Hughes
a271528462 am 12b7dd09: am 152e978f: Merge "Put stdin/stdout/stderr symbols in place." into lmp-mr1-dev
* commit '12b7dd0900a6760a47c765decfc6cdec75883d35':
  Put stdin/stdout/stderr symbols in place.
2014-12-02 19:35:04 +00:00
Elliott Hughes
12b7dd0900 am 152e978f: Merge "Put stdin/stdout/stderr symbols in place." into lmp-mr1-dev
* commit '152e978f73fc6cd37d0d82de69f1cf8134b34b90':
  Put stdin/stdout/stderr symbols in place.
2014-12-02 19:16:51 +00:00
Yabin Cui
42e664f763 am de88381c: am b2ec9cb2: am 46d0b81a: Merge "restore sigprocmask in setjmp/longjmp test."
* commit 'de88381c19ad9a23b5d26eb51b7591a7e7e6be50':
  restore sigprocmask in setjmp/longjmp test.
2014-12-02 19:05:28 +00:00
Elliott Hughes
152e978f73 Merge "Put stdin/stdout/stderr symbols in place." into lmp-mr1-dev 2014-12-02 18:56:50 +00:00
Yabin Cui
de88381c19 am b2ec9cb2: am 46d0b81a: Merge "restore sigprocmask in setjmp/longjmp test."
* commit 'b2ec9cb264ed1aadd1a2d938785d28ceb9fc16c4':
  restore sigprocmask in setjmp/longjmp test.
2014-12-02 18:56:12 +00:00
Yabin Cui
b2ec9cb264 am 46d0b81a: Merge "restore sigprocmask in setjmp/longjmp test."
* commit '46d0b81a9465bf74fe44a881365c332dc6173f2f':
  restore sigprocmask in setjmp/longjmp test.
2014-12-02 18:49:30 +00:00
Dmitriy Ivanov
bf46bdef96 am 15121a42: am 611fddc7: am 224fb614: Merge "Resolve "unused DT entry" warnings for DT_VERNEED and DT_VERNEEDNUM."
* commit '15121a42c8882d073307a4853032750185cbb7ae':
  Resolve "unused DT entry" warnings for DT_VERNEED and DT_VERNEEDNUM.
2014-12-02 17:56:03 +00:00
Dmitriy Ivanov
15121a42c8 am 611fddc7: am 224fb614: Merge "Resolve "unused DT entry" warnings for DT_VERNEED and DT_VERNEEDNUM."
* commit '611fddc73eec4ad33739b6160e84e633984499b7':
  Resolve "unused DT entry" warnings for DT_VERNEED and DT_VERNEEDNUM.
2014-12-02 17:49:27 +00:00
Dmitriy Ivanov
611fddc73e am 224fb614: Merge "Resolve "unused DT entry" warnings for DT_VERNEED and DT_VERNEEDNUM."
* commit '224fb6144aaba529aef1554f7454df523de1ab38':
  Resolve "unused DT entry" warnings for DT_VERNEED and DT_VERNEEDNUM.
2014-12-02 17:41:54 +00:00
Lorenzo Colitti
91f6f25a2a am 8a94b864: am e5477f83: Fail queries fast if no DNS servers are configured.
* commit '8a94b864bf0b87e51aa32a856c847f11cd19047b':
  Fail queries fast if no DNS servers are configured.
2014-12-02 07:07:42 +00:00
Lorenzo Colitti
8a94b864bf am e5477f83: Fail queries fast if no DNS servers are configured.
* commit 'e5477f83b0a639b86d8cbe710f25d9808a8f72af':
  Fail queries fast if no DNS servers are configured.
2014-12-02 07:00:47 +00:00
Christopher Ferris
b8e52fb431 am a2b36226: am 45df6fb5: am 8374a548: Merge "Specify .cpu cortex-a15"
* commit 'a2b36226c3a90cf780e260e8cf5f52e44360e07d':
  Specify .cpu cortex-a15
2014-12-02 06:46:44 +00:00
Elliott Hughes
111461aaae Put stdin/stdout/stderr symbols in place.
To help with future binary compatibility.

Bug: 18553223
Change-Id: Ia8103b4f189c18528b11948ac9e520f61b9ccc0e
2014-12-01 21:27:59 -08:00
Christopher Ferris
a2b36226c3 am 45df6fb5: am 8374a548: Merge "Specify .cpu cortex-a15"
* commit '45df6fb5f65ee162488d9c88fa7b4125b033e0e2':
  Specify .cpu cortex-a15
2014-12-02 02:44:33 +00:00
Christopher Ferris
45df6fb5f6 am 8374a548: Merge "Specify .cpu cortex-a15"
* commit '8374a5481394e89c46ecc0b7cf60381637edaaa5':
  Specify .cpu cortex-a15
2014-12-02 02:37:16 +00:00
Elliott Hughes
ca0580f6e5 am 97a96aee: am 4f16aa9a: am ec544e1b: Merge "Build our benchmarks against glibc too."
* commit '97a96aee6f15bf46bc125d388db2762ed0c42946':
  Build our benchmarks against glibc too.
2014-12-02 01:36:12 +00:00
Elliott Hughes
97a96aee6f am 4f16aa9a: am ec544e1b: Merge "Build our benchmarks against glibc too."
* commit '4f16aa9aec9705a74c7d518614c1f16e0cd65c5d':
  Build our benchmarks against glibc too.
2014-12-02 01:25:20 +00:00
Elliott Hughes
4f16aa9aec am ec544e1b: Merge "Build our benchmarks against glibc too."
* commit 'ec544e1b35cadaefd833b441dbec9c44adff6ade':
  Build our benchmarks against glibc too.
2014-12-02 01:03:34 +00:00
Elliott Hughes
abe9b1c17e am caa3593b: am bfcb37c6: am 076f69d8: Merge "Benchmark fread/fwrite both buffered and unbuffered."
* commit 'caa3593b122512116f2ad7726b90832e31b5c3f9':
  Benchmark fread/fwrite both buffered and unbuffered.
2014-12-01 22:00:33 +00:00
Elliott Hughes
212289cc94 am 6d11f116: am 8a400073: am 6f9d7444: Merge "Fix running the bionic benchmarks on the host."
* commit '6d11f116e78955c4c4851c1a59139cfb1266c7c3':
  Fix running the bionic benchmarks on the host.
2014-12-01 22:00:32 +00:00
Elliott Hughes
caa3593b12 am bfcb37c6: am 076f69d8: Merge "Benchmark fread/fwrite both buffered and unbuffered."
* commit 'bfcb37c608344b3b1f1981084910eb07e87f882d':
  Benchmark fread/fwrite both buffered and unbuffered.
2014-12-01 21:52:41 +00:00
Elliott Hughes
6d11f116e7 am 8a400073: am 6f9d7444: Merge "Fix running the bionic benchmarks on the host."
* commit '8a400073bf1c7d328366055f2d2a3401fd22530f':
  Fix running the bionic benchmarks on the host.
2014-12-01 21:52:40 +00:00
Elliott Hughes
bfcb37c608 am 076f69d8: Merge "Benchmark fread/fwrite both buffered and unbuffered."
* commit '076f69d828cfa5d30360e1dd2f24acd751d4a461':
  Benchmark fread/fwrite both buffered and unbuffered.
2014-12-01 21:46:29 +00:00
Elliott Hughes
8a400073bf am 6f9d7444: Merge "Fix running the bionic benchmarks on the host."
* commit '6f9d7444e801487fb2362955c62c379a681a55f6':
  Fix running the bionic benchmarks on the host.
2014-12-01 21:46:28 +00:00
Lorenzo Colitti
e5477f83b0 Fail queries fast if no DNS servers are configured.
When no DNS servers are configured (and thus there is no chance
that the DNS query will suceed), res_nsend returns early, but
it does not tell the cache that the query has failed.
Therefore, if the caller retries the query, it will block for
PENDING_REQUEST_TIMEOUT (= 20 seconds) waiting for the "existing
query" (which isn't actually doing anything) to complete.

Bug: 18240188
Bug: 18327075
Change-Id: I0df13ff4a17ee65e640be96695a3af31b020963a
2014-12-01 20:03:25 +00:00
Yabin Cui
95bf06da03 am d4130c87: am 44e69856: am 3e6ef3f9: Merge "support _POSIX_CPUTIME"
* commit 'd4130c870d91b6be88f2685717b28ece05fdddcf':
  support _POSIX_CPUTIME
2014-12-01 17:22:28 +00:00
Yabin Cui
d4130c870d am 44e69856: am 3e6ef3f9: Merge "support _POSIX_CPUTIME"
* commit '44e698565c58e560c0d04c9d8b3fa3bf28b21de0':
  support _POSIX_CPUTIME
2014-12-01 17:16:23 +00:00
Yabin Cui
44e698565c am 3e6ef3f9: Merge "support _POSIX_CPUTIME"
* commit '3e6ef3f90285191976a60d7a94287fb0fec1af5d':
  support _POSIX_CPUTIME
2014-12-01 17:09:48 +00:00
David 'Digit' Turner
da741f81f2 am d4f6518c: am 4c7e4b96: am fabb4282: Merge "libc: Fix headers to allow direct inclusion."
* commit 'd4f6518ce21f299fe2bad8abf4b9d5ce488adeb5':
  libc: Fix headers to allow direct inclusion.
2014-12-01 17:06:27 +00:00
David 'Digit' Turner
d4f6518ce2 am 4c7e4b96: am fabb4282: Merge "libc: Fix headers to allow direct inclusion."
* commit '4c7e4b9695d3404df4df9dafad1e7901cf346016':
  libc: Fix headers to allow direct inclusion.
2014-12-01 17:01:39 +00:00
David 'Digit' Turner
4c7e4b9695 am fabb4282: Merge "libc: Fix headers to allow direct inclusion."
* commit 'fabb4282be66caed37c405e36c94dd1dc30ddbb2':
  libc: Fix headers to allow direct inclusion.
2014-12-01 16:55:32 +00:00
Elliott Hughes
964c49f505 am 871fb863: am 6823cbe5: am 7602628e: Merge "Add error-check when mapping socket to fd"
* commit '871fb8630991765caa800ee6061df875fce42e9e':
  Add error-check when mapping socket to fd
2014-11-27 19:39:13 +00:00
Elliott Hughes
871fb86309 am 6823cbe5: am 7602628e: Merge "Add error-check when mapping socket to fd"
* commit '6823cbe5812011109f6384f945e767758b287fa4':
  Add error-check when mapping socket to fd
2014-11-27 19:33:16 +00:00
Elliott Hughes
6823cbe581 am 7602628e: Merge "Add error-check when mapping socket to fd"
* commit '7602628e972b90689b8f39e0c837cad28383bc2b':
  Add error-check when mapping socket to fd
2014-11-27 19:10:14 +00:00
Elliott Hughes
8f73d930dd am 682f9e01: am a169a98c: am 46140327: Merge "Move a private x86-64 header file out of the limelight."
* commit '682f9e01d8b5dbe594f18479326bf52ce666c51f':
  Move a private x86-64 header file out of the limelight.
2014-11-27 17:36:11 +00:00
Elliott Hughes
682f9e01d8 am a169a98c: am 46140327: Merge "Move a private x86-64 header file out of the limelight."
* commit 'a169a98ce449cb4ce0686480241d1d5afae42123':
  Move a private x86-64 header file out of the limelight.
2014-11-27 17:30:38 +00:00
Elliott Hughes
a169a98ce4 am 46140327: Merge "Move a private x86-64 header file out of the limelight."
* commit '461403270593363dfe0b75db9f5e9f454b4258d2':
  Move a private x86-64 header file out of the limelight.
2014-11-27 17:24:23 +00:00
Elliott Hughes
04fb6c6d84 am cce22649: am bfc06e4e: am 87516a65: Merge "[MIPS] Rewrite of setjmp/longjmp for mips64 and mipsr6"
* commit 'cce22649c0834324c6c36e85cbe90c98d0917e3e':
  [MIPS] Rewrite of setjmp/longjmp for mips64 and mipsr6
2014-11-27 14:01:32 +00:00
Elliott Hughes
33933ede5c am 28f9ea7a: am 5d6ecd79: am cc0a9e6b: Merge "bionic tests: add setjmp/_setjmp/sigsetjmp tests."
* commit '28f9ea7ab935adaa69475ee7a70febb57a723a27':
  bionic tests: add setjmp/_setjmp/sigsetjmp tests.
2014-11-27 14:01:31 +00:00
Elliott Hughes
cce22649c0 am bfc06e4e: am 87516a65: Merge "[MIPS] Rewrite of setjmp/longjmp for mips64 and mipsr6"
* commit 'bfc06e4eabd0cb0357e465ad971d36307f370077':
  [MIPS] Rewrite of setjmp/longjmp for mips64 and mipsr6
2014-11-27 13:54:43 +00:00
Elliott Hughes
28f9ea7ab9 am 5d6ecd79: am cc0a9e6b: Merge "bionic tests: add setjmp/_setjmp/sigsetjmp tests."
* commit '5d6ecd79db6330da1c196d8e9441b0d7d1dd7fe3':
  bionic tests: add setjmp/_setjmp/sigsetjmp tests.
2014-11-27 13:54:42 +00:00
Elliott Hughes
bfc06e4eab am 87516a65: Merge "[MIPS] Rewrite of setjmp/longjmp for mips64 and mipsr6"
* commit '87516a6508add943cea99f3d29cb8bd89c4a3bdb':
  [MIPS] Rewrite of setjmp/longjmp for mips64 and mipsr6
2014-11-27 02:35:02 +00:00
Elliott Hughes
5d6ecd79db am cc0a9e6b: Merge "bionic tests: add setjmp/_setjmp/sigsetjmp tests."
* commit 'cc0a9e6bdf0c07f0ce9fab106a026bfb30757b86':
  bionic tests: add setjmp/_setjmp/sigsetjmp tests.
2014-11-27 01:52:32 +00:00
Nicolas Geoffray
196358e019 am ef06f061: am 212452dc: am f64c43ba: Merge "Revert "Use mmap to create the pthread_internal_t.""
* commit 'ef06f061441a495c143e8f867ebf75b3221f3686':
  Revert "Use mmap to create the pthread_internal_t."
2014-11-26 12:15:41 +00:00
Nicolas Geoffray
ef06f06144 am 212452dc: am f64c43ba: Merge "Revert "Use mmap to create the pthread_internal_t.""
* commit '212452dc6ea16ec29d1b44317156f194ac25c226':
  Revert "Use mmap to create the pthread_internal_t."
2014-11-26 12:09:30 +00:00
Nicolas Geoffray
212452dc6e am f64c43ba: Merge "Revert "Use mmap to create the pthread_internal_t.""
* commit 'f64c43ba6c9244c50e904961dc432f04b1dfcfd9':
  Revert "Use mmap to create the pthread_internal_t."
2014-11-26 12:03:26 +00:00
Yabin Cui
3f22e91900 am 0673b42e: am 896038a4: am 4a6069a8: Merge "Use mmap to create the pthread_internal_t."
* commit '0673b42e16f57459b74773dc622d05f7fa4039c3':
  Use mmap to create the pthread_internal_t.
2014-11-26 00:09:17 +00:00
Yabin Cui
0673b42e16 am 896038a4: am 4a6069a8: Merge "Use mmap to create the pthread_internal_t."
* commit '896038a454f869943d3c4e82b01b9687962007cf':
  Use mmap to create the pthread_internal_t.
2014-11-26 00:04:23 +00:00
Yabin Cui
896038a454 am 4a6069a8: Merge "Use mmap to create the pthread_internal_t."
* commit '4a6069a8af7755076283749111b7fac308c7bb7e':
  Use mmap to create the pthread_internal_t.
2014-11-25 23:58:36 +00:00
Yabin Cui
286e46735e am 779cd7d7: am e9367cee: am eb3a5e02: Merge "flesh out sysconf(3) and the _POSIX_* constants"
* commit '779cd7d7c708fef1f7d689e8eb41b3c49bf54b5b':
  flesh out sysconf(3) and the _POSIX_* constants
2014-11-24 02:20:37 +00:00
Yabin Cui
779cd7d7c7 am e9367cee: am eb3a5e02: Merge "flesh out sysconf(3) and the _POSIX_* constants"
* commit 'e9367cee64349b16807efd448ab1261a091eeb22':
  flesh out sysconf(3) and the _POSIX_* constants
2014-11-24 02:17:09 +00:00
Yabin Cui
e9367cee64 am eb3a5e02: Merge "flesh out sysconf(3) and the _POSIX_* constants"
* commit 'eb3a5e026e65ea80b17580a71f4451f5cf5d6612':
  flesh out sysconf(3) and the _POSIX_* constants
2014-11-24 02:13:02 +00:00
Elliott Hughes
609cd58c31 am cfd3cc57: am bb03af30: am 95a02366: Merge "Sync with upstream OpenBSD fts.c."
* commit 'cfd3cc57475146fafe18bdbb538eddc11fe14f3f':
  Sync with upstream OpenBSD fts.c.
2014-11-23 18:19:04 +00:00
Elliott Hughes
cfd3cc5747 am bb03af30: am 95a02366: Merge "Sync with upstream OpenBSD fts.c."
* commit 'bb03af305d22dbbc4d07da033a6683eb93880223':
  Sync with upstream OpenBSD fts.c.
2014-11-23 18:14:12 +00:00
Elliott Hughes
bb03af305d am 95a02366: Merge "Sync with upstream OpenBSD fts.c."
* commit '95a02366f2697ed65c4a2849a9cbde3d403142e3':
  Sync with upstream OpenBSD fts.c.
2014-11-23 18:09:50 +00:00
Dan Albert
909f6d51fc am 67788cce: am 26036279: am 806dd9f9: Merge "Move some pthread functions to signal.h."
* commit '67788cce25b133d85c89dfee3562c739ab01b3bb':
  Move some pthread functions to signal.h.
2014-11-22 22:47:25 +00:00
Dan Albert
67788cce25 am 26036279: am 806dd9f9: Merge "Move some pthread functions to signal.h."
* commit '260362798c28446231c5c387c6b0336cf87ab3d3':
  Move some pthread functions to signal.h.
2014-11-22 22:44:43 +00:00
Dan Albert
260362798c am 806dd9f9: Merge "Move some pthread functions to signal.h."
* commit '806dd9f90c8daadfafd19d69e3f36bb00729cb8e':
  Move some pthread functions to signal.h.
2014-11-22 22:42:34 +00:00
Elliott Hughes
d4c6d8918a am 2a796800: am 97b2a7ba: am d77c1ec9: Merge "Bring our <machine/endian.h> files back in sync."
* commit '2a796800725e3fdb889994c5e1ad6ace6bbd05e0':
  Bring our <machine/endian.h> files back in sync.
2014-11-22 02:55:34 +00:00
Elliott Hughes
2a79680072 am 97b2a7ba: am d77c1ec9: Merge "Bring our <machine/endian.h> files back in sync."
* commit '97b2a7bae0a8f9164d4b9de2b9e8676463dcb8b3':
  Bring our <machine/endian.h> files back in sync.
2014-11-22 02:51:24 +00:00
Elliott Hughes
97b2a7bae0 am d77c1ec9: Merge "Bring our <machine/endian.h> files back in sync."
* commit 'd77c1ec90a17ac91c24904670ba9a3a60fe4cd3d':
  Bring our <machine/endian.h> files back in sync.
2014-11-22 02:44:26 +00:00
Dmitriy Ivanov
ca27df9ba6 am 681e4896: am 7b7e7992: am 80838f19: Merge "Mips: remove arch-specific atexit.h"
* commit '681e4896377ddec7d28a9b14982840cb16db4609':
  Mips: remove arch-specific atexit.h
2014-11-21 23:59:44 +00:00
Dmitriy Ivanov
c19b3c7170 am c0e7e9c0: am d53cdb59: am ff1c2526: Merge "Mips: Remove unused files"
* commit 'c0e7e9c04080d2ddc456fcb30702012c372b344b':
  Mips: Remove unused files
2014-11-21 23:59:43 +00:00
Dmitriy Ivanov
64a3ffc861 am ceddf594: am cfacfcc3: am 6b1230b5: Merge "Mips: Reuse atexit.h from libc/arch-common"
* commit 'ceddf5946361d5ad3c2677a3164d8b716196d338':
  Mips: Reuse atexit.h from libc/arch-common
2014-11-21 23:13:24 +00:00
Dan Albert
13009d7726 am 76f4498c: am a77b8529: am 66ca8249: Merge "Revert "<sched.h> should offer both __sched_priority and sched_priority.""
* commit '76f4498c4a5b78bb3ec6508c4c7e88f48fa76fda':
  Revert "<sched.h> should offer both __sched_priority and sched_priority."
2014-11-21 23:12:57 +00:00
Dmitriy Ivanov
681e489637 am 7b7e7992: am 80838f19: Merge "Mips: remove arch-specific atexit.h"
* commit '7b7e799209a47a22d596fda1a5946f17f17052db':
  Mips: remove arch-specific atexit.h
2014-11-21 23:07:29 +00:00
Dmitriy Ivanov
c0e7e9c040 am d53cdb59: am ff1c2526: Merge "Mips: Remove unused files"
* commit 'd53cdb59c33b25005dcd3f6bd85cf4ce11908432':
  Mips: Remove unused files
2014-11-21 23:07:27 +00:00
Dmitriy Ivanov
7b7e799209 am 80838f19: Merge "Mips: remove arch-specific atexit.h"
* commit '80838f190ad9454d1a9ebc2204cbfbbb22086f56':
  Mips: remove arch-specific atexit.h
2014-11-21 23:04:49 +00:00
Dmitriy Ivanov
d53cdb59c3 am ff1c2526: Merge "Mips: Remove unused files"
* commit 'ff1c25262d801e631c88526346989b033805607d':
  Mips: Remove unused files
2014-11-21 23:01:11 +00:00
Dmitriy Ivanov
ceddf59463 am cfacfcc3: am 6b1230b5: Merge "Mips: Reuse atexit.h from libc/arch-common"
* commit 'cfacfcc398dc3990625cac12203693d4fead63b0':
  Mips: Reuse atexit.h from libc/arch-common
2014-11-21 21:23:23 +00:00
Dmitriy Ivanov
cfacfcc398 am 6b1230b5: Merge "Mips: Reuse atexit.h from libc/arch-common"
* commit '6b1230b57649309050d21929e02d0ccab87ff36b':
  Mips: Reuse atexit.h from libc/arch-common
2014-11-21 21:20:57 +00:00
Dan Albert
76f4498c4a am a77b8529: am 66ca8249: Merge "Revert "<sched.h> should offer both __sched_priority and sched_priority.""
* commit 'a77b8529ebe1b952ae89649c24f38859bd7e7b46':
  Revert "<sched.h> should offer both __sched_priority and sched_priority."
2014-11-21 20:25:59 +00:00
Dan Albert
a77b8529eb am 66ca8249: Merge "Revert "<sched.h> should offer both __sched_priority and sched_priority.""
* commit '66ca82495cb24545897bb4141f55afd2f17775b7':
  Revert "<sched.h> should offer both __sched_priority and sched_priority."
2014-11-21 20:19:48 +00:00
Dmitriy Ivanov
5669390ec9 am 6854b511: am c07f7ee7: am a847073a: Merge "Rename test_forked -> test_isolated"
* commit '6854b511f26cfafdc8ae58eb905c3286bafe672f':
  Rename test_forked -> test_isolated
2014-11-21 16:15:42 +00:00
Dmitriy Ivanov
6854b511f2 am c07f7ee7: am a847073a: Merge "Rename test_forked -> test_isolated"
* commit 'c07f7ee70daa04aa5d77771d8859592d110a7177':
  Rename test_forked -> test_isolated
2014-11-21 16:11:18 +00:00
Dmitriy Ivanov
c07f7ee70d am a847073a: Merge "Rename test_forked -> test_isolated"
* commit 'a847073a05295cc140fc79c9d433961442a6cae4':
  Rename test_forked -> test_isolated
2014-11-21 16:07:11 +00:00
Dmitriy Ivanov
6e57509488 am 7af0b557: am 4b0e0fa7: am 8b4b8273: Merge "Add test_forked() option"
* commit '7af0b557405893352f01f396f70a01280b5a555d':
  Add test_forked() option
2014-11-21 02:31:59 +00:00
Dmitriy Ivanov
7af0b55740 am 4b0e0fa7: am 8b4b8273: Merge "Add test_forked() option"
* commit '4b0e0fa75337449635845d5adf1f337d69608ba0':
  Add test_forked() option
2014-11-21 02:15:04 +00:00
Dmitriy Ivanov
4b0e0fa753 am 8b4b8273: Merge "Add test_forked() option"
* commit '8b4b82733877928da429e47d9a9bb73317517b2e':
  Add test_forked() option
2014-11-21 01:27:14 +00:00
Elliott Hughes
a604c4ac2f am d41e4403: am 432f6458: Fix flockfile(3) and friends for stdin/stdout/stderr too.
* commit 'd41e4403101ffab73c728828d56f254af2760947':
  Fix flockfile(3) and friends for stdin/stdout/stderr too.
2014-11-20 23:19:32 +00:00
Elliott Hughes
d41e440310 am 432f6458: Fix flockfile(3) and friends for stdin/stdout/stderr too.
* commit '432f645887466ed7099addb20fa8915c8a29fcab':
  Fix flockfile(3) and friends for stdin/stdout/stderr too.
2014-11-20 23:06:31 +00:00
Elliott Hughes
060521af91 am 2feba8cb: am 4e14c9b8: am 770198d3: Merge "Make the ftw(3) tests a bit more thorough."
* commit '2feba8cb14f0c9eee5c175279f90245fea8770ba':
  Make the ftw(3) tests a bit more thorough.
2014-11-20 00:23:08 +00:00
Elliott Hughes
2feba8cb14 am 4e14c9b8: am 770198d3: Merge "Make the ftw(3) tests a bit more thorough."
* commit '4e14c9b81faeab71fae62e24f5d8fb36337969ab':
  Make the ftw(3) tests a bit more thorough.
2014-11-20 00:18:14 +00:00
Elliott Hughes
4e14c9b81f am 770198d3: Merge "Make the ftw(3) tests a bit more thorough."
* commit '770198d3f707d5eccd6796f311015903aec31b26':
  Make the ftw(3) tests a bit more thorough.
2014-11-20 00:14:39 +00:00
Elliott Hughes
d0527de679 am c26375ae: am 4ed111ef: am 5313c3ff: Merge "Fix flockfile(3) and friends for stdin/stdout/stderr too."
* commit 'c26375ae5176179d51263306b2f40c0f1eff322f':
  Fix flockfile(3) and friends for stdin/stdout/stderr too.
2014-11-20 00:02:08 +00:00
Elliott Hughes
c26375ae51 am 4ed111ef: am 5313c3ff: Merge "Fix flockfile(3) and friends for stdin/stdout/stderr too."
* commit '4ed111efe3a7f5b37039e3cce8039941977f390f':
  Fix flockfile(3) and friends for stdin/stdout/stderr too.
2014-11-19 23:58:03 +00:00
Elliott Hughes
4ed111efe3 am 5313c3ff: Merge "Fix flockfile(3) and friends for stdin/stdout/stderr too."
* commit '5313c3ff89db33dc0af3fabfe142a7219adce0aa':
  Fix flockfile(3) and friends for stdin/stdout/stderr too.
2014-11-19 23:51:22 +00:00
Elliott Hughes
432f645887 Fix flockfile(3) and friends for stdin/stdout/stderr too.
stdin/stdout/stderr are special; their mutexes are initialized by
__sinit. There's no unit test for this, because __sinit has already
been called by the time the first unit test runs, but you could
reproduce this failure with a trivial main() that calls flockfile
or ftrylockfile on one of the standard streams before otherwise
using stdio.

Bug: 18208568

(cherry picked from commit c48c3e4bb3)

Change-Id: Ia0c43ed4ac69daea8152aee9516415a6e3f8a042
2014-11-19 15:49:09 -08:00
Dmitriy Ivanov
b9e0a8490a am e0496865: am d3dcb783: am 6b48b20a: Merge "Yet another relocation test"
* commit 'e04968655f9881dcdc2756a80e341b9935361c46':
  Yet another relocation test
2014-11-19 19:52:19 +00:00
Dmitriy Ivanov
e04968655f am d3dcb783: am 6b48b20a: Merge "Yet another relocation test"
* commit 'd3dcb7830b3cbd2a650b6fa29e672e45fc3d689b':
  Yet another relocation test
2014-11-19 19:45:23 +00:00
Dmitriy Ivanov
d3dcb7830b am 6b48b20a: Merge "Yet another relocation test"
* commit '6b48b20a1e613dcb41704deb266142a7cc45588c':
  Yet another relocation test
2014-11-19 19:40:48 +00:00
David 'Digit' Turner
8e6812bb00 am d2e2c336: am a2f6e783: am c9278b8a: Merge "libc: Move <sgidefs.h> to libc/arch-mips/"
* commit 'd2e2c3361a05d462c2669f4c1486841ed60e1f0b':
  libc: Move <sgidefs.h> to libc/arch-mips/
2014-11-19 15:02:18 +00:00
David 'Digit' Turner
d2e2c3361a am a2f6e783: am c9278b8a: Merge "libc: Move <sgidefs.h> to libc/arch-mips/"
* commit 'a2f6e783cd2a9c503194de3bd0e3d6ecac974cc2':
  libc: Move <sgidefs.h> to libc/arch-mips/
2014-11-19 14:56:44 +00:00
David 'Digit' Turner
a2f6e783cd am c9278b8a: Merge "libc: Move <sgidefs.h> to libc/arch-mips/"
* commit 'c9278b8a17e9a0a4e85c377105f500a7c1f41535':
  libc: Move <sgidefs.h> to libc/arch-mips/
2014-11-19 14:53:45 +00:00
Yabin Cui
aeb1aecf51 am 2936af2e: am 9014065b: am 649f78df: Merge "fix shared gid support in getpwnam/getgrnam"
* commit '2936af2ec924e8f40a352b67a9bf214403c3aa36':
  fix shared gid support in getpwnam/getgrnam
2014-11-19 04:40:11 +00:00
Yabin Cui
2936af2ec9 am 9014065b: am 649f78df: Merge "fix shared gid support in getpwnam/getgrnam"
* commit '9014065b98664114528bc37bf1c2bb76546ef6b8':
  fix shared gid support in getpwnam/getgrnam
2014-11-19 04:35:28 +00:00
Yabin Cui
9014065b98 am 649f78df: Merge "fix shared gid support in getpwnam/getgrnam"
* commit '649f78df79bc45a46de9f3c391f395d5ab4fe73a':
  fix shared gid support in getpwnam/getgrnam
2014-11-19 04:28:31 +00:00
Dmitriy Ivanov
3ff915aab4 am 9a130604: am 52663836: am 27aa9c5b: Merge "Fix jump to unmapped memory on atexit"
* commit '9a130604173fcec4f3246e3e27376eeff7132d11':
  Fix jump to unmapped memory on atexit
2014-11-18 21:38:00 +00:00
Dmitriy Ivanov
9a13060417 am 52663836: am 27aa9c5b: Merge "Fix jump to unmapped memory on atexit"
* commit '5266383620998526652694d00155e9c6e49fb787':
  Fix jump to unmapped memory on atexit
2014-11-18 21:33:01 +00:00
Dmitriy Ivanov
5266383620 am 27aa9c5b: Merge "Fix jump to unmapped memory on atexit"
* commit '27aa9c5b50cc3e979fc67c1bf5296dfd725c8540':
  Fix jump to unmapped memory on atexit
2014-11-18 21:28:24 +00:00
Elliott Hughes
7d96a50f4e am 927fa38a: am cbdc7e68: am 8eda0a6d: Merge "libc: Fix mktime returns an uncorrect time in empty TZ case"
* commit '927fa38a53dff3d5a9386af7d082bb4428d4029e':
  libc: Fix mktime returns an uncorrect time in empty TZ case
2014-11-17 23:28:04 +00:00
Elliott Hughes
927fa38a53 am cbdc7e68: am 8eda0a6d: Merge "libc: Fix mktime returns an uncorrect time in empty TZ case"
* commit 'cbdc7e6883a7d1514af5cd8c1e186af3c487e930':
  libc: Fix mktime returns an uncorrect time in empty TZ case
2014-11-17 23:23:38 +00:00
Elliott Hughes
cbdc7e6883 am 8eda0a6d: Merge "libc: Fix mktime returns an uncorrect time in empty TZ case"
* commit '8eda0a6d69fda865b576bc18311a3d79c84b42a1':
  libc: Fix mktime returns an uncorrect time in empty TZ case
2014-11-17 23:18:39 +00:00
Elliott Hughes
4380936524 am 58802c1a: resolved conflicts for merge of 047d943e to lmp-mr1-dev-plus-aosp
* commit '58802c1a458fb32f9d42a5f1486f61270a55e0dd':
  sysconf(3) returns long.
2014-11-17 19:32:33 +00:00
Elliott Hughes
58802c1a45 resolved conflicts for merge of 047d943e to lmp-mr1-dev-plus-aosp
Change-Id: Ic0e230083f25ab5a026beae80a1ddef9ff60accb
2014-11-17 11:26:42 -08:00
Dmitriy Ivanov
2aad16902f am 7b78a69d: am 78d809fd: am ee4c8feb: Merge "bionic/test: migrate sysconf tests from system/extras to bionic/tests"
* commit '7b78a69d85dc3ee5e1f7f64607e0ae80d0aec0f6':
  bionic/test: migrate sysconf tests from system/extras to bionic/tests
2014-11-17 19:00:14 +00:00
Elliott Hughes
ef73e44549 am f64b1a8b: am 18aa454f: am f2c88209: Merge "Add getaddrinfo(3) tests for NULL arguments."
* commit 'f64b1a8be284307569f3d0fac847125aff60b0cb':
  Add getaddrinfo(3) tests for NULL arguments.
2014-11-17 19:00:13 +00:00
Elliott Hughes
fa4606bbb8 am ac39e08b: am c0aba7c5: am 35f8910e: Merge "Remove remaining bionic support for TARGET_CPU_SMP being false."
* commit 'ac39e08bd521f735460789dfba1cf307b5deb5fd':
  Remove remaining bionic support for TARGET_CPU_SMP being false.
2014-11-17 19:00:12 +00:00
Dmitriy Ivanov
7b78a69d85 am 78d809fd: am ee4c8feb: Merge "bionic/test: migrate sysconf tests from system/extras to bionic/tests"
* commit '78d809fd4b5fe6f74e23e718a3c14c68200ac203':
  bionic/test: migrate sysconf tests from system/extras to bionic/tests
2014-11-17 18:53:04 +00:00
Elliott Hughes
f64b1a8be2 am 18aa454f: am f2c88209: Merge "Add getaddrinfo(3) tests for NULL arguments."
* commit '18aa454f2f7c67999d06f2fd3f0db55b78942d64':
  Add getaddrinfo(3) tests for NULL arguments.
2014-11-17 18:53:03 +00:00
Elliott Hughes
ac39e08bd5 am c0aba7c5: am 35f8910e: Merge "Remove remaining bionic support for TARGET_CPU_SMP being false."
* commit 'c0aba7c5ad7535ca5edd0a6683dd4a483701fee9':
  Remove remaining bionic support for TARGET_CPU_SMP being false.
2014-11-17 18:53:02 +00:00
Dmitriy Ivanov
78d809fd4b am ee4c8feb: Merge "bionic/test: migrate sysconf tests from system/extras to bionic/tests"
* commit 'ee4c8febb7bd1f5492486cc11980f925425b02ec':
  bionic/test: migrate sysconf tests from system/extras to bionic/tests
2014-11-17 18:48:23 +00:00
Elliott Hughes
18aa454f2f am f2c88209: Merge "Add getaddrinfo(3) tests for NULL arguments."
* commit 'f2c882095b5747cd7f3158428208580a7ff72ed6':
  Add getaddrinfo(3) tests for NULL arguments.
2014-11-17 18:31:53 +00:00
Elliott Hughes
c0aba7c5ad am 35f8910e: Merge "Remove remaining bionic support for TARGET_CPU_SMP being false."
* commit '35f8910e4cdf3f7d0b877394524c7dd719084187':
  Remove remaining bionic support for TARGET_CPU_SMP being false.
2014-11-17 18:31:51 +00:00
Dan Albert
6c35e5577b am 27cdb39e: am c449b7a5: am eef1eb64: Merge "Allow asan for glibc tests."
* commit '27cdb39e35b732bf413e346868bc7cf6e9ee710b':
  Allow asan for glibc tests.
2014-11-15 06:59:31 +00:00
Dan Albert
27cdb39e35 am c449b7a5: am eef1eb64: Merge "Allow asan for glibc tests."
* commit 'c449b7a533f797b223cdc2c8129de2261a547823':
  Allow asan for glibc tests.
2014-11-15 06:55:38 +00:00
Dan Albert
c449b7a533 am eef1eb64: Merge "Allow asan for glibc tests."
* commit 'eef1eb64bb5be68bfb00f8e71d3118a2cfec99e7':
  Allow asan for glibc tests.
2014-11-15 06:51:47 +00:00
Yabin Cui
167a932685 am 6ccaaa94: am 48c6f1b6: am 38569312: Merge "Add functions in sysinfo.h."
* commit '6ccaaa947aa271366c70023abbf7cef6d1e88a3d':
  Add functions in sysinfo.h.
2014-11-15 01:48:07 +00:00
Yabin Cui
6ccaaa947a am 48c6f1b6: am 38569312: Merge "Add functions in sysinfo.h."
* commit '48c6f1b66d0cb81aee81108b135b179c2bc46d1b':
  Add functions in sysinfo.h.
2014-11-15 01:01:29 +00:00
Yabin Cui
48c6f1b66d am 38569312: Merge "Add functions in sysinfo.h."
* commit '38569312bc5a3a4688d45997d81b59abb0a60825':
  Add functions in sysinfo.h.
2014-11-15 00:56:42 +00:00
Yabin Cui
2b10fe28ae am 0006a38a: am b4e7f4e2: am 661423a4: Merge "Increase support of pathconf options."
* commit '0006a38adabce47b99690f605a51e45225f0ddaf':
  Increase support of pathconf options.
2014-11-14 23:55:48 +00:00
Yabin Cui
0006a38ada am b4e7f4e2: am 661423a4: Merge "Increase support of pathconf options."
* commit 'b4e7f4e2263d4763d9507463189ef8f50fd58a67':
  Increase support of pathconf options.
2014-11-14 23:52:53 +00:00
Yabin Cui
b4e7f4e226 am 661423a4: Merge "Increase support of pathconf options."
* commit '661423a453b2692d592df56307a876dfc35c50f2':
  Increase support of pathconf options.
2014-11-14 23:49:21 +00:00
Elliott Hughes
e75b8db1bf am 134ec088: am c2760b19: am 4cf942d3: Merge "sysconf(3) returns long."
* commit '134ec0880d2277bca0a09d75a15b8fff17a766a8':
  sysconf(3) returns long.
2014-11-14 23:44:54 +00:00
Elliott Hughes
134ec0880d am c2760b19: am 4cf942d3: Merge "sysconf(3) returns long."
* commit 'c2760b19e7821f241b5d0c31fb975d312600dc58':
  sysconf(3) returns long.
2014-11-14 23:41:35 +00:00
Elliott Hughes
047d943ee9 sysconf(3) returns long.
On LP32, this makes no difference. Not an ABI change.

On LP64, results are going to be in %rax or x0 whether they're 32- or 64-bit,
and the only difference is going to be whether the top bits are clobbered.

(cherry picked from commit 60d84af172)

Bug: 18390956
Change-Id: I722461498bc5494e2972fb07d5189dffe76e8993
2014-11-14 15:37:49 -08:00
Elliott Hughes
c2760b19e7 am 4cf942d3: Merge "sysconf(3) returns long."
* commit '4cf942d318f2856dff078798ce9a3eac5de593b7':
  sysconf(3) returns long.
2014-11-14 23:36:21 +00:00
Elliott Hughes
9931612379 am 2ee4e1a1: am 7cc4d2ef: am cdcef73a: Merge "Add non-macro stdin/stdout/stderr too."
* commit '2ee4e1a137e9bf78f5ceab0e8d9b0a5cdc5d7eef':
  Add non-macro stdin/stdout/stderr too.
2014-11-14 23:05:39 +00:00
Elliott Hughes
2ee4e1a137 am 7cc4d2ef: am cdcef73a: Merge "Add non-macro stdin/stdout/stderr too."
* commit '7cc4d2efa9a89928c3ff51d171f7a03e12793038':
  Add non-macro stdin/stdout/stderr too.
2014-11-14 23:00:56 +00:00
Elliott Hughes
7cc4d2efa9 am cdcef73a: Merge "Add non-macro stdin/stdout/stderr too."
* commit 'cdcef73a23833ebd50bb5b654eb278b164e286ad':
  Add non-macro stdin/stdout/stderr too.
2014-11-14 22:56:03 +00:00
Dmitriy Ivanov
f9724cb931 am a3a78ab1: am 23145263: am 27fa71eb: Merge "Fix host build for arm/arm64"
* commit 'a3a78ab168449c2baa56dba18668779b4bb5dfa6':
  Fix host build for arm/arm64
2014-11-14 20:26:29 +00:00
Dmitriy Ivanov
a3a78ab168 am 23145263: am 27fa71eb: Merge "Fix host build for arm/arm64"
* commit '2314526342f2a3e39ec50d8f49652cf29bbfec51':
  Fix host build for arm/arm64
2014-11-14 20:24:09 +00:00
Dmitriy Ivanov
2314526342 am 27fa71eb: Merge "Fix host build for arm/arm64"
* commit '27fa71ebc6ef63ed8020d7b040640cb6c0cf2a45':
  Fix host build for arm/arm64
2014-11-14 20:21:52 +00:00
Dmitriy Ivanov
bd61a03c8d am f4710e12: am 4ed18141: am 898aab28: Merge "Add test for --hash-style=sysv"
* commit 'f4710e12fa524ad17fa8f3e5c743b68e35b13c3c':
  Add test for --hash-style=sysv
2014-11-14 19:42:37 +00:00
Dmitriy Ivanov
f4710e12fa am 4ed18141: am 898aab28: Merge "Add test for --hash-style=sysv"
* commit '4ed181416a6c5c3168d7a2f014d18a056d546d62':
  Add test for --hash-style=sysv
2014-11-14 19:38:52 +00:00
Dmitriy Ivanov
4ed181416a am 898aab28: Merge "Add test for --hash-style=sysv"
* commit '898aab282cff2a2949bc1726f8a4b81c1c30148e':
  Add test for --hash-style=sysv
2014-11-14 19:33:51 +00:00
Dmitriy Ivanov
042e6fa091 am 084778da: am ca8b70bc: am c490b502: Merge "Rename soinfo methods and fields"
* commit '084778daed3b4180d23c3157b6de536b02cc2638':
  Rename soinfo methods and fields
2014-11-14 19:30:53 +00:00
Christopher Ferris
82f6fd9b13 am e4695e3c: am e6d238a5: am 59b1dea8: Merge "Add missing function prototypes wcpcpy/wcpncpy."
* commit 'e4695e3c2f95f963e4afd80fde3ec172401573f5':
  Add missing function prototypes wcpcpy/wcpncpy.
2014-11-14 19:18:58 +00:00
Daniel Rosenberg
5e858eec0e am fb854deb: am 4a50d8ea: bionic: libc: Added path to vendor build properties file.
* commit 'fb854debc0db534210a349debd91f7b0c804e34e':
  bionic: libc: Added path to vendor build properties file.
2014-11-14 19:18:24 +00:00
Elliott Hughes
4d9ddfc536 am bdd5c628: am 9cfd1ec5: am 0a135b42: Merge "Fix our <mntent.h> implementation."
* commit 'bdd5c628937394fb61251030b21932dbf4eac2cf':
  Fix our <mntent.h> implementation.
2014-11-14 19:17:56 +00:00
Dmitriy Ivanov
084778daed am ca8b70bc: am c490b502: Merge "Rename soinfo methods and fields"
* commit 'ca8b70bc8d8a61c0a8b73577f5d90310c3d7cb9b':
  Rename soinfo methods and fields
2014-11-14 16:44:23 +00:00
Dmitriy Ivanov
ca8b70bc8d am c490b502: Merge "Rename soinfo methods and fields"
* commit 'c490b5029fdc96f1dbf00d02d0ad63a03d8cd4f3':
  Rename soinfo methods and fields
2014-11-14 16:38:19 +00:00
Christopher Ferris
e4695e3c2f am e6d238a5: am 59b1dea8: Merge "Add missing function prototypes wcpcpy/wcpncpy."
* commit 'e6d238a51cc7fb5e6621cb8c32b4f86780585907':
  Add missing function prototypes wcpcpy/wcpncpy.
2014-11-14 03:30:15 +00:00
Christopher Ferris
e6d238a51c am 59b1dea8: Merge "Add missing function prototypes wcpcpy/wcpncpy."
* commit '59b1dea8829b081e23c3156b44af624bf8fac962':
  Add missing function prototypes wcpcpy/wcpncpy.
2014-11-14 03:27:16 +00:00
Daniel Rosenberg
fb854debc0 am 4a50d8ea: bionic: libc: Added path to vendor build properties file.
* commit '4a50d8ead71c3dd6d9eebe23626d0d4e96dd963b':
  bionic: libc: Added path to vendor build properties file.
2014-11-14 01:39:46 +00:00
Elliott Hughes
75a869bdbf am 90075a32: am 105962b2: am 288fa03a: Merge "Assume glibc >= 2.15."
* commit '90075a328130b79f943be4f9249335d33dc76fa4':
  Assume glibc >= 2.15.
2014-11-14 00:47:26 +00:00
Elliott Hughes
8927477719 am ad7a8754: am 4dcb9c78: am 6229798a: Merge "Don\'t receive structs containing pointers over sockets."
* commit 'ad7a87548fc29484c99e311ad75b5804621b0d3a':
  Don't receive structs containing pointers over sockets.
2014-11-14 00:44:58 +00:00
Hans Boehm
2c3950ede9 am 1ba937c0: am 5b53da0b: am 854c98d6: Merge "Allow stdatomic.h to be included from mingw prebuilt."
* commit '1ba937c063191995c15c666cf146f0cf557dd10a':
  Allow stdatomic.h to be included from mingw prebuilt.
2014-11-14 00:44:42 +00:00
Elliott Hughes
bdd5c62893 am 9cfd1ec5: am 0a135b42: Merge "Fix our <mntent.h> implementation."
* commit '9cfd1ec535d0344bfd39c25b746a3bc32a0c5b61':
  Fix our <mntent.h> implementation.
2014-11-14 00:09:43 +00:00
Elliott Hughes
9cfd1ec535 am 0a135b42: Merge "Fix our <mntent.h> implementation."
* commit '0a135b4259077bbb48ec911c0fa92ab0654ffffa':
  Fix our <mntent.h> implementation.
2014-11-14 00:04:12 +00:00
Daniel Rosenberg
4a50d8ead7 bionic: libc: Added path to vendor build properties file.
Signed-off-by: Daniel Rosenberg <drosen@google.com>

(cherry picked from commit 71d220c1de)

Bug: 18281574
Change-Id: I2843f23ecb4c4ca79b230d8041bbca02dbedeadc
2014-11-13 13:09:59 -08:00
Elliott Hughes
90075a3281 am 105962b2: am 288fa03a: Merge "Assume glibc >= 2.15."
* commit '105962b2fecad08ec2218cf6f2de2d2b20085e85':
  Assume glibc >= 2.15.
2014-11-13 19:10:25 +00:00
Elliott Hughes
105962b2fe am 288fa03a: Merge "Assume glibc >= 2.15."
* commit '288fa03a5aa5ee69c321e7266cdc656d11d8c022':
  Assume glibc >= 2.15.
2014-11-13 19:03:19 +00:00
Elliott Hughes
ad7a87548f am 4dcb9c78: am 6229798a: Merge "Don\'t receive structs containing pointers over sockets."
* commit '4dcb9c781143d30cc05f225557da0d86c2ccb93e':
  Don't receive structs containing pointers over sockets.
2014-11-13 18:03:09 +00:00
Elliott Hughes
4dcb9c7811 am 6229798a: Merge "Don\'t receive structs containing pointers over sockets."
* commit '6229798a7c2aa4df3d8fba70c679a127ee88ad76':
  Don't receive structs containing pointers over sockets.
2014-11-13 17:58:57 +00:00
Hans Boehm
1ba937c063 am 5b53da0b: am 854c98d6: Merge "Allow stdatomic.h to be included from mingw prebuilt."
* commit '5b53da0bf5b8a0034dd495859d8f83cae671d7e6':
  Allow stdatomic.h to be included from mingw prebuilt.
2014-11-13 17:57:24 +00:00
Hans Boehm
5b53da0bf5 am 854c98d6: Merge "Allow stdatomic.h to be included from mingw prebuilt."
* commit '854c98d63671e38b3537620f323addcd313c9f11':
  Allow stdatomic.h to be included from mingw prebuilt.
2014-11-13 17:53:23 +00:00
Elliott Hughes
d0a2431bb9 am 0c69b1bf: am 04d2a595: am 92a585c9: Merge "Fix glibc 2.15 build."
* commit '0c69b1bf89b116f7a2c822960d34126ae9d62a26':
  Fix glibc 2.15 build.
2014-11-13 04:12:08 +00:00
Dmitriy Ivanov
632e724515 am ca26fbc2: am 353463d0: am 38b47f6e: Merge "Fix mips build"
* commit 'ca26fbc24a7e817a9a195e536bee21cc7e27dccb':
  Fix mips build
2014-11-13 04:12:06 +00:00
Elliott Hughes
0c69b1bf89 am 04d2a595: am 92a585c9: Merge "Fix glibc 2.15 build."
* commit '04d2a59544354802526584a38968069ac65e813e':
  Fix glibc 2.15 build.
2014-11-13 04:05:18 +00:00
Dmitriy Ivanov
ca26fbc24a am 353463d0: am 38b47f6e: Merge "Fix mips build"
* commit '353463d0a2e507ec046647928af2dc17a76f890f':
  Fix mips build
2014-11-13 04:05:16 +00:00
Elliott Hughes
04d2a59544 am 92a585c9: Merge "Fix glibc 2.15 build."
* commit '92a585c91a83e63949431c617de936742b080150':
  Fix glibc 2.15 build.
2014-11-13 03:58:55 +00:00
Dmitriy Ivanov
353463d0a2 am 38b47f6e: Merge "Fix mips build"
* commit '38b47f6eb4631e1fb2cba0e47fd4832a58b16755':
  Fix mips build
2014-11-13 03:58:53 +00:00
Dmitriy Ivanov
d19a02b9ef am c2788944: am 8d31f51a: am 16db1ae1: Merge "Add support for hash-style=gnu"
* commit 'c27889447c522725356ab8c082e55f817131d1a9':
  Add support for hash-style=gnu
2014-11-13 02:34:34 +00:00
Dmitriy Ivanov
c27889447c am 8d31f51a: am 16db1ae1: Merge "Add support for hash-style=gnu"
* commit '8d31f51a38f10917b2396412c2dbe45dc9abe864':
  Add support for hash-style=gnu
2014-11-13 02:29:06 +00:00
Dan Albert
a16d941ebc am a8fe453f: am ed3555f5: am 468f8410: Merge "Add documentation about checkbuild."
* commit 'a8fe453f76ba107566cc5d531e78eba0bbbc9351':
  Add documentation about checkbuild.
2014-11-13 02:17:59 +00:00
Dmitriy Ivanov
8d31f51a38 am 16db1ae1: Merge "Add support for hash-style=gnu"
* commit '16db1ae1089fdfe65a123d3e4d61d509a099cddc':
  Add support for hash-style=gnu
2014-11-13 02:17:57 +00:00
Dan Albert
a8fe453f76 am ed3555f5: am 468f8410: Merge "Add documentation about checkbuild."
* commit 'ed3555f5b2e2bdc0699ff9627463723381e0d4c7':
  Add documentation about checkbuild.
2014-11-13 01:31:49 +00:00
Dan Albert
ed3555f5b2 am 468f8410: Merge "Add documentation about checkbuild."
* commit '468f84107aaf108ac6b3ff389342092c2551f859':
  Add documentation about checkbuild.
2014-11-13 01:22:00 +00:00
Christopher Ferris
ff51dc4f00 am 6e29794a: am 616fa27b: am 5d05d025: Merge "Add 64-bit slm optimized strlcpy and srlcat."
* commit '6e29794acb281b332abd8f7beb68ab8855f06ed4':
  Add 64-bit slm optimized strlcpy and srlcat.
2014-11-12 23:31:20 +00:00
Christopher Ferris
6e29794acb am 616fa27b: am 5d05d025: Merge "Add 64-bit slm optimized strlcpy and srlcat."
* commit '616fa27b60ffdb0560d7134ceb7d8cdd4fbe672c':
  Add 64-bit slm optimized strlcpy and srlcat.
2014-11-12 23:26:57 +00:00
Christopher Ferris
616fa27b60 am 5d05d025: Merge "Add 64-bit slm optimized strlcpy and srlcat."
* commit '5d05d025b51fc7b1a59f230000601bc593c12eea':
  Add 64-bit slm optimized strlcpy and srlcat.
2014-11-12 23:21:42 +00:00
Yabin Cui
0a2f510e3a am e4f2eae0: am 1b6b274a: am e5cabca5: Merge "implement missing seekdir and telldir"
* commit 'e4f2eae0eeec05f64518b560d4901bdb18bf1170':
  implement missing seekdir and telldir
2014-11-12 20:50:01 +00:00
Yabin Cui
e4f2eae0ee am 1b6b274a: am e5cabca5: Merge "implement missing seekdir and telldir"
* commit '1b6b274a4b3d1b5462e379ff2144d42ae264677a':
  implement missing seekdir and telldir
2014-11-12 20:45:34 +00:00
Yabin Cui
1b6b274a4b am e5cabca5: Merge "implement missing seekdir and telldir"
* commit 'e5cabca516252addb5e305c8e1e0f35cafbcafbe':
  implement missing seekdir and telldir
2014-11-12 20:40:49 +00:00
Elliott Hughes
883682c7f8 am 298dfb6f: am 03dd63bd: am bbdfa518: Merge "gethostname.c: change to report ENAMETOOLONG error when buflen is less"
* commit '298dfb6f9d7889ce65f3dc1761448885f6d45522':
  gethostname.c: change to report ENAMETOOLONG error when buflen is less
2014-11-12 20:20:57 +00:00
Elliott Hughes
3cf425d0c7 am 674cc2b8: am a4adc811: am 83204d57: Merge "bionic tests: migrate gethostname test to unistd_test.cpp from system/extras"
* commit '674cc2b8a159115f968426ef58e181a7358e1cec':
  bionic tests: migrate gethostname test to unistd_test.cpp from system/extras
2014-11-12 20:20:56 +00:00
Elliott Hughes
298dfb6f9d am 03dd63bd: am bbdfa518: Merge "gethostname.c: change to report ENAMETOOLONG error when buflen is less"
* commit '03dd63bda8846db77cab6b4f17c8a2478f7ac65c':
  gethostname.c: change to report ENAMETOOLONG error when buflen is less
2014-11-12 20:16:06 +00:00
Elliott Hughes
674cc2b8a1 am a4adc811: am 83204d57: Merge "bionic tests: migrate gethostname test to unistd_test.cpp from system/extras"
* commit 'a4adc811d291d641e8291795d479bf8f426725b3':
  bionic tests: migrate gethostname test to unistd_test.cpp from system/extras
2014-11-12 20:16:05 +00:00
Elliott Hughes
03dd63bda8 am bbdfa518: Merge "gethostname.c: change to report ENAMETOOLONG error when buflen is less"
* commit 'bbdfa518830d49565966acea02796769434e0d74':
  gethostname.c: change to report ENAMETOOLONG error when buflen is less
2014-11-12 20:11:41 +00:00
Elliott Hughes
a4adc811d2 am 83204d57: Merge "bionic tests: migrate gethostname test to unistd_test.cpp from system/extras"
* commit '83204d5708eb49df05ea365be01e136ef7823752':
  bionic tests: migrate gethostname test to unistd_test.cpp from system/extras
2014-11-12 20:11:40 +00:00
Elliott Hughes
64c1152931 am bad436e8: am c05314a0: Merge "Fix tzdata update tools for \'backzone\'." into lmp-mr1-dev
* commit 'bad436e8b3c5b58742f7f6903fc30ce86b5210eb':
  Fix tzdata update tools for 'backzone'.
2014-11-12 17:32:58 +00:00
Elliott Hughes
38038009be am ea039a4a: am 1ca3350f: Upgrade bionic to tzdata2014j.
* commit 'ea039a4a4ebd2f5abf26d74fa800bf68cddb0ffa':
  Upgrade bionic to tzdata2014j.
2014-11-12 17:32:57 +00:00
Elliott Hughes
bad436e8b3 am c05314a0: Merge "Fix tzdata update tools for \'backzone\'." into lmp-mr1-dev
* commit 'c05314a0b230d6820e07bcc641e8a553b5196e86':
  Fix tzdata update tools for 'backzone'.
2014-11-12 17:28:49 +00:00
Elliott Hughes
ea039a4a4e am 1ca3350f: Upgrade bionic to tzdata2014j.
* commit '1ca3350f4c7b60afdb95784c9cb3ea5ba5ce591f':
  Upgrade bionic to tzdata2014j.
2014-11-12 17:28:48 +00:00
Elliott Hughes
c05314a0b2 Merge "Fix tzdata update tools for 'backzone'." into lmp-mr1-dev 2014-11-12 17:19:57 +00:00
Elliott Hughes
1ca3350f4c Upgrade bionic to tzdata2014j.
From the release notes:

   Changes affecting current and future time stamps

     Turks & Caicos' switch from US eastern time to UTC-4 year-round
     did not occur on 2014-11-02 at 02:00.  It's currently scheduled
     for 2015-11-01 at 02:00.  (Thanks to Chris Walton.)

   Changes affecting past time stamps

     Many pre-1989 time stamps have been corrected for Asia/Seoul and
     Asia/Pyongyang, based on sources for the Korean-language Wikipedia
     entry for time in Korea.  (Thanks to Sanghyuk Jung.)  Also, no
     longer guess that Pyongyang mimicked Seoul time after World War II,
     as this is politically implausible.

     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: Africa/Addis_Ababa, Africa/Asmara,
     Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
     Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
     Indian/Mayotte.

Bug: 18330681

(cherry picked from commit b11d8e057c)

Change-Id: Ifd48e7446e400dccae3afd5cbef96ca843775477
2014-11-11 19:56:09 -08:00
Elliott Hughes
371dcc189f Fix tzdata update tools for 'backzone'.
To maintain the status quo, we need to pull in backzone file. This file
can't be built on its own, so the easiest fix is to give zic(1) all the
files at once.

We also now have a situation where we have links to links, so we need to
dereference them until we find actual data.

Bug: 18330681

(cherry picked from commit 2c2463bd30)

Change-Id: I654b80518a7144038d8b3ea7223f49e2b1d2ad13
2014-11-11 19:55:35 -08:00
Elliott Hughes
d77cfd36e6 am d757f61f: am c25737a1: am 22271d0c: Merge "Upgrade bionic to tzdata2014j."
* commit 'd757f61f7fab5c68c9d12e7e4dbab617897e96d4':
  Upgrade bionic to tzdata2014j.
2014-11-12 03:44:22 +00:00
Elliott Hughes
77f8f38eba am 5daebfaa: am db71c2f3: am 440c80ad: Merge "Fix tzdata update tools for \'backzone\'."
* commit '5daebfaa6c58cddb79eb78af82964d5ba8a12c06':
  Fix tzdata update tools for 'backzone'.
2014-11-12 03:44:21 +00:00
Elliott Hughes
d757f61f7f am c25737a1: am 22271d0c: Merge "Upgrade bionic to tzdata2014j."
* commit 'c25737a193b77561a07cb778a947cd547148c46e':
  Upgrade bionic to tzdata2014j.
2014-11-12 02:53:45 +00:00
Elliott Hughes
5daebfaa6c am db71c2f3: am 440c80ad: Merge "Fix tzdata update tools for \'backzone\'."
* commit 'db71c2f3d22140cb2685362c35d93c374a621b7c':
  Fix tzdata update tools for 'backzone'.
2014-11-12 02:53:38 +00:00
Elliott Hughes
c25737a193 am 22271d0c: Merge "Upgrade bionic to tzdata2014j."
* commit '22271d0c200c8c2f7c7c960a8751eed0faa708ec':
  Upgrade bionic to tzdata2014j.
2014-11-12 02:35:54 +00:00
Elliott Hughes
db71c2f3d2 am 440c80ad: Merge "Fix tzdata update tools for \'backzone\'."
* commit '440c80ad47fd748251b09d5146f2cb896d75724f':
  Fix tzdata update tools for 'backzone'.
2014-11-12 02:28:11 +00:00
Daniel Rosenberg
6eccde6a40 am 7aa4e50a: am bb50a667: am 1fb6a4d5: Merge "bionic: libc: Added path to vendor build properties file."
* commit '7aa4e50a0973f0c5e5705418131e132051481422':
  bionic: libc: Added path to vendor build properties file.
2014-11-11 22:56:37 +00:00
Daniel Rosenberg
7aa4e50a09 am bb50a667: am 1fb6a4d5: Merge "bionic: libc: Added path to vendor build properties file."
* commit 'bb50a667441b0a2298eaa9ddeb7baf444b101947':
  bionic: libc: Added path to vendor build properties file.
2014-11-11 22:50:48 +00:00
Daniel Rosenberg
bb50a66744 am 1fb6a4d5: Merge "bionic: libc: Added path to vendor build properties file."
* commit '1fb6a4d5c034423d4a22ded0bd3d87a14a6cad9a':
  bionic: libc: Added path to vendor build properties file.
2014-11-11 22:43:49 +00:00
Andreas Gampe
417c40b110 am 44c32aaf: am 5f93f65d: am 1e75a9b5: Merge "Bionic: Make DISALLOW_COPY_AND_ASSIGN conditional"
* commit '44c32aaf119da1e5c70565df2bde5f5844a37c76':
  Bionic: Make DISALLOW_COPY_AND_ASSIGN conditional
2014-11-11 20:05:57 +00:00
Andreas Gampe
44c32aaf11 am 5f93f65d: am 1e75a9b5: Merge "Bionic: Make DISALLOW_COPY_AND_ASSIGN conditional"
* commit '5f93f65d3f514c39e76c0ae1a117c45ac2f72a67':
  Bionic: Make DISALLOW_COPY_AND_ASSIGN conditional
2014-11-11 19:58:43 +00:00
Andreas Gampe
5f93f65d3f am 1e75a9b5: Merge "Bionic: Make DISALLOW_COPY_AND_ASSIGN conditional"
* commit '1e75a9b56ad746ff038ca956bd3d83fe4b9a156f':
  Bionic: Make DISALLOW_COPY_AND_ASSIGN conditional
2014-11-11 19:52:55 +00:00
Christopher Ferris
b36709560c am 42a86ae3: am ea8913fe: am 1e1ae4a7: Merge "Add align/overread tests for strlcpy/strlcat."
* commit '42a86ae34c303ebafcc6f7aacce5f954591e2db6':
  Add align/overread tests for strlcpy/strlcat.
2014-11-10 23:50:11 +00:00
Christopher Ferris
42a86ae34c am ea8913fe: am 1e1ae4a7: Merge "Add align/overread tests for strlcpy/strlcat."
* commit 'ea8913fefdfcd57b5f960db65dcf482ace3d8083':
  Add align/overread tests for strlcpy/strlcat.
2014-11-10 23:44:57 +00:00
Christopher Ferris
ea8913fefd am 1e1ae4a7: Merge "Add align/overread tests for strlcpy/strlcat."
* commit '1e1ae4a74e42de07a5654f6a1774786fb4652094':
  Add align/overread tests for strlcpy/strlcat.
2014-11-10 23:42:28 +00:00
Elliott Hughes
e34d70ab89 am 5a01f82c: am 307d61c3: am 6e7e2d20: Merge "Add the <dirent.h> feature macros glibc uses."
* commit '5a01f82c15f06ad4e1206570fd27a2fa94571d00':
  Add the <dirent.h> feature macros glibc uses.
2014-11-10 23:31:22 +00:00
Elliott Hughes
5a01f82c15 am 307d61c3: am 6e7e2d20: Merge "Add the <dirent.h> feature macros glibc uses."
* commit '307d61c3385909dbbd28cfbb88cc2599fc5d7fdc':
  Add the <dirent.h> feature macros glibc uses.
2014-11-10 23:26:23 +00:00
Elliott Hughes
307d61c338 am 6e7e2d20: Merge "Add the <dirent.h> feature macros glibc uses."
* commit '6e7e2d201f91fe5a04adc1b49ebb589dc56b425f':
  Add the <dirent.h> feature macros glibc uses.
2014-11-10 23:23:12 +00:00
Elliott Hughes
91475e0fda am af92bca1: am b80be438: am 6330b70c: Merge "Remove temporary compatibility hack."
* commit 'af92bca1206d2fa796e54e791a17a79d7860f3cd':
  Remove temporary compatibility hack.
2014-11-10 22:23:20 +00:00
Elliott Hughes
af92bca120 am b80be438: am 6330b70c: Merge "Remove temporary compatibility hack."
* commit 'b80be43814a1562b0b66b435a7759cfed554287f':
  Remove temporary compatibility hack.
2014-11-10 22:19:15 +00:00
Elliott Hughes
b80be43814 am 6330b70c: Merge "Remove temporary compatibility hack."
* commit '6330b70cac8072007be9c351a934f9ff10f30cb5':
  Remove temporary compatibility hack.
2014-11-10 22:09:14 +00:00
Elliott Hughes
fdea8b0c86 am 469d3998: am db37cd61: am b6360093: Merge "Fix struct stat to match POSIX 2008."
* commit '469d399852d6f0f513ad99a63c7678a5e69f905e':
  Fix struct stat to match POSIX 2008.
2014-11-10 17:41:39 +00:00
Elliott Hughes
469d399852 am db37cd61: am b6360093: Merge "Fix struct stat to match POSIX 2008."
* commit 'db37cd61e5e7c2ede11ce7a8eade9c31b7796c09':
  Fix struct stat to match POSIX 2008.
2014-11-10 17:33:37 +00:00
Elliott Hughes
db37cd61e5 am b6360093: Merge "Fix struct stat to match POSIX 2008."
* commit 'b63600934c62beb09514e2ced1fce1bdb489195f':
  Fix struct stat to match POSIX 2008.
2014-11-10 17:29:21 +00:00
Elliott Hughes
a3e8ee0078 am a5a7078a: am 3a3f388c: am 47b9083b: Merge "Add sethostname(2)."
* commit 'a5a7078a8e4cf6bcb98b095e5e8af0dba5b61a37':
  Add sethostname(2).
2014-11-08 01:52:50 +00:00
Elliott Hughes
a5a7078a8e am 3a3f388c: am 47b9083b: Merge "Add sethostname(2)."
* commit '3a3f388c3c24457ea0f452f6abc7f340e6fc640b':
  Add sethostname(2).
2014-11-08 01:43:02 +00:00
Elliott Hughes
3a3f388c3c am 47b9083b: Merge "Add sethostname(2)."
* commit '47b9083b582bc8f7aefa0b6b4df051cba835ac0f':
  Add sethostname(2).
2014-11-08 00:59:51 +00:00
The Android Open Source Project
11f66116b9 am 80535617: am b4471046: am 2ed9ee1e: Merge remote-tracking branch \'goog/stage-aosp-master\' into HEAD
* commit '8053561750883244c227ddcc0d62ad7514896773':
2014-11-07 13:35:14 +00:00
Elliott Hughes
229cad0664 am 5d6f1004: am 16951877: am 6e555e40: Merge "Implement all the POSIX _l functions."
* commit '5d6f100494512ddeb6d862c694edbbe9e3476506':
  Implement all the POSIX _l functions.
2014-11-07 13:35:13 +00:00
The Android Open Source Project
8053561750 am b4471046: am 2ed9ee1e: Merge remote-tracking branch \'goog/stage-aosp-master\' into HEAD
* commit 'b447104656ff77caf4d5bcfd547533d941aef804':
2014-11-07 13:30:20 +00:00
Elliott Hughes
5d6f100494 am 16951877: am 6e555e40: Merge "Implement all the POSIX _l functions."
* commit '1695187723bd2fc2e222a08630523886f48607e4':
  Implement all the POSIX _l functions.
2014-11-07 13:30:18 +00:00
The Android Open Source Project
b447104656 am 2ed9ee1e: Merge remote-tracking branch \'goog/stage-aosp-master\' into HEAD
* commit '2ed9ee1e938a94b563ab700dc5017a968d2591ad':
2014-11-07 13:27:16 +00:00
Elliott Hughes
1695187723 am 6e555e40: Merge "Implement all the POSIX _l functions."
* commit '6e555e40b0596e452deb6ccbce89d084ad18b658':
  Implement all the POSIX _l functions.
2014-11-07 13:27:07 +00:00
Elliott Hughes
9ddc76d1a5 am 85d8fc46: am cd30cb36: am 08a70184: Merge "Add POSIX lcong48."
* commit '85d8fc4606aad997c41829184fffce53017f31df':
  Add POSIX lcong48.
2014-11-07 04:16:17 +00:00
Elliott Hughes
85d8fc4606 am cd30cb36: am 08a70184: Merge "Add POSIX lcong48."
* commit 'cd30cb3633c2a7409267dd1821e33937e65461ad':
  Add POSIX lcong48.
2014-11-07 01:03:35 +00:00
Elliott Hughes
95aaf1fe38 am a9f6582b: am e449e68f: am 39ba3035: Merge "Fix our <complex.h> support."
* commit 'a9f6582b2a182d6489173f31ca5bd8938591057c':
  Fix our <complex.h> support.
2014-11-06 21:08:35 +00:00
Yabin Cui
e5fe4184e9 am 585d5b8a: am c50ae0b4: am 99cf8d08: Merge "make all bionic death tests not dumpable"
* commit '585d5b8a93d77770c216286e36c844997672a730':
  make all bionic death tests not dumpable
2014-11-06 21:08:01 +00:00
Elliott Hughes
a9f6582b2a am e449e68f: am 39ba3035: Merge "Fix our <complex.h> support."
* commit 'e449e68f367ec8072bc950dbeb47c93d5b72da3f':
  Fix our <complex.h> support.
2014-11-06 19:53:23 +00:00
Yabin Cui
585d5b8a93 am c50ae0b4: am 99cf8d08: Merge "make all bionic death tests not dumpable"
* commit 'c50ae0b41bacea1715daf815ba2f30f342e3342c':
  make all bionic death tests not dumpable
2014-11-06 19:27:51 +00:00
Elliott Hughes
566c3503fc am c5e05502: am fa7e13b3: am a80f11ba: Merge "Add support for listing missing POSIX 2013 symbols."
* commit 'c5e05502f2b8584c768ca87d8a4d48bf48f2c018':
  Add support for listing missing POSIX 2013 symbols.
2014-11-06 06:17:33 +00:00
Elliott Hughes
c5e05502f2 am fa7e13b3: am a80f11ba: Merge "Add support for listing missing POSIX 2013 symbols."
* commit 'fa7e13b3af6ee9a18a9f8b97d930dc2930b8936f':
  Add support for listing missing POSIX 2013 symbols.
2014-11-06 06:14:09 +00:00
Yabin Cui
a6355bccb8 am 753a0239: am c68a9105: am 23113831: Merge "check invalid file offset when loading library"
* commit '753a0239f5400c199224af58ac41d407c4a7de7f':
  check invalid file offset when loading library
2014-11-05 20:26:23 +00:00
Yabin Cui
753a0239f5 am c68a9105: am 23113831: Merge "check invalid file offset when loading library"
* commit 'c68a9105375f4cc8d44a14485df4f6067abd2268':
  check invalid file offset when loading library
2014-11-05 20:18:15 +00:00
Elliott Hughes
2eba0a18aa am 461c2f45: am eac625a2: am c13a2044: Merge "Fix newlocale with a NULL locale name."
* commit '461c2f45e971224bbfb6f2229350e98e07935714':
  Fix newlocale with a NULL locale name.
2014-11-05 03:29:42 +00:00
Elliott Hughes
9e5d1560b0 am 33fb6092: am bce54a2b: am 57df00a4: Merge "Improve math tests to allow a specific ulp bound."
* commit '33fb609258a172d9f1de73e3af4607570b5240cb':
  Improve math tests to allow a specific ulp bound.
2014-11-05 03:29:40 +00:00
Chih-Hung Hsieh
7a2886e6ea am 625056b0: am 45f736b3: am 6c8f2475: Merge "Fix warning of missing field initializer."
* commit '625056b00a2b20950c24cf1a41e500f619d018bf':
  Fix warning of missing field initializer.
2014-11-05 03:29:39 +00:00
Elliott Hughes
461c2f45e9 am eac625a2: am c13a2044: Merge "Fix newlocale with a NULL locale name."
* commit 'eac625a2104459618c4cdc19970a90448deacdf4':
  Fix newlocale with a NULL locale name.
2014-11-05 02:57:27 +00:00
Elliott Hughes
33fb609258 am bce54a2b: am 57df00a4: Merge "Improve math tests to allow a specific ulp bound."
* commit 'bce54a2bb3d366fa6fa5bee52226ac9e9daf25a2':
  Improve math tests to allow a specific ulp bound.
2014-11-05 02:57:26 +00:00
Chih-Hung Hsieh
625056b00a am 45f736b3: am 6c8f2475: Merge "Fix warning of missing field initializer."
* commit '45f736b32389ad5074d72a974ea153d4e64b234b':
  Fix warning of missing field initializer.
2014-11-05 02:57:25 +00:00
Dmitriy Ivanov
bac20fe26d am ca564e2a: Revert "Revert "Fix arm64 and arm builds.""
* commit 'ca564e2a994df5976869ec655c7d4056deefcaa2':
  Revert "Revert "Fix arm64 and arm builds.""
2014-11-04 17:46:43 +00:00
Dmitriy Ivanov
78d367d9ca am 0416d88f: Revert "Revert "Fix symbol lookup order during relocation""
* commit '0416d88f9c90dcb1b97947a27a7c05f3627484c4':
  Revert "Revert "Fix symbol lookup order during relocation""
2014-11-04 17:46:42 +00:00
Dmitriy Ivanov
713d0a6715 am 1c095774: Revert "Revert "Fix mips build""
* commit '1c095774c0527027bf3f7013ba15e9913d5f1853':
  Revert "Revert "Fix mips build""
2014-11-04 17:46:41 +00:00
Dmitriy Ivanov
0f11d1c899 am a42dfda5: Revert "Revert "Remove unnecessary lookups during relocations""
* commit 'a42dfda53acc6127b5046672686b67a66be168eb':
  Revert "Revert "Remove unnecessary lookups during relocations""
2014-11-04 17:46:40 +00:00
Dmitriy Ivanov
4662831346 am c343cac6: Revert "Revert "Fix relocation to look for symbols in local group""
* commit 'c343cac62bfd2933e36357b206fdd81da7610164':
  Revert "Revert "Fix relocation to look for symbols in local group""
2014-11-04 17:46:39 +00:00
Dmitriy Ivanov
670ea93739 am 7ca96a07: Revert "Revert "Add RTLD_NODELETE flag support""
* commit '7ca96a075b778f1fa2ad265350879238cbcb4d09':
  Revert "Revert "Add RTLD_NODELETE flag support""
2014-11-04 17:46:38 +00:00
Dmitriy Ivanov
a03f007415 am 68a555b5: Revert "Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL""
* commit '68a555b57e2bed1292bf28609be693a95b5fdc6b':
  Revert "Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL""
2014-11-04 17:46:37 +00:00
Dmitriy Ivanov
ca564e2a99 Revert "Revert "Fix arm64 and arm builds.""
This reverts commit 494bee796a.
2014-11-04 09:38:27 -08:00
Dmitriy Ivanov
0416d88f9c Revert "Revert "Fix symbol lookup order during relocation""
This reverts commit f947be2889.
2014-11-04 09:38:18 -08:00
Dmitriy Ivanov
1c095774c0 Revert "Revert "Fix mips build""
This reverts commit 4402804c35.
2014-11-04 09:38:10 -08:00
Dmitriy Ivanov
a42dfda53a Revert "Revert "Remove unnecessary lookups during relocations""
This reverts commit eae0977255.
2014-11-04 09:38:00 -08:00
Dmitriy Ivanov
c343cac62b Revert "Revert "Fix relocation to look for symbols in local group""
This reverts commit 00dce52553.
2014-11-04 09:37:51 -08:00
Dmitriy Ivanov
7ca96a075b Revert "Revert "Add RTLD_NODELETE flag support""
This reverts commit 69c5d108a5.
2014-11-04 09:37:28 -08:00
Dmitriy Ivanov
68a555b57e Revert "Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL""
This reverts commit 9d3382d97a.
2014-11-04 09:37:19 -08:00
Dmitriy Ivanov
77c0b5b5ba am 39af7592: am 9d3382d9: Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
* commit '39af759260454e001b261170a94f85520db4ef12':
  Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
2014-11-04 17:22:53 +00:00
Dmitriy Ivanov
77b851f925 am e1d9881a: am 69c5d108: Revert "Add RTLD_NODELETE flag support"
* commit 'e1d9881a8d85dcd6bbf6895c3566b62589b715c1':
  Revert "Add RTLD_NODELETE flag support"
2014-11-04 17:22:52 +00:00
Dmitriy Ivanov
4bf14534d2 am 47fb0b78: am 00dce525: Revert "Fix relocation to look for symbols in local group"
* commit '47fb0b781628af5cbd5e97150c8e9511d718bf97':
  Revert "Fix relocation to look for symbols in local group"
2014-11-04 17:22:51 +00:00
Dmitriy Ivanov
8855f5884a am ce4d16bb: am eae09772: Revert "Remove unnecessary lookups during relocations"
* commit 'ce4d16bbaa34c0b97abc7a9d157d65e66ed68c79':
  Revert "Remove unnecessary lookups during relocations"
2014-11-04 17:22:50 +00:00
Dmitriy Ivanov
7df7fb0c90 am 7cb57841: am 4402804c: Revert "Fix mips build"
* commit '7cb57841a58165e6aeca14f987e4391cab38bbbd':
  Revert "Fix mips build"
2014-11-04 17:22:49 +00:00
Dmitriy Ivanov
7e59a56ac9 am 5c9afdc0: am f947be28: Revert "Fix symbol lookup order during relocation"
* commit '5c9afdc0c1bb4fa4c8287075a8711d25d229d593':
  Revert "Fix symbol lookup order during relocation"
2014-11-04 17:22:48 +00:00
Dmitriy Ivanov
4aaafab73b am 4c9b34bd: am 494bee79: Revert "Fix arm64 and arm builds."
* commit '4c9b34bd8acc305241ae14b5d03db4054f1ce26e':
  Revert "Fix arm64 and arm builds."
2014-11-04 17:22:47 +00:00
Dmitriy Ivanov
39af759260 am 9d3382d9: Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
* commit '9d3382d97a2cdc8c8f78c7825ece16f09292fc36':
  Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
2014-11-04 17:17:58 +00:00
Dmitriy Ivanov
e1d9881a8d am 69c5d108: Revert "Add RTLD_NODELETE flag support"
* commit '69c5d108a5cb44167a04d42ffdad6a39648ed235':
  Revert "Add RTLD_NODELETE flag support"
2014-11-04 17:17:57 +00:00
Dmitriy Ivanov
47fb0b7816 am 00dce525: Revert "Fix relocation to look for symbols in local group"
* commit '00dce525530c5d26c20750863f3e9890b468787a':
  Revert "Fix relocation to look for symbols in local group"
2014-11-04 17:17:56 +00:00
Dmitriy Ivanov
ce4d16bbaa am eae09772: Revert "Remove unnecessary lookups during relocations"
* commit 'eae09772558016836f1356816f4d1d0be498d74c':
  Revert "Remove unnecessary lookups during relocations"
2014-11-04 17:17:55 +00:00
Dmitriy Ivanov
7cb57841a5 am 4402804c: Revert "Fix mips build"
* commit '4402804c35c5c5992c728c6f3cee3bdbd325819e':
  Revert "Fix mips build"
2014-11-04 17:17:54 +00:00
Dmitriy Ivanov
5c9afdc0c1 am f947be28: Revert "Fix symbol lookup order during relocation"
* commit 'f947be2889639defc6424b1813ccc779528b7598':
  Revert "Fix symbol lookup order during relocation"
2014-11-04 17:17:53 +00:00
Dmitriy Ivanov
4c9b34bd8a am 494bee79: Revert "Fix arm64 and arm builds."
* commit '494bee796aa60131981308493e0e295493537e12':
  Revert "Fix arm64 and arm builds."
2014-11-04 17:17:52 +00:00
Dmitriy Ivanov
9d3382d97a Revert "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
This reverts commit c85e82dde5.

Bug: 18222321
Bug: 18211780
Change-Id: I32f4048bd5ea85dc8a3dfccce8cf141b241ab692
2014-11-03 22:15:29 -08:00
Dmitriy Ivanov
69c5d108a5 Revert "Add RTLD_NODELETE flag support"
This reverts commit c87f65d2cd.

Bug: 18222321
Bug: 18211780
Change-Id: I00252e26a28a41ab9f1e2dd3b32f0f80d86297f1
2014-11-03 22:15:26 -08:00
Dmitriy Ivanov
00dce52553 Revert "Fix relocation to look for symbols in local group"
This reverts commit fd2747bb58.

Bug: 18222321
Bug: 18211780
Change-Id: I2d4ebab1e73b7277161af76b99f8249825b22d65
2014-11-03 22:15:20 -08:00
Dmitriy Ivanov
eae0977255 Revert "Remove unnecessary lookups during relocations"
This reverts commit 6442dbd3bc.

Bug: 18222321
Bug: 18211780
Change-Id: I87b18a32238a1f75afe56149221b6691f50d9f56
2014-11-03 22:15:17 -08:00
Dmitriy Ivanov
4402804c35 Revert "Fix mips build"
This reverts commit bf3d5ef5fd.

Bug: 18222321
Bug: 18211780
Change-Id: I902ed888197b358c77303f1acb6d5ffd7ae6dcd3
2014-11-03 22:15:13 -08:00
Dmitriy Ivanov
f947be2889 Revert "Fix symbol lookup order during relocation"
This reverts commit 976402cca1.

Bug: 18222321
Bug: 18211780
Change-Id: Iafdd3d843db7b1cf288be9a0232022816622c944
2014-11-03 22:15:08 -08:00
Dmitriy Ivanov
494bee796a Revert "Fix arm64 and arm builds."
This reverts commit 445111a1c9.

Bug: 18222321
Bug: 18211780
Change-Id: I4fa9e1b63ec9b528f8bfed73c2ec15046c43a2fe
2014-11-03 22:14:19 -08:00
Elliott Hughes
2fa23458ba am 6bb5579b: resolved conflicts for merge of d18f4b25 to lmp-mr1-dev-plus-aosp
* commit '6bb5579b8e8194a54354a88b2d685740c30fc3b9':
  Ensure we initialize stdin/stdout/stderr's recursive mutexes.
2014-11-04 02:44:26 +00:00
Elliott Hughes
6bb5579b8e resolved conflicts for merge of d18f4b25 to lmp-mr1-dev-plus-aosp
Change-Id: Ie1ebacd432a61d680bb1325aa369db717d39299d
2014-11-03 18:31:10 -08:00
Dan Albert
f75df00fae am a0ba3c83: am 5939060b: am 695781b6: Merge "Make host tests depend on /system/etc/hosts."
* commit 'a0ba3c83edd975159913aacc992f3f9400e332f5':
  Make host tests depend on /system/etc/hosts.
2014-11-04 01:59:27 +00:00
Elliott Hughes
b56c4973bd am 05e3e707: am 90138639: am e76ea9bb: Merge "Ensure we initialize stdin/stdout/stderr\'s recursive mutexes."
* commit '05e3e70772ea7c42ec2499212cd7fd876ab77cd3':
  Ensure we initialize stdin/stdout/stderr's recursive mutexes.
2014-11-04 01:59:25 +00:00
Dan Albert
a0ba3c83ed am 5939060b: am 695781b6: Merge "Make host tests depend on /system/etc/hosts."
* commit '5939060ba54fbab71c53b95310bfd798a35972ad':
  Make host tests depend on /system/etc/hosts.
2014-11-04 01:04:27 +00:00
Elliott Hughes
05e3e70772 am 90138639: am e76ea9bb: Merge "Ensure we initialize stdin/stdout/stderr\'s recursive mutexes."
* commit '90138639a50495fd63238524e9a0a0758cd574c6':
  Ensure we initialize stdin/stdout/stderr's recursive mutexes.
2014-11-04 01:04:25 +00:00
Elliott Hughes
d18f4b2578 Ensure we initialize stdin/stdout/stderr's recursive mutexes.
(cherry-pick of 6a03abcfd23f31d1df06eb0059830e22621282bb.)

Bug: 18208568
Change-Id: I9da16ce0f9375bc363d1d02be706d73fd3b1e150
2014-11-03 13:46:41 -08:00
Dmitriy Ivanov
ae0757ff27 am d3cd6618: resolved conflicts for merge of 926797a8 to lmp-mr1-dev-plus-aosp
* commit 'd3cd66185f63a75ec9f0fca69bd6594c310dbaa8':
  Fix arm64 and arm builds.
  Fix symbol lookup order during relocation
  Fix mips build
  Remove unnecessary lookups during relocations
  Fix relocation to look for symbols in local group
  Correct way to specify additional dependencies
  Add dlfcn_test to glibc test suite.
  Ignore DT_BIND_NOW (0x18)
  Resolve "unused DT entry" warnings for x86_64
  Add RTLD_NODELETE flag support
  Fix mips build
  Fix unused DT entry warnings.
  Return has_DT_SYMBOLIC flag.
  Fix a couple more cases of missing CLOEXEC.
  Temporary disable DL_WARNs for unused DT_*
  Fix 64bit build
  Fix some unused DT_ warnings
  Remove has_DT_SYMBOLIC flag
  Fix dlsym() to take into account RTLD_GLOBAL/LOCAL
  Reformatting
2014-11-02 01:14:04 +00:00
Dmitriy Ivanov
d3cd66185f resolved conflicts for merge of 926797a8 to lmp-mr1-dev-plus-aosp
Change-Id: I3b46a714fd1236431fa08872f280e4ac4c4880d1
2014-11-01 18:02:31 -07:00
Dmitriy Ivanov
fc6a97d292 am b1c019f3: am 75cd66aa: am 38ff8822: Merge "Revert "Use local copy of the library name on dlopen""
* commit 'b1c019f32ad5da8649b9792b8526806b1ebe2878':
  Revert "Use local copy of the library name on dlopen"
2014-11-01 04:02:22 +00:00
Dmitriy Ivanov
b1c019f32a am 75cd66aa: am 38ff8822: Merge "Revert "Use local copy of the library name on dlopen""
* commit '75cd66aaf60f47e04359738a9c8d92588a1f7834':
  Revert "Use local copy of the library name on dlopen"
2014-11-01 03:00:56 +00:00
Dmitriy Ivanov
445111a1c9 Fix arm64 and arm builds.
Bug: 18186310

(cherry picked from commit 4e446b19d8)

Change-Id: Ibc77a9ade36dc6b9bf5a316b5ab9ae5f0a70e826
2014-10-31 19:29:04 -07:00
Dmitriy Ivanov
d79e427b73 am dcafe93d: am 6cba0e35: am 36ffc73e: Merge "Fix arm64 and arm builds."
* commit 'dcafe93db23dbda62e1d9b6c2b2deb670f96980e':
  Fix arm64 and arm builds.
2014-11-01 00:45:39 +00:00
Dmitriy Ivanov
dcafe93db2 am 6cba0e35: am 36ffc73e: Merge "Fix arm64 and arm builds."
* commit '6cba0e35ec62e86689556142a08f547f27b703dd':
  Fix arm64 and arm builds.
2014-11-01 00:39:45 +00:00
Dmitriy Ivanov
976402cca1 Fix symbol lookup order during relocation
Relocate symbol against DF_1_GLOBAL shared libraries
  loaded before this shared library. This includes
  main executable, ld_preloads and other libraries
  that have DF_1_GLOBAL flag set.

Bug: 2643900
Bug: 15432753
Bug: 18186310

(cherry picked from commit d225a5e652)

Change-Id: I4e889cdf2dfbf8230b0790053d311ee6b0d0ee2d
2014-10-31 17:10:30 -07:00
Dmitriy Ivanov
bf3d5ef5fd Fix mips build
Bug: 18186310

(cherry picked from commit 90b74fb867)

Change-Id: I8d4ed254e5c421b65b62c401abdb1ee07e5dc3b2
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
6442dbd3bc Remove unnecessary lookups during relocations
local_group includes this library and its dependencies.

Bug: 18186310

(cherry picked from commit e47b3f8456)

Change-Id: I93c2d873e924df7319569307444bf603d7d27bf0
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
fd2747bb58 Fix relocation to look for symbols in local group
The local group is a sequence of libraries in default (breadth-first)
  order. It allows RTLD_LOCALLY loaded library to correctly relocate
  symbols within its group (see test-cases).

  Local group lookup is performed after main executable and ld_preloads.

Bug: 2643900
Bug: 15432753
Bug: 18186310

(cherry picked from commit cfa97f172d)

Change-Id: I5fa8c673f929e4652c738912c7ae078d7ec286d2
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
4d0c1f673f Correct way to specify additional dependencies
Previous one was not covering all the targets

Bug: 17548097
Bug: 18186310

(cherry picked from commit 4a9e1937c5)

Change-Id: I2cd9e58893555d16cbfe291b2d1279621489d5ad
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
382e06ce8e Add dlfcn_test to glibc test suite.
Bug: 18186310

(cherry picked from commit eb27bbae8f)

Change-Id: I1d608dfa12dbafbdcdb8bc6d818c5872404c19e0
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
e4bc6f026a Ignore DT_BIND_NOW (0x18)
Bug: 18186310
Bug: 17552334

(cherry picked from commit ea6eae182a)

Change-Id: I07d6f6fbb462fea329581d0da02f6d88be1c262f
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
1d3e81a9e7 Resolve "unused DT entry" warnings for x86_64
Bug: 18186310

(cherry picked from commit 513e29e16f)

Change-Id: I1e4c5af2cdc09dc978c7a78fcdcf8796c919751e
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
c87f65d2cd Add RTLD_NODELETE flag support
Bug: 18186310
Bug: https://code.google.com/p/android/issues/detail?id=64069

(cherry picked from commit 1b20dafdbe)

Change-Id: Ic02eec22a7c322ece65eb40730a3404f611526b1
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
210ff1b27b Fix mips build
Bug: 18186310

(cherry picked from commit ecf532fa1c)

Change-Id: Ia12f2fa28c8cd3204eb7d6b4c7d872f4e81fb8ef
2014-10-31 17:04:00 -07:00
Dmitriy Ivanov
0f47d9c1ce Fix unused DT entry warnings.
DT_STRSZ Implement strtab boundary checks
 DT_FLAGS_1 Warn if flags other than DF_1_NOW|DF_1_GLOBAL are set

Bug: 17552334
Bug: 18186310

(cherry picked from commit 6cdeb5234d)

Change-Id: I7ffc7bc600798308a77ad949a644949b64250ae2
2014-10-31 17:03:59 -07:00
Dmitriy Ivanov
f90e21004e Return has_DT_SYMBOLIC flag.
This reverts commit 8f61d99183

 Despite the fact that static linker does all the work while linking
 -Bsymbolic executables, according to the SCO doc following DT_SYMBOLIC
 and DF_SYMBOLIC flags is still a requirement for the dynamic linker
 as well.

 (see http://www.sco.com/developers/gabi/2012-12-31/ch5.dynamic.html)

Bug: 18186310

(cherry picked from commit 96bc37f2e1)

Change-Id: Ie217be4f3305d877066e4cfe91975ae1c7768330
2014-10-31 17:03:59 -07:00
Elliott Hughes
748fbe5c41 Fix a couple more cases of missing CLOEXEC.
The debuggerd case can probably never happen, because you're crashing at this
point anyway. The system property one seems possible though.

Bug: 18186310

(cherry picked from commit 0dc39f9952)

Change-Id: I3e84488fc246f6c28cbd82e96d0cd4343a12c28a
2014-10-31 17:03:21 -07:00
Dmitriy Ivanov
d5eb10875a Temporary disable DL_WARNs for unused DT_*
Bug: 17552334
Bug: 18186310

(cherry picked from commit 1b77423eff)

Change-Id: I8a9d05195a862bc287fff7156913606f0311b8bb
2014-10-31 17:02:14 -07:00
Dmitriy Ivanov
09608848ed Fix 64bit build
Bug: 18186310

(cherry picked from commit f240aa8089)

Change-Id: Id46f1f9be90a17a58fb44d3540095c8c685c9726
2014-10-31 17:02:14 -07:00
Dmitriy Ivanov
634a045c5c Fix some unused DT_ warnings
* DT_PLTGOT - ignored for non-mips
 * DT_RELCOUNT/RELACOUNT - ignored
 * DT_RELENT/RELAENT - sanity checks
 * DT_SYMENT - sanity check
 * DT_SONAME - ignore for now.

Bug: 18186310

(cherry picked from commit 4a6e9a835a)

Change-Id: Ib40095f0770d65628fc7abac5a471378de35ebe7
2014-10-31 17:02:14 -07:00
Dmitriy Ivanov
b364d95380 Remove has_DT_SYMBOLIC flag
From the elf-spec: "Symbolically bound shared objects are
  identified by the .dynamic entry DT_SYMBOLIC. This tag is
  informational only; the runtime linker processes symbol
  lookups from these objects in the same manner as any
  other object."

Bug: 18186310

(cherry picked from commit 8f61d99183)

Change-Id: I37024799ac8d1837993c8ae78780a448bedd6539
2014-10-31 17:02:13 -07:00
Dmitriy Ivanov
c85e82dde5 Fix dlsym() to take into account RTLD_GLOBAL/LOCAL
Symbols from libraries opened with RTLD_LOCAL (default)
  should not be visible via dlsym(RLTD_DEFAULT/RTLD_NEXT, .)

Bug: 17512583
Bug: 18186310

(cherry picked from commit e8ba50fe0d)

Change-Id: Idf6bbe2233fb2bfc0c88677e7d1fc518fb3f7a8b
2014-10-31 17:02:13 -07:00
Dmitriy Ivanov
926797a8a9 Reformatting
No functional changes.

Bug: 18186310

(cherry picked from commit 6abf624d12)]

Change-Id: I0acf52d8ee7fe2d4f44bc832cbe9fabe1782f03f
2014-10-31 17:02:13 -07:00
Dmitriy Ivanov
53fa1d13f4 am eb46dd98: am a334934f: am f33ad400: Merge "Fix symbol lookup order during relocation"
* commit 'eb46dd98ab903938cd5863da7d614d3ec03c0722':
  Fix symbol lookup order during relocation
2014-11-01 00:01:35 +00:00
Dmitriy Ivanov
eb46dd98ab am a334934f: am f33ad400: Merge "Fix symbol lookup order during relocation"
* commit 'a334934f66386ecdf3ec07daf0b651fcf3b8dcce':
  Fix symbol lookup order during relocation
2014-10-31 23:57:29 +00:00
Dmitriy Ivanov
034f6105d9 am c663c2ae: am 703581a3: am 74c0ccd4: Merge "Use local copy of the library name on dlopen"
* commit 'c663c2ae3ee6edf69342b1535237ffdc8489d2d9':
  Use local copy of the library name on dlopen
2014-10-31 23:02:48 +00:00
Dmitriy Ivanov
c663c2ae3e am 703581a3: am 74c0ccd4: Merge "Use local copy of the library name on dlopen"
* commit '703581a3220123a4fc44acbf3a94c835a7cf5ed0':
  Use local copy of the library name on dlopen
2014-10-31 22:57:06 +00:00
Dan Albert
b5c391eeed am 64b5940b: am 653263a9: Only use <atomic> for C++11 and newer.
* commit '64b5940bc3e6202da16a5c1f24a380169032e51d':
  Only use <atomic> for C++11 and newer.
2014-10-31 06:17:44 +00:00
Dan Albert
64b5940bc3 am 653263a9: Only use <atomic> for C++11 and newer.
* commit '653263a96459c5c1811623bd84201c324a870280':
  Only use <atomic> for C++11 and newer.
2014-10-31 06:12:21 +00:00
Dan Albert
653263a964 Only use <atomic> for C++11 and newer.
Any pre-C++11 clients of stdatomic.h that use libc++ are being forced
over to <atomic>, which they don't have the language support to use.

Bug:17736764

Change-Id: I62445c1f2541410a1569498c09433c7196635537
(cherry picked from commit 3ce0769aa5)
2014-10-30 13:22:34 -07:00
Elliott Hughes
8fc0e09a01 am 20cc6b69: Merge remote-tracking branch \'goog/lmp-mr1-ub-dev\' into manualmerge
* commit '20cc6b695a8ceaf801f53f0526f0ed5d588d7d9d':
  Fix the type of u_ar0 in <sys/user.h>.
  Add greg_t for arm64.
  POSIX says <signal.h> gets you ucontext_t.
  Add in_port_t and move it and in_addr_t to the correct header file.
  Add stpcpy assembler version.
  Cleanup arm assembly.
  Add __memcpy_chk assembly for 64 bit.
  Clean up the architecture-specific makefiles.
  No arm source refers to SOFTFLOAT.
2014-10-30 18:39:16 +00:00
Elliott Hughes
e897108f96 am 7256062f: am 25f4bb98: am e38bf839: Merge "limits.h: add define for HOST_NAME_MAX"
* commit '7256062f10a2381cf2bd92aacadbf5ebda32b3b2':
  limits.h: add define for HOST_NAME_MAX
2014-10-30 18:38:52 +00:00
Elliott Hughes
20cc6b695a Merge remote-tracking branch 'goog/lmp-mr1-ub-dev' into manualmerge 2014-10-30 09:52:50 -07:00
Elliott Hughes
7256062f10 am 25f4bb98: am e38bf839: Merge "limits.h: add define for HOST_NAME_MAX"
* commit '25f4bb984cf9a27ebfac0e8f0ab5481ce3bebf15':
  limits.h: add define for HOST_NAME_MAX
2014-10-30 16:08:28 +00:00
Elliott Hughes
b0693ec582 Merge changes I0feda6b2,I22d13fde,I49d7d09d,Ice490bfe into lmp-mr1-dev
* changes:
  Fix the type of u_ar0 in <sys/user.h>.
  Add greg_t for arm64.
  POSIX says <signal.h> gets you ucontext_t.
  Add in_port_t and move it and in_addr_t to the correct header file.
2014-10-29 23:22:30 +00:00
Elliott Hughes
7e9da3ef4a am 3d50e8ef: am 4c29b1c2: am f362e9fb: Merge "Remove an unused file."
* commit '3d50e8efde2e39a4776506f2db60943da314caa0':
  Remove an unused file.
2014-10-29 21:00:42 +00:00
Elliott Hughes
3d50e8efde am 4c29b1c2: am f362e9fb: Merge "Remove an unused file."
* commit '4c29b1c266aa7ac81a7b67a6170f52c12aca712d':
  Remove an unused file.
2014-10-29 20:56:29 +00:00
Elliott Hughes
b3388419ec am 0eca5472: am 24464b04: am d50495a5: Merge "Extra strtod/strtof tests."
* commit '0eca547209f906e68a5ce61186b64e12c1941ba6':
  Extra strtod/strtof tests.
2014-10-29 20:52:20 +00:00
Elliott Hughes
0eca547209 am 24464b04: am d50495a5: Merge "Extra strtod/strtof tests."
* commit '24464b04a0d5a7645b8e751c6a9ef0c6574d52c2':
  Extra strtod/strtof tests.
2014-10-29 20:42:10 +00:00
Yabin Cui
7574c81852 am c62f0d7c: am 63edd69e: am cbb4606a: Merge "change unsigned int to uint32_t for api arc4random/arc4random_uniform"
* commit 'c62f0d7c60053322d8cc6acafd5a64dd50c6d053':
  change unsigned int to uint32_t for api arc4random/arc4random_uniform
2014-10-29 19:56:56 +00:00
Elliott Hughes
d8ebe6427f am 654c7811: am 91bfaed2: am 13dcb88b: Merge "Disable tzdata in ."
* commit '654c781195f4b5269a910f08b14d87f9fa29ab47':
  Disable tzdata in $ANDROID_DATA.
2014-10-29 19:56:55 +00:00
Elliott Hughes
af51e15a35 am e3c9f21e: resolved conflicts for merge of 912fe0a6 to lmp-mr1-dev-plus-aosp
* commit 'e3c9f21eaf2601ce6b2e3d62eeb12d03b048bdce':
  [x86,x86_64] Fix libgcc unwinding through signal
2014-10-29 19:56:54 +00:00
Yabin Cui
c62f0d7c60 am 63edd69e: am cbb4606a: Merge "change unsigned int to uint32_t for api arc4random/arc4random_uniform"
* commit '63edd69e576a9f1faebc493bc6d4e4729c70b02c':
  change unsigned int to uint32_t for api arc4random/arc4random_uniform
2014-10-29 19:42:32 +00:00
Elliott Hughes
654c781195 am 91bfaed2: am 13dcb88b: Merge "Disable tzdata in ."
* commit '91bfaed26a1e4595c387a27a789a71ec0eebfa73':
  Disable tzdata in $ANDROID_DATA.
2014-10-29 19:42:31 +00:00
Elliott Hughes
e3c9f21eaf resolved conflicts for merge of 912fe0a6 to lmp-mr1-dev-plus-aosp
Change-Id: Ie1cc84f34ccaf27eae4f3c292d67d44a9f0276bc
2014-10-29 12:38:36 -07:00
Elliott Hughes
0c4e98adbe Fix the type of u_ar0 in <sys/user.h>.
(cherry picked from commit e03950fa0c)

Bug: 18172268
Change-Id: I0feda6b253882f68f47bcf30fad998286cc7f620
2014-10-29 11:57:36 -07:00
Elliott Hughes
d0fb6a2940 Add greg_t for arm64.
This was already present for the other architectures. I think we skipped
this because glibc seems to have an incorrect definition (int rather than
long), but the kernel has the sane definition (just not in a uapi header).

(cherry picked from commit 8e4d371091)

Bug: 18172268
Change-Id: I22d13fdeb6431ea122dd028a229782dcaf2286b2
2014-10-29 11:56:59 -07:00
Elliott Hughes
ab4d5cf242 POSIX says <signal.h> gets you ucontext_t.
POSIX also says that ucontext_t's uc_sigmask has type sigset_t.

MIPS64 strace needs this.

The #define is to keep chromium off our lawn; otherwise it tries to redefine
all this stuff itself. We should probably clean that up and remove the #define.

(cherry picked from commit 26a8eb50a8)

Bug: 18172268
Change-Id: I49d7d09dabfc6c6926a8e1f4b235d041e2f2fc4d
2014-10-29 11:55:02 -07:00
Elliott Hughes
eedbf70e8e Add in_port_t and move it and in_addr_t to the correct header file.
No one's reported this, but I saw it in an Android port of fuser(1).

We still have lots of problems in our network headers because we
get most of the structs direct from the kernel, and it doesn't use
types like this (which is why we've got away without this one for
so long). One day we should probably look at cleaning that up, but
doing so can wait.

(cherry picked from commit 35d226e05d)

Bug: 18172268
Change-Id: Ice490bfe84afb04722d738128053d4c533b8a664
2014-10-29 11:49:45 -07:00
Christopher Ferris
98d57c95bc Add stpcpy assembler version.
For generic, continue to use the C version of the code.

Bug: 13746695

(cherry picked from commit 7d849ac378)

Change-Id: Iae44785f37f9bb59103ab78fb9f74c92f8a95c7f
2014-10-29 11:07:03 -07:00
Elliott Hughes
174158ca15 am 3834e0fd: am 382938d0: am ec58e29b: Merge "pthread_setname_np appears in glibc 2.12."
* commit '3834e0fd68f30b49f67e20434a34024aca16b44a':
  pthread_setname_np appears in glibc 2.12.
2014-10-29 17:52:14 +00:00
Elliott Hughes
522d7eec98 am 91e5674c: am 7dbb1cff: am 021b6412: Merge "Fix the type of u_ar0 in <sys/user.h>."
* commit '91e5674c34770b06cabd29afec0c8e752ecc2527':
  Fix the type of u_ar0 in <sys/user.h>.
2014-10-29 17:52:13 +00:00
Elliott Hughes
39b6bfdc0a am a4402ef6: am ee8faa5e: am 7f164f60: Merge "POSIX says pthread_mutex_trylock returns EBUSY, not EDEADLK."
* commit 'a4402ef6e68f7b790d49d3dbc6dad4a0893a2e37':
  POSIX says pthread_mutex_trylock returns EBUSY, not EDEADLK.
2014-10-29 17:52:12 +00:00
Elliott Hughes
3834e0fd68 am 382938d0: am ec58e29b: Merge "pthread_setname_np appears in glibc 2.12."
* commit '382938d092c7427a74ae8a6507bbd49f01e5c2f9':
  pthread_setname_np appears in glibc 2.12.
2014-10-29 17:46:53 +00:00
Elliott Hughes
91e5674c34 am 7dbb1cff: am 021b6412: Merge "Fix the type of u_ar0 in <sys/user.h>."
* commit '7dbb1cff0b40b4f6a2792b73f24ac912cfe121d5':
  Fix the type of u_ar0 in <sys/user.h>.
2014-10-29 17:46:53 +00:00
Elliott Hughes
a4402ef6e6 am ee8faa5e: am 7f164f60: Merge "POSIX says pthread_mutex_trylock returns EBUSY, not EDEADLK."
* commit 'ee8faa5e74eadc12231f59f2bbe13cfa644922cd':
  POSIX says pthread_mutex_trylock returns EBUSY, not EDEADLK.
2014-10-29 17:46:52 +00:00
Dmitriy Ivanov
721950be00 am f63ce364: am 3a3a4b8a: am e23f564b: Merge "Fix *tests-run-on-host target"
* commit 'f63ce364a4cd2004f100ad2f683fe43edf1d1ede':
  Fix *tests-run-on-host target
2014-10-29 17:32:35 +00:00
Elliott Hughes
c779fb70c6 am 6ede5d1f: am 44331e8b: am c716dd1e: Merge "bionic tests: migrate test for mutex type from system/extras"
* commit '6ede5d1f24bbaa88292583ca649916e8c116fb16':
  bionic tests: migrate test for mutex type from system/extras
2014-10-29 17:32:34 +00:00
Dmitriy Ivanov
66acd2c127 am c79478a5: am 85d77021: am f56a2f5e: Merge "Remove unnecessary reinterpret_cast"
* commit 'c79478a53339f957ec7d8ad6f7667b507f3b658e':
  Remove unnecessary reinterpret_cast
2014-10-29 17:32:34 +00:00
Chih-Hung Hsieh
a986a6bbc6 am 5ef7bdad: am f3b0d9cd: am 57c5a556: Merge "Disable clang compilation due to lack of ifunc."
* commit '5ef7bdadbf582d3829289fb2a51cb5ff38a891d2':
  Disable clang compilation due to lack of ifunc.
2014-10-29 17:32:33 +00:00
Elliott Hughes
fc038c029c am 2a45d8cd: am 1dd65cc3: am c83837ec: Merge "Make the netdb unit tests work on the host."
* commit '2a45d8cd4f8c01ae28f0c945df05a7ccc9d31bc2':
  Make the netdb unit tests work on the host.
2014-10-29 17:32:32 +00:00
Elliott Hughes
b8ce996640 am 49220899: am 3f5d8a00: am cad8d226: Merge "Use mxcr_mask instead of mxcsr_mask to match glibc."
* commit '49220899f214a5de54753ab4e9953637faf61f20':
  Use mxcr_mask instead of mxcsr_mask to match glibc.
2014-10-29 17:32:31 +00:00
Elliott Hughes
b9dd047db5 am 413a4bdd: am 43ec1fb7: am a4c0b756: Merge "Add mkfifoat(3)."
* commit '413a4bdd3c675acf76afeda454ff150853ffd905':
  Add mkfifoat(3).
2014-10-29 17:32:30 +00:00
Dmitriy Ivanov
ba2e363f35 am 1e84f9da: am 3db80168: am f33a7d7f: Merge "Fix mips build"
* commit '1e84f9dab4dd4c366beb8eeade64df9352a47dbd':
  Fix mips build
2014-10-29 17:32:30 +00:00
Dmitriy Ivanov
34d9e9e050 am a7424d79: am fee054f3: am 398eb5a7: Merge "Remove unnecessary lookups during relocations"
* commit 'a7424d79c44b8af56208315962c75d6b8fffcb94':
  Remove unnecessary lookups during relocations
2014-10-29 17:32:29 +00:00
Dmitriy Ivanov
a669279085 am 0dbb80ae: am 1babff27: am 566f2bc6: Merge "Fix relocation to look for symbols in local group"
* commit '0dbb80ae950c766b65321350be002309ef9de5d1':
  Fix relocation to look for symbols in local group
2014-10-29 17:32:28 +00:00
Elliott Hughes
c2e6bc77ba am 5e90a976: am ac5df33e: am 6c5694b6: Merge "Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3)."
* commit '5e90a9760728a314d516602754090848f84f600b':
  Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3).
2014-10-29 17:32:27 +00:00
Elliott Hughes
74b96b47f3 am 66bae426: am 7f558f60: am cf8ea37f: Merge "bionic/tests: migrate gethostbyname bionic test from system/extra to bionic/tests"
* commit '66bae4262aa0c516181e6177f371c5e9223b665a':
  bionic/tests: migrate gethostbyname bionic test from system/extra to bionic/tests
2014-10-29 17:32:26 +00:00
Dmitriy Ivanov
f63ce364a4 am 3a3a4b8a: am e23f564b: Merge "Fix *tests-run-on-host target"
* commit '3a3a4b8ae6c03b58c59717ab3c3be85099939d3b':
  Fix *tests-run-on-host target
2014-10-29 17:13:49 +00:00
Elliott Hughes
6ede5d1f24 am 44331e8b: am c716dd1e: Merge "bionic tests: migrate test for mutex type from system/extras"
* commit '44331e8bb0ba17be0387e9353d2309f980136273':
  bionic tests: migrate test for mutex type from system/extras
2014-10-29 17:13:49 +00:00
Dmitriy Ivanov
c79478a533 am 85d77021: am f56a2f5e: Merge "Remove unnecessary reinterpret_cast"
* commit '85d770211b33ede2d7bf1b37a6e01bcb308cb666':
  Remove unnecessary reinterpret_cast
2014-10-29 17:13:32 +00:00
Chih-Hung Hsieh
5ef7bdadbf am f3b0d9cd: am 57c5a556: Merge "Disable clang compilation due to lack of ifunc."
* commit 'f3b0d9cd79574ac43d41e50bf81f57016c620624':
  Disable clang compilation due to lack of ifunc.
2014-10-29 17:13:31 +00:00
Elliott Hughes
2a45d8cd4f am 1dd65cc3: am c83837ec: Merge "Make the netdb unit tests work on the host."
* commit '1dd65cc30c43921f9a0fc604597701b349e3e028':
  Make the netdb unit tests work on the host.
2014-10-29 17:13:30 +00:00
Elliott Hughes
49220899f2 am 3f5d8a00: am cad8d226: Merge "Use mxcr_mask instead of mxcsr_mask to match glibc."
* commit '3f5d8a00e4b57fdf7ec8cc01cc33fbfab5ae1316':
  Use mxcr_mask instead of mxcsr_mask to match glibc.
2014-10-29 17:13:29 +00:00
Elliott Hughes
413a4bdd3c am 43ec1fb7: am a4c0b756: Merge "Add mkfifoat(3)."
* commit '43ec1fb76c679738011adc0706e6ef2e01058e79':
  Add mkfifoat(3).
2014-10-29 17:13:26 +00:00
Dmitriy Ivanov
1e84f9dab4 am 3db80168: am f33a7d7f: Merge "Fix mips build"
* commit '3db80168ff376c08f1faa948b9a41a0c823c9631':
  Fix mips build
2014-10-29 17:13:25 +00:00
Dmitriy Ivanov
a7424d79c4 am fee054f3: am 398eb5a7: Merge "Remove unnecessary lookups during relocations"
* commit 'fee054f3ecd7c26705f544ecf0d76ce4ec57a2d4':
  Remove unnecessary lookups during relocations
2014-10-29 17:13:24 +00:00
Dmitriy Ivanov
0dbb80ae95 am 1babff27: am 566f2bc6: Merge "Fix relocation to look for symbols in local group"
* commit '1babff27fd0e62bd719d04e789da01adbb0b01cd':
  Fix relocation to look for symbols in local group
2014-10-29 17:13:23 +00:00
Elliott Hughes
5e90a97607 am ac5df33e: am 6c5694b6: Merge "Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3)."
* commit 'ac5df33e091c079d667354d225ed37d23326a270':
  Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3).
2014-10-29 17:13:22 +00:00
Elliott Hughes
66bae4262a am 7f558f60: am cf8ea37f: Merge "bionic/tests: migrate gethostbyname bionic test from system/extra to bionic/tests"
* commit '7f558f60cb51c54782f6d51cd3537082e00970bc':
  bionic/tests: migrate gethostbyname bionic test from system/extra to bionic/tests
2014-10-29 17:10:58 +00:00
Elliott Hughes
9debb36799 am ec2ee183: am 96a6f401: am e516321d: Merge "Update bionic to tzdata2014i."
* commit 'ec2ee183a351ce8cbc8a531b5ff74c3fbc10c644':
  Update bionic to tzdata2014i.
2014-10-29 16:47:11 +00:00
Christopher Ferris
3c7bb4ca22 am c165b98a: am 274f5e73: am efd2ec8f: Merge "Fix race condition in timer disarm/delete."
* commit 'c165b98adc930b11c140a1c10e1eeb0ec6307ac9':
  Fix race condition in timer disarm/delete.
2014-10-29 16:47:10 +00:00
Elliott Hughes
ec2ee183a3 am 96a6f401: am e516321d: Merge "Update bionic to tzdata2014i."
* commit '96a6f40163b5a2b97c470894ef81041e18265192':
  Update bionic to tzdata2014i.
2014-10-29 16:42:51 +00:00
Christopher Ferris
c165b98adc am 274f5e73: am efd2ec8f: Merge "Fix race condition in timer disarm/delete."
* commit '274f5e737dcae3c9d328f89f4f7df29acee41230':
  Fix race condition in timer disarm/delete.
2014-10-29 16:42:50 +00:00
Christopher Ferris
1c8ea807eb Cleanup arm assembly.
Remove the old arm directives.
Change the non-local labels to .L labels.
Add cfi directives to strcpy.S.

Bug: 18157900

(cherry picked from commit c8bd2abab2)

Change-Id: Ifa1c3d16553d142eaa0d744af040f0352538106c
2014-10-28 18:19:33 -07:00
Elliott Hughes
4db348f8c9 am 69377b89: Fix merge-induced makefile error.
* commit '69377b890966af4a679857caea983e4702e3b764':
  Fix merge-induced makefile error.
2014-10-29 00:01:14 +00:00
Elliott Hughes
69377b8909 Fix merge-induced makefile error.
Change-Id: I6ac7e5e3b9d55108681916044cf2de0e01bca0b2
2014-10-28 16:58:11 -07:00
Christopher Ferris
0cc59dd303 Add __memcpy_chk assembly for 64 bit.
Bug: 17623887

(cherry picked from commit 8cf61dab5f)

Change-Id: I91e66ca0c26f04b50308059f9c89d388d55f6e3a
2014-10-28 16:18:47 -07:00
Elliott Hughes
bdc27e578c am 16b557e1: Merge remote-tracking branch \'goog/lmp-mr1-ub-dev\' into manualmerge
* commit '16b557e1b2e991a5e22b553fbc5e8898877d1913':
  Fix mips signed/unsigned signal_test.cpp build breakage.
  Remove the unnecessary generic-neon code.
  Don't mask out SA_RESTORER from sa_flags.
  [x86,x86_64] Fix libgcc unwinding through signal
  Stack unwinding unit tests.
  Use the kernel's sa_restorer for aarch64.
  Fix 32-bit arm unwinding through signal frames.
  Fix signal trampolines.
  Disable tzdata in $ANDROID_DATA.
2014-10-28 23:13:37 +00:00
Elliott Hughes
16b557e1b2 Merge remote-tracking branch 'goog/lmp-mr1-ub-dev' into manualmerge
Conflicts:
	libc/arch-arm/bionic/__restore.S
	libc/arch-arm/cortex-a15/bionic/stpcpy.S
	libc/arch-arm/cortex-a9/bionic/stpcpy.S
	libc/arch-arm64/generic/bionic/memcpy_base.S
	libc/arch-x86/bionic/__restore.S
	libc/arch-x86/x86.mk
	libc/arch-x86_64/bionic/__restore_rt.S
	tests/stack_unwinding_test.cpp
	tests/stack_unwinding_test_impl.c

Change-Id: I2cb250ad78e9da6f390bc279aec742564b75e6c7
2014-10-28 16:06:57 -07:00
Elliott Hughes
86d16a053e Clean up the architecture-specific makefiles.
Group things appropriately and name each group.

Bug: 18160821

(cherry picked from commit 7c02d9428c)

Change-Id: I863242515af44058154d03e2d8c34678e682d66a
2014-10-28 15:13:36 -07:00
Elliott Hughes
b378c27226 No arm source refers to SOFTFLOAT.
So why bother #defining it?

Bug: 18160821

(cherry picked from commit b1a6c319c4)

Change-Id: I9cd9c144ba7071fddda12fa16d1232ad861b66be
2014-10-28 15:13:04 -07:00
Elliott Hughes
22e2c9d963 Fix mips signed/unsigned signal_test.cpp build breakage.
(cherry picked from commit aa13e839f0)

Bug: 17436734
Change-Id: I167fc5d74c49cca7031c5739bc53fdf3bde71887
2014-10-28 14:02:10 -07:00
Christopher Ferris
43dc3a9aae Remove the unnecessary generic-neon code.
Bug: 18156619
(cherry picked from commit 2169e17482)

Change-Id: I4a7f5bb9ad4c27b274f3a3c86c1617ca0578b98f
2014-10-28 12:07:25 -07:00
Elliott Hughes
1ea31a2901 Merge "Don't mask out SA_RESTORER from sa_flags." into lmp-mr1-dev 2014-10-28 15:36:56 +00:00
Elliott Hughes
cd99bbfd50 Merge "Disable tzdata in $ANDROID_DATA." into lmp-mr1-dev 2014-10-28 15:06:31 +00:00
Elliott Hughes
28ea229bb2 Don't mask out SA_RESTORER from sa_flags.
glibc doesn't do this, and we probably shouldn't either.

Bug: 16703540
Bug: 17436734

(cherry picked from commit afe58ad989)

Change-Id: Iada5d0ae814f438cb276f056b2b5e3675f0e3666
2014-10-28 07:55:53 -07:00
Pavel Chupin
8eb8c39299 [x86,x86_64] Fix libgcc unwinding through signal
This change provides __restore/__restore_rt on x86 and __restore_rt on
x86_64 with unwinding information to be able to unwind through signal
frame via libgcc provided unwinding interface. See comments inlined for
more details.

Also remove the test that had a dependency on
__attribute__((cleanup(foo_cleanup))). It doesn't provide us with any
better test coverage than we have from the newer tests, and it doesn't
work well across a variety architectures (presumably because no one uses
this attribute in the real world).

Tested this on host via bionic-unit-tests-run-on-host on both x86 and
x86-64.

Bug: 17436734
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>

(cherry picked from commit 50321e2e66)

Change-Id: Iba90e36958b00c7cc7db5eeebf888dc89ce4d619
2014-10-27 16:42:49 -07:00
Elliott Hughes
190dce9e56 Stack unwinding unit tests.
Bug: 17436734

(cherry picked from commit bee1993a14)

Change-Id: I7205a862ba2c3b474e287f5e9c8982cef4610af9
2014-10-27 16:42:37 -07:00
Elliott Hughes
e5e61a0a92 Use the kernel's sa_restorer for aarch64.
gdb was happy with what we had, but libgcc and libunwind weren't.
libgcc is happy with the kernel's restorer (because of the extra nop),
though libunwind looks like it's going to need code changes regardless.

We could make our restorer more like the kernel's one, but why bother
when we can just let the kernel supply the canonical one?

Bug: 17436734

(cherry picked from commit 1cff9a8964)

Change-Id: Ie13d73fd97395e1979a67c2294e036a97c50000d
2014-10-27 16:42:19 -07:00
Elliott Hughes
5054e1a121 Fix 32-bit arm unwinding through signal frames.
gdb was already okay; libgcc and libunwind need a little extra help.

Bug: 17436734

(cherry picked from commit 148dff3ec6)

Change-Id: I2cc997017acc57c930284af5264f353656b98c7b
2014-10-27 16:41:56 -07:00
Elliott Hughes
7dc2b7b30d Fix signal trampolines.
* LP32 should use sa_restorer too. gdb expects this, and future (>= 3.15) x86
  kernels will apparently stop supporting the case where SA_RESTORER isn't
  set.

* gdb and libunwind care about the exact instruction sequences, so we need to
  modify the code slightly in a few cases to match what they're looking for.

* gdb also cares about the exact function names (for some architectures),
  so we need to use __restore and __restore_rt rather than __sigreturn and
  __rt_sigreturn.

* It's possible that we don't have a VDSO; dl_iterate_phdr shouldn't assume
  that getauxval(AT_SYSINFO_EHDR) will return a non-null pointer.

This fixes unwinding through a signal handler in gdb for all architectures.
It doesn't fix libunwind for arm and arm64. I'll keep investigating that...

(cherry picked from commit 36f451a6d9)

Bug: 17436734
Change-Id: Ic1ea1184db6655c5d96180dc07bcc09628e647cb
2014-10-27 16:41:28 -07:00
Elliott Hughes
4c30130a21 Disable tzdata in $ANDROID_DATA.
Bug: 18139284
Change-Id: I2670dc1791d635139a5d39a438dc08777439476b
2014-10-27 13:38:21 -07:00
Elliott Hughes
7ad94518f3 am 04b75092: am aa6cd581: Use mxcr_mask instead of mxcsr_mask to match glibc.
* commit '04b7509228633cf9800ba9acc7354f72c22f629a':
  Use mxcr_mask instead of mxcsr_mask to match glibc.
2014-10-24 16:16:46 +00:00
Elliott Hughes
04b7509228 am aa6cd581: Use mxcr_mask instead of mxcsr_mask to match glibc.
* commit 'aa6cd5819c8ebd254d995388798a4b51af7ca933':
  Use mxcr_mask instead of mxcsr_mask to match glibc.
2014-10-24 16:11:49 +00:00
Elliott Hughes
aa6cd5819c Use mxcr_mask instead of mxcsr_mask to match glibc.
Bug: 18097559

(cherry picked from commit f485547b92)

Change-Id: I242105faa8210abc9635a951b25b127cd64ed23c
2014-10-24 08:43:34 -07:00
Bill Yi
916c574c31 am f83739d1: am 4b8c96d6: Merge commit \'bc8745cc3dd94331d008d553a374e733df978963\' into HEAD
* commit 'f83739d1e20fc701b93ef55834b4932093438a9c':
2014-10-23 13:25:25 +00:00
Chih-Hung Hsieh
a6a6df53fe am fe5f6dda: am 098cf45f: Merge "Replace ambiguous cmp operator with cmpl."
* commit 'fe5f6ddadc0fd847609428ab4b30a4dfd29a2a1b':
  Replace ambiguous cmp operator with cmpl.
2014-10-23 13:25:24 +00:00
Dmitriy Ivanov
b8ce7c8a62 am d64474c1: am 54d76360: Merge "Rename library_offset to library_fd_offset"
* commit 'd64474c1bd51a15aa8268bda3183853d5a1de2ee':
  Rename library_offset to library_fd_offset
2014-10-23 13:25:23 +00:00
Bill Yi
f83739d1e2 am 4b8c96d6: Merge commit \'bc8745cc3dd94331d008d553a374e733df978963\' into HEAD
* commit '4b8c96d6cd8ead93bcc9acdf34a9e884951c7a7b':
  Fix an unintended difference between aosp/master and lmp-dev-plus-aosp.
  More cases where libc should use O_CLOEXEC.
  Hide ScopedTrace.
  Revert "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp.""
2014-10-23 13:04:55 +00:00
Chih-Hung Hsieh
fe5f6ddadc am 098cf45f: Merge "Replace ambiguous cmp operator with cmpl."
* commit '098cf45f4e853f3c85c14af0e475bfae0839f027':
  Replace ambiguous cmp operator with cmpl.
2014-10-23 03:18:16 +00:00
Dmitriy Ivanov
d64474c1bd am 54d76360: Merge "Rename library_offset to library_fd_offset"
* commit '54d76360ebfb79b57177a81632901ebe1c8fc11f':
  Rename library_offset to library_fd_offset
2014-10-23 03:18:12 +00:00
Elliott Hughes
1effd4cfc6 am 60e3950f: am 8fab8119: Update bionic to tzdata2014i.
* commit '60e3950f4288631021d0034eb2a6bc139e5b9a51':
  Update bionic to tzdata2014i.
2014-10-23 00:03:19 +00:00
Elliott Hughes
60e3950f42 am 8fab8119: Update bionic to tzdata2014i.
* commit '8fab8119dd176a280b62e9e8f2b4f08c0d76f36d':
  Update bionic to tzdata2014i.
2014-10-22 23:58:46 +00:00
Elliott Hughes
8fab8119dd Update bionic to tzdata2014i.
From the release notes:

   Changes affecting future time stamps

     Pacific/Fiji will observe DST from 2014-11-02 02:00 to
     2015-01-18 03:00.  (Thanks to Ken Rylander for the heads-up.)
     Guess that future years will use a similar pattern.

     A new Zone Pacific/Bougainville, for the part of Papua New
     Guinea that plans to switch from UTC+10 to UTC+11 on
     2014-12-28 at 02:00.  (Thanks to Kiley Walbom for the
     heads-up.)

   Changes affecting time zone abbreviations

     Since Belarus is not changing its clocks even though Moscow
     is, the time zone abbreviation in Europe/Minsk is changing
     from FET to its more-traditional value MSK on 2014-10-26 at
     01:00.  (Thanks to Alexander Bokovoy for the heads-up about
     Belarus.)

     The new abbreviation IDT stands for the pre-1976 use of UT+8
     in Indochina, to distinguish it better from ICT (UT+7).

   Changes affecting past time stamps

     Many time stamps have been corrected for Asia/Ho_Chi_Minh
     before 1976 (thanks to Trần Ngọc Quân for an indirect pointer
     to Trần Tiến Bình's authoritative book).  Asia/Ho_Chi_Minh has
     been added to zone1970.tab, to give tzselect users in Vietnam
     two choices, since north and south Vietnam disagreed after our
     1970 cutoff.

     Asia/Phnom_Penh and Asia/Vientiane have been turned into
     links, as they differed from existing zones only for older
     time stamps.  As usual, these changes affect pre-1970 time
     stamps only.  Their old contents have been moved to the
     'backzone' file.

Bug: 18085936

(cherry picked from commit a05c2a2a70)

Change-Id: If0253cc1515e1bc98e99c6e24eec797836ca7c27
2014-10-22 13:45:25 -07:00
Christopher Ferris
dcd6ebd86b am d8510e17: am 82eeec68: Merge "Fix generic __memcpy_chk implementation." into lmp-mr1-dev
* commit 'd8510e174f63a655f571e72828b7e9c9e82f53e6':
  Fix generic __memcpy_chk implementation.
2014-10-22 20:31:10 +00:00
Christopher Ferris
d8510e174f am 82eeec68: Merge "Fix generic __memcpy_chk implementation." into lmp-mr1-dev
* commit '82eeec689f66e481928b6788f0a696a5a61f02a3':
  Fix generic __memcpy_chk implementation.
2014-10-22 20:26:27 +00:00
Christopher Ferris
82eeec689f Merge "Fix generic __memcpy_chk implementation." into lmp-mr1-dev 2014-10-22 20:16:18 +00:00
Christopher Ferris
b378abc0ab am 700f1ce9: resolved conflicts for merge of 9b7b0d82 to lmp-mr1-dev-plus-aosp
* commit '700f1ce94b2d092bdd325f6f1fb62a85ee3de262':
  Fix race condition in timer disarm/delete.
2014-10-22 20:08:30 +00:00
Christopher Ferris
700f1ce94b resolved conflicts for merge of 9b7b0d82 to lmp-mr1-dev-plus-aosp
Change-Id: I706dc7e1a13e55316cbc44c025877d42c6731f97
2014-10-22 13:02:58 -07:00
Christopher Ferris
9b7b0d82eb Merge "Fix race condition in timer disarm/delete." into lmp-mr1-dev 2014-10-22 19:43:44 +00:00
Christopher Ferris
f13e1eb92f Fix generic __memcpy_chk implementation.
- Clean up the labels (add .L to make them local).
- Change to using cfi directives.
- Fix unwinding of the __memcpy_chk fail path.

Bug: 18033671

(cherry pick from commit 7123d4371a)

Change-Id: Ife93bcbfc1949ef29fc8e2dc515b7120632b82b1
2014-10-22 12:02:13 -07:00
Dmitriy Ivanov
1533debe38 am 61fa2a55: am 702ab5b3: Rename library_offset to library_fd_offset
* commit '61fa2a55ace75e418b39106710d0113ca1ead771':
  Rename library_offset to library_fd_offset
2014-10-22 18:20:19 +00:00
Dmitriy Ivanov
7dbf52c9df am fa08f998: resolved conflicts for merge of de01780f to lmp-mr1-dev-plus-aosp
* commit 'fa08f9986bdf5e939986579c4a4ed47d7b853fac':
  Build dlext_testzip as custom module.
  Add file_offset parameter to android_extinfo
2014-10-22 18:20:18 +00:00
Dmitriy Ivanov
61fa2a55ac am 702ab5b3: Rename library_offset to library_fd_offset
* commit '702ab5b37e77684ee352300d32b078606ee388d0':
  Rename library_offset to library_fd_offset
2014-10-22 17:15:34 +00:00
Dmitriy Ivanov
fa08f9986b resolved conflicts for merge of de01780f to lmp-mr1-dev-plus-aosp
Change-Id: Ibed1ba1f52da7222f534011866515cfce790061f
2014-10-22 10:13:08 -07:00
Dmitriy Ivanov
702ab5b37e Rename library_offset to library_fd_offset
replace lseek() and use pread() instead
 add test for library_fd_offset > file_size case

Bug: 17762003

(cherry picked from commit a6c1279098)

Change-Id: Ie117c745081ee33d07db5341115ff6c8e98b0dec
2014-10-22 16:35:04 +00:00
Dan Albert
5ffe3971e5 am f2aacebf: am ad136624: Merge "Never use ASAN."
* commit 'f2aacebf551da2b8d828f0618c84ac544e1398fb':
  Never use ASAN.
2014-10-22 13:18:33 +00:00
Ying Wang
3c5c720b0b Build dlext_testzip as custom module.
Use $(BUILD_SYSTEM)/base_rules to build it as custom module, so that
it's exposed to utilities like mm/mmma etc.

Bug: 17887283
Bug: 17762003

(cherry picked from commit 667853d477)

Change-Id: I405797d16f20dc09e5d84b93b6727b634db2fc2c
2014-10-22 08:30:43 +00:00
Christopher Ferris
0724132c32 Fix race condition in timer disarm/delete.
When setting a repeat timer using the SIGEV_THREAD mechanism, it's possible
that the callback can be called after the timer is disarmed or deleted.
This happens because the kernel can generate signals that the timer thread
will continue to handle even after the timer is supposed to be off.

Add two new tests to verify that disarming/deleting doesn't continue to
call the callback.

Modify the repeat test to finish more quickly than before.

Refactor the Counter implementation a bit.

Bug: 18039727
Change-Id: I73192c915cdacf608521b1792c54e5af14a34907
2014-10-21 18:31:02 -07:00
Dan Albert
f2aacebf55 am ad136624: Merge "Never use ASAN."
* commit 'ad136624b2bed5b6971cd7ba372969b1b352c223':
  Never use ASAN.
2014-10-21 21:33:59 +00:00
Dmitriy Ivanov
de01780f46 Add file_offset parameter to android_extinfo
Bug: 17762003

(cherry picked from commit 07e5bc152d)

Change-Id: I72d527831384ff5dde013a4c8dfe639fbec165f5
2014-10-21 13:52:49 -07:00
Hans Boehm
e3d979d45d am 361282af: am c712ceee: Make memory_order_acquire visible in global namespace
* commit '361282afd81e6259fa8a62ab46b83da8b50249fe':
  Make memory_order_acquire visible in global namespace
2014-10-20 23:41:37 +00:00
Hans Boehm
361282afd8 am c712ceee: Make memory_order_acquire visible in global namespace
* commit 'c712ceeec4c15da8488c5ce143fcc6b0a02d74f3':
  Make memory_order_acquire visible in global namespace
2014-10-20 23:36:11 +00:00
Christopher Ferris
c8643850d7 am 941ee802: am 8f41d3d3: Merge "Fix generic __memcpy_chk implementation."
* commit '941ee80292cfdbf95a30da82f7be2e662d1f269e':
  Fix generic __memcpy_chk implementation.
2014-10-20 18:44:47 +00:00
Hans Boehm
c712ceeec4 Make memory_order_acquire visible in global namespace
We were missing that using directive when including <atomic>.

Bug:17736764
Change-Id: Ie8ca92a952749415567bcd5fa21d56629a364660
(cherry picked from commit 76ac4d0853)
2014-10-20 11:41:34 -07:00
Christopher Ferris
941ee80292 am 8f41d3d3: Merge "Fix generic __memcpy_chk implementation."
* commit '8f41d3d3bc7cf2375e5dd9202da619fd67a5928f':
  Fix generic __memcpy_chk implementation.
2014-10-20 18:38:43 +00:00
Chih-Hung Hsieh
2860a41dd0 am 2c87eba8: am 9a740482: Merge "Add -no-integrated-as at local level."
* commit '2c87eba8693c1c7cd03e9b90f686a1415fb2d9c0':
  Add -no-integrated-as at local level.
2014-10-20 17:04:30 +00:00
Chih-Hung Hsieh
2c87eba869 am 9a740482: Merge "Add -no-integrated-as at local level."
* commit '9a7404824b3dfaad6ba14a41aab5f14132392a92':
  Add -no-integrated-as at local level.
2014-10-20 17:01:48 +00:00
Dmitriy Ivanov
a90660f7d0 am 68c41a89: am dec4de45: Merge "Correct way to specify additional dependencies"
* commit '68c41a890dc2d0d95fc1569ffb2e4bcecd603432':
  Correct way to specify additional dependencies
2014-10-17 21:28:44 +00:00
Dmitriy Ivanov
68c41a890d am dec4de45: Merge "Correct way to specify additional dependencies"
* commit 'dec4de456c046881fb1e8c7c7d0c27a11ef09eb7':
  Correct way to specify additional dependencies
2014-10-17 20:34:39 +00:00
Dmitriy Ivanov
b312428b5e am d7407db0: am 5281e1fb: Merge "Fix misleading comment."
* commit 'd7407db08f528a5c0ccc96314eeced3e46a34f9d':
  Fix misleading comment.
2014-10-16 18:08:45 +00:00
Dmitriy Ivanov
d7407db08f am 5281e1fb: Merge "Fix misleading comment."
* commit '5281e1fb15632c8dc714d10abc6cd1a22a061782':
  Fix misleading comment.
2014-10-16 18:03:07 +00:00
Dan Albert
4066336a25 am 34de37e5: am 90aa7e37: Merge "Only use <atomic> for C++11 and newer."
* commit '34de37e553d83fb4522c1458bf82d8e8aee4c2bb':
  Only use <atomic> for C++11 and newer.
2014-10-16 16:32:21 +00:00
Dan Albert
34de37e553 am 90aa7e37: Merge "Only use <atomic> for C++11 and newer."
* commit '90aa7e374f9000577cde64c4fb88c5dab8dac62e':
  Only use <atomic> for C++11 and newer.
2014-10-16 16:27:27 +00:00
Dan Albert
cec6fd91cd am 574284db: am 8bb12127: Merge "Don\'t use an STL for libm."
* commit '574284dbf27a58cb4c4be97a0a8a09f56fe65f52':
  Don't use an STL for libm.
2014-10-16 16:10:05 +00:00
Dan Albert
574284dbf2 am 8bb12127: Merge "Don\'t use an STL for libm."
* commit '8bb12127e62c1fc4d9dc99ce9272008023c7c08e':
  Don't use an STL for libm.
2014-10-16 16:06:10 +00:00
Dmitriy Ivanov
b2d11387c4 am ab3f96cb: am f5e02582: Merge "Ignore DT_BIND_NOW (0x18)"
* commit 'ab3f96cb20084cf5a9aa299a508be8c462dc9308':
  Ignore DT_BIND_NOW (0x18)
2014-10-16 00:07:20 +00:00
Dmitriy Ivanov
ab3f96cb20 am f5e02582: Merge "Ignore DT_BIND_NOW (0x18)"
* commit 'f5e0258268b45faa4d84de34047660061720abc7':
  Ignore DT_BIND_NOW (0x18)
2014-10-15 23:57:28 +00:00
Dan Albert
2ed2148d58 am 21df7992: am 71cbcdcf: Merge "We don\'t actually need all of libc++ here."
* commit '21df799218eb39dd66ccdf92045a885fff5eb14e':
  We don't actually need all of libc++ here.
2014-10-15 20:16:18 +00:00
Dan Albert
21df799218 am 71cbcdcf: Merge "We don\'t actually need all of libc++ here."
* commit '71cbcdcf947835076241b9dd72099f28997eb290':
  We don't actually need all of libc++ here.
2014-10-15 20:10:08 +00:00
Elliott Hughes
1201b719ed am a7995f31: am 97df16ba: Merge "Add clock_settime and clock_nanosleep."
* commit 'a7995f31e2e584e4df8cbdb543e7e0c6535506cf':
  Add clock_settime and clock_nanosleep.
2014-10-14 03:58:49 +00:00
Elliott Hughes
a7995f31e2 am 97df16ba: Merge "Add clock_settime and clock_nanosleep."
* commit '97df16ba5c2911e06d1211781a5724706abd227b':
  Add clock_settime and clock_nanosleep.
2014-10-14 03:25:51 +00:00
Dmitriy Ivanov
261fb20671 am a9223e74: am c2297050: Merge "Add glibc alias for NT_PRFPREG"
* commit 'a9223e74d0ca22587e6a5535c9c2b1c8c044a0bb':
  Add glibc alias for NT_PRFPREG
2014-10-13 22:25:15 +00:00
Christopher Ferris
526c1221e1 am f7c3db67: am 083769a3: Merge "Return total footprint, not high water mark."
* commit 'f7c3db67a172a103ce9fa85733738c20770e551a':
  Return total footprint, not high water mark.
2014-10-13 22:25:13 +00:00
Dan Albert
cc530083c0 am a6ef2e28: am 94571f9a: Merge "Use LOCAL_CXX_STL to select libc++_static."
* commit 'a6ef2e2819bb930b212a492b4f2245d10fd4fc8f':
  Use LOCAL_CXX_STL to select libc++_static.
2014-10-13 22:25:13 +00:00
Dmitriy Ivanov
a9223e74d0 am c2297050: Merge "Add glibc alias for NT_PRFPREG"
* commit 'c229705051c8b6a06ad81c221ca74ef9aa743e13':
  Add glibc alias for NT_PRFPREG
2014-10-13 22:19:46 +00:00
Christopher Ferris
f7c3db67a1 am 083769a3: Merge "Return total footprint, not high water mark."
* commit '083769a3dffabfb968a03a700b9f2fd7838bcf75':
  Return total footprint, not high water mark.
2014-10-13 22:15:58 +00:00
Dan Albert
a6ef2e2819 am 94571f9a: Merge "Use LOCAL_CXX_STL to select libc++_static."
* commit '94571f9ade03cfe24bff1bddc4d6c1a320b39b8e':
  Use LOCAL_CXX_STL to select libc++_static.
2014-10-13 22:15:54 +00:00
Christopher Ferris
3928d3e2d6 am 93e474ef: am 59a02860: Merge "Return total footprint, not high water mark." into lmp-mr1-dev
* commit '93e474ef5485c0628c358351d3cc6e4938294beb':
  Return total footprint, not high water mark.
2014-10-13 19:46:50 +00:00
Christopher Ferris
93e474ef54 am 59a02860: Merge "Return total footprint, not high water mark." into lmp-mr1-dev
* commit '59a02860a455af68d501ee847889620343dcfb0d':
  Return total footprint, not high water mark.
2014-10-13 19:44:19 +00:00
Christopher Ferris
59a02860a4 Merge "Return total footprint, not high water mark." into lmp-mr1-dev 2014-10-13 19:36:56 +00:00
Christopher Ferris
f4ada9c9ce Return total footprint, not high water mark.
The mallinfo usmblks value returned by dlmalloc is a little misleading.
It's not the current max, it's the historical high water mark. This
leads to dumpsys meminfo producing native memory numbers that don't add up.
Change this to the real total footprint, not this high water mark.

Bug: 17265653
Change-Id: Id0293a1b50c9b0be8795405049f537a51ab0e8b7
2014-10-13 12:29:30 -07:00
Dan Albert
3563a46aed am 7bdab15e: am 4c086247: Merge "Fix some formatting so GitHub displays it nicely."
* commit '7bdab15e7b3d67dd97b94097c8974b4b85bed7e9':
  Fix some formatting so GitHub displays it nicely.
2014-10-11 01:04:07 +00:00
Dan Albert
7bdab15e7b am 4c086247: Merge "Fix some formatting so GitHub displays it nicely."
* commit '4c0862474e63b09c901d11de47a318ce73a0c686':
  Fix some formatting so GitHub displays it nicely.
2014-10-11 00:58:12 +00:00
Dan Albert
6d5c6e7fa0 am 3a05a8b1: am 8c3901b2: Merge "Improve documentation for testing and coverage."
* commit '3a05a8b150a1bae663831a5cee54b5c0c1130303':
  Improve documentation for testing and coverage.
2014-10-10 23:07:31 +00:00
Dan Albert
3a05a8b150 am 8c3901b2: Merge "Improve documentation for testing and coverage."
* commit '8c3901b2999e6821b8ee984193352ba45b003492':
  Improve documentation for testing and coverage.
2014-10-10 23:02:57 +00:00
Christopher Ferris
2bb7009436 am 50f76f37: am e0fafb01: am c891e240: Add back symbols to fix Greed for Glory franchise.
* commit '50f76f375b67756f0c31afcc83ed9a98e1810b24':
  Add back symbols to fix Greed for Glory franchise.
2014-10-10 22:08:04 +00:00
Elliott Hughes
48a9101986 am 9a6d0fa1: am 2f25cf37: Fix pthread_attr_getstack under valgrind.
* commit '9a6d0fa1c18bf66611c46942edf2a3e8a6acda8a':
  Fix pthread_attr_getstack under valgrind.
2014-10-10 22:07:56 +00:00
Elliott Hughes
0433575035 am 227faaed: am 2698f9ef: Merge "Catch up on upstream\'s round/roundf/roundl."
* commit '227faaedd575561b2a598de6d9d614420b0894b7':
  Catch up on upstream's round/roundf/roundl.
2014-10-10 22:07:54 +00:00
Christopher Ferris
50f76f375b am e0fafb01: am c891e240: Add back symbols to fix Greed for Glory franchise.
* commit 'e0fafb019e33374fae3fa5dc3473e921566b5991':
  Add back symbols to fix Greed for Glory franchise.
2014-10-10 21:02:28 +00:00
Christopher Ferris
e0fafb019e am c891e240: Add back symbols to fix Greed for Glory franchise.
* commit 'c891e24073830e07ba7373dee554ff2c70e1d313':
  Add back symbols to fix Greed for Glory franchise.
2014-10-10 20:47:00 +00:00
Elliott Hughes
9a6d0fa1c1 am 2f25cf37: Fix pthread_attr_getstack under valgrind.
* commit '2f25cf373ca7c875956a7c06483b30d381296817':
  Fix pthread_attr_getstack under valgrind.
2014-10-10 18:44:54 +00:00
Christopher Ferris
c952c8cf84 am 2df4673e: resolved conflicts for merge of 7f4618cb to lmp-mr1-dev-plus-aosp
* commit '2df4673edd837e06fb8ae8ec7dd3fdb7a779cfc8':
  Re-add dlmalloc for 32 bit.
2014-10-10 18:42:29 +00:00
Elliott Hughes
2f25cf373c Fix pthread_attr_getstack under valgrind.
valgrind seems to mess with the stack enough that the kernel will
report "[stack:pid]" rather than "[stack]" in /proc/self/maps, so
switch to the task-specific file instead to force "[stack]". (There
are two conditions in the kernel code that decides which form to
output.)

Bug: 17897476

(cherry picked from commit 9afb2f2106)

Change-Id: I92c331ef6fb5868af49e75bc595710d290a95f5b
2014-10-10 10:57:48 -07:00
Elliott Hughes
227faaedd5 am 2698f9ef: Merge "Catch up on upstream\'s round/roundf/roundl."
* commit '2698f9ef8412011295702cd6df4b66e01cf6c220':
  Catch up on upstream's round/roundf/roundl.
2014-10-10 17:41:11 +00:00
Christopher Ferris
2df4673edd resolved conflicts for merge of 7f4618cb to lmp-mr1-dev-plus-aosp
Change-Id: I9b65f8287a4f155f26ae7e217e9553a3aaf22240
2014-10-10 10:05:38 -07:00
Christopher Ferris
1713191651 am b767f632: am 62a665a6: Merge "Add back symbols to fix Greed for Glory franchise."
* commit 'b767f632f34c8efa73d9489fd0d4509bcbb8db71':
  Add back symbols to fix Greed for Glory franchise.
2014-10-10 06:43:22 +00:00
Christopher Ferris
b767f632f3 am 62a665a6: Merge "Add back symbols to fix Greed for Glory franchise."
* commit '62a665a605df64a6ea5ac680bb564ad7a5f03711':
  Add back symbols to fix Greed for Glory franchise.
2014-10-10 06:38:35 +00:00
Elliott Hughes
2e7b1ba806 am 404f2a0a: am 8dd3b65f: Merge "Sync libm with upstream."
* commit '404f2a0a224d73a8d9c5d4f1d37d9d1a3ae5ea8d':
  Sync libm with upstream.
2014-10-10 02:14:00 +00:00
Elliott Hughes
404f2a0a22 am 8dd3b65f: Merge "Sync libm with upstream."
* commit '8dd3b65f2dd63df1baa83285f607cf110f21c27c':
  Sync libm with upstream.
2014-10-10 01:57:56 +00:00
Elliott Hughes
d8907d9043 am b20a5c8d: am e9c216fc: Merge "Fix pthread_attr_getstack under valgrind."
* commit 'b20a5c8df897b319351a596a97c095d79d9cacca':
  Fix pthread_attr_getstack under valgrind.
2014-10-09 22:15:04 +00:00
Elliott Hughes
b20a5c8df8 am e9c216fc: Merge "Fix pthread_attr_getstack under valgrind."
* commit 'e9c216fca56e84b0d0a96f7d5e3c99d3276ef071':
  Fix pthread_attr_getstack under valgrind.
2014-10-09 22:11:00 +00:00
Christopher Ferris
7f4618cbc8 am c9734d24: Re-add dlmalloc for 32 bit.
* commit 'c9734d24d92f4737f5ab3808c77d816a1b084582':
  Re-add dlmalloc for 32 bit.
2014-10-09 22:02:00 +00:00
Christopher Ferris
fcbd52ceb0 am 9d192aa0: am d0944d9e: Merge "Re-add dlmalloc for 32 bit."
* commit '9d192aa08e6dad091f5fa0aeb6cb0541eaca96a5':
  Re-add dlmalloc for 32 bit.
2014-10-09 19:05:10 +00:00
Christopher Ferris
9d192aa08e am d0944d9e: Merge "Re-add dlmalloc for 32 bit."
* commit 'd0944d9ed38be0d74c3d8876f0f36b9ddc0ce38c':
  Re-add dlmalloc for 32 bit.
2014-10-09 18:59:39 +00:00
Dan Albert
df511204f5 am 653f30b1: am 8a7f8387: Merge "Use snprintf(3) instead of sprintf(3)."
* commit '653f30b15a9bff8567a4f2fa1ff444dba00281ab':
  Use snprintf(3) instead of sprintf(3).
2014-10-09 12:44:54 +00:00
Dan Albert
c18259333b am 8b3b4fa0: am 72d72d91: Merge "Replace uses of sprintf(3) with snprintf(3)."
* commit '8b3b4fa0ae9e08e64f508e4745ff46c492d84497':
  Replace uses of sprintf(3) with snprintf(3).
2014-10-09 12:44:43 +00:00
Ying Wang
94dfa99c15 am 75fd0e76: am 0c0e728b: Merge "Build dlext_testzip as custom module."
* commit '75fd0e76f81c22d9af689695dc17ef98ad44e384':
  Build dlext_testzip as custom module.
2014-10-09 12:44:42 +00:00
Dmitriy Ivanov
118de39fd6 am c4210cea: am ac3c94d0: Merge "Fix mma build: \'cd bionic && mma\' case"
* commit 'c4210cea45e160162d571992c483faa16d1e0bb6':
  Fix mma build: 'cd bionic && mma' case
2014-10-09 12:44:34 +00:00
Elliott Hughes
913d393b10 am 301c452e: am 0511534d: Merge "Don\'t silently return EINVAL for a NULL sem_t*."
* commit '301c452e5562f9ea286286a1cdb44e73ea390e5c':
  Don't silently return EINVAL for a NULL sem_t*.
2014-10-09 12:44:33 +00:00
Elliott Hughes
fad6661ad9 am 46b99841: am bfeef2d3: Merge "Use ln(1) rather than cp(1) to set up host /system for testing."
* commit '46b998415561aadb8b47c61b7892e85a81b13de5':
  Use ln(1) rather than cp(1) to set up host /system for testing.
2014-10-09 12:44:32 +00:00
Dan Albert
653f30b15a am 8a7f8387: Merge "Use snprintf(3) instead of sprintf(3)."
* commit '8a7f8387b3b95de2ee0c42e34a226a1fcc066896':
  Use snprintf(3) instead of sprintf(3).
2014-10-09 00:39:27 +00:00
Dan Albert
8b3b4fa0ae am 72d72d91: Merge "Replace uses of sprintf(3) with snprintf(3)."
* commit '72d72d91262fabe6bc169618ef3acb0721441cf0':
  Replace uses of sprintf(3) with snprintf(3).
2014-10-09 00:12:30 +00:00
Ying Wang
75fd0e76f8 am 0c0e728b: Merge "Build dlext_testzip as custom module."
* commit '0c0e728bd8cdeb0e73fd9c491d05993dfc77b622':
  Build dlext_testzip as custom module.
2014-10-09 00:12:29 +00:00
Dmitriy Ivanov
c4210cea45 am ac3c94d0: Merge "Fix mma build: \'cd bionic && mma\' case"
* commit 'ac3c94d031c16a0299471a593cdc6248494e539d':
  Fix mma build: 'cd bionic && mma' case
2014-10-08 22:49:08 +00:00
Elliott Hughes
301c452e55 am 0511534d: Merge "Don\'t silently return EINVAL for a NULL sem_t*."
* commit '0511534dcbb00f26b2fd6209b1b60a3263bf042c':
  Don't silently return EINVAL for a NULL sem_t*.
2014-10-08 22:49:07 +00:00
Elliott Hughes
46b9984155 am bfeef2d3: Merge "Use ln(1) rather than cp(1) to set up host /system for testing."
* commit 'bfeef2d3a903f161531ce5e45b2dd7d280e7f154':
  Use ln(1) rather than cp(1) to set up host /system for testing.
2014-10-08 22:49:06 +00:00
Elliott Hughes
5d104a0454 am 98f32183: am 13641010: Merge "Fix compile-time tests for LP64."
* commit '98f321838be54a64c595d65379e3554fa3d6a8d7':
  Fix compile-time tests for LP64.
2014-10-08 20:44:45 +00:00
Elliott Hughes
98f321838b am 13641010: Merge "Fix compile-time tests for LP64."
* commit '1364101067072c2ce6fa395cdef2534f338f30b1':
  Fix compile-time tests for LP64.
2014-10-08 20:40:08 +00:00
Dan Albert
aca5f36de3 am 035c00d0: am 5cc5c5ea: Merge "Add basic compile time tests for sn?printf."
* commit '035c00d09ce2b6b04d2c278b8dfadc302acc3de1':
  Add basic compile time tests for sn?printf.
2014-10-08 20:17:24 +00:00
Dan Albert
035c00d09c am 5cc5c5ea: Merge "Add basic compile time tests for sn?printf."
* commit '5cc5c5ea0b7a5a2d523ea35c645a42b222929276':
  Add basic compile time tests for sn?printf.
2014-10-08 20:13:35 +00:00
Elliott Hughes
94b0a1f08e am 3430ec18: am 5a3ca374: Merge "Revert "Work around a bug in Immersion\'s libImmEmulatorJ.so.""
* commit '3430ec18a45830cde56393cf67ec34ad4169c9e1':
  Revert "Work around a bug in Immersion's libImmEmulatorJ.so."
2014-10-08 16:53:54 +00:00
Elliott Hughes
3430ec18a4 am 5a3ca374: Merge "Revert "Work around a bug in Immersion\'s libImmEmulatorJ.so.""
* commit '5a3ca374583f7605672d9e8f9098011de240f7c4':
  Revert "Work around a bug in Immersion's libImmEmulatorJ.so."
2014-10-08 16:49:35 +00:00
Elliott Hughes
abb31de8f3 am 07b7385f: am e5d4fc39: am 1543fdf6: Work around a bug in Immersion\'s libImmEmulatorJ.so.
* commit '07b7385fc08055478cd7ec418cf160fbafae4d59':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-08 07:59:31 +00:00
Dan Albert
1c81bdfd3f am d084b8d6: resolved conflicts for merge of 55ee845b to lmp-mr1-dev-plus-aosp
* commit 'd084b8d6b8c08fb399ba1127063c15a8c970c710':
  Inline helpers need to be exported unmangled.
2014-10-08 07:52:09 +00:00
Elliott Hughes
07b7385fc0 am e5d4fc39: am 1543fdf6: Work around a bug in Immersion\'s libImmEmulatorJ.so.
* commit 'e5d4fc39e3f26920f3413070d1175a0afd14a66f':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-08 07:51:01 +00:00
Dan Albert
d084b8d6b8 resolved conflicts for merge of 55ee845b to lmp-mr1-dev-plus-aosp
Change-Id: I134ec170a5fa1da065256b2da2e9c139db61b030
2014-10-08 00:07:03 -07:00
Elliott Hughes
e5d4fc39e3 am 1543fdf6: Work around a bug in Immersion\'s libImmEmulatorJ.so.
* commit '1543fdf616ddebee7819214437527f380e5c743b':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-08 05:24:46 +00:00
Dan Albert
55ee845b8e Inline helpers need to be exported unmangled.
__open_2() is used by the fortify implementation of open(2) in
fcntl.h, and as such needs an unmangled C name. For some reason
(inlining?), this doesn't cause problems at the default optimization
level, but does for -O0.

The rest of these didn't cause build failures, but they look suspect
and probably will, we just haven't caught them yet.

(cherry-pick of 658727e111 with conflicts
in stdio.h and string.h.)

Bug: 17784968
Change-Id: I7391a7a8999ee204eaf6abd14a3d5373ea419d5b
2014-10-07 18:51:24 -07:00
Nick Kralevich
efa8136df9 am 8ec71579: am ce92b41a: cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
* commit '8ec715796f3eef76edfe7ae18dc8b8a9e2be4b47':
  cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
2014-10-08 00:57:28 +00:00
Nick Kralevich
8ec715796f am ce92b41a: cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
* commit 'ce92b41a00fb86656055eceab9648a858721c3b1':
  cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
2014-10-08 00:51:24 +00:00
Dan Albert
f1afba2aca am 187fd4d7: am c9e4f2de: Merge "Inline helpers need to be exported unmangled."
* commit '187fd4d7abd802b77a57e28f3b3c9ce5c3d95e96':
  Inline helpers need to be exported unmangled.
2014-10-08 00:16:26 +00:00
Dan Albert
187fd4d7ab am c9e4f2de: Merge "Inline helpers need to be exported unmangled."
* commit 'c9e4f2de0a92ebf6dec336f383ba172efe1bb366':
  Inline helpers need to be exported unmangled.
2014-10-08 00:13:09 +00:00
Nick Kralevich
ce92b41a00 cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
Otherwise the gcc compiler warning doesn't show up.

Add -Wno-error to fortify related tests. Fortify related tests
are expected to be examples of bad programs, and in many
cases shouldn't compile cleanly. Rewriting them to compile
cleanly isn't feasible nor desirable.

Bug: 17784968

(cherry picked from commit 1aaa17802c)

Change-Id: Ib6df1a3f44b55b1fff222e78395c10c51cd39817
2014-10-07 16:37:04 -07:00
Elliott Hughes
0f0c0475cb am e5b11446: am e8d9057e: Merge "Work around a bug in Immersion\'s libImmEmulatorJ.so."
* commit 'e5b11446897176720f74dd79cfc2cae208ea7739':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-07 23:27:43 +00:00
Elliott Hughes
1144dc404c am f6aec385: am b5e7eba6: Work around a bug in Immersion\'s libImmEmulatorJ.so.
* commit 'f6aec385829c376d8df116713a9f76846addb8ac':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-07 23:27:43 +00:00
Elliott Hughes
e5b1144689 am e8d9057e: Merge "Work around a bug in Immersion\'s libImmEmulatorJ.so."
* commit 'e8d9057e3005f6f53f8ef2e876b43aea7a892292':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-07 23:23:25 +00:00
Elliott Hughes
f6aec38582 am b5e7eba6: Work around a bug in Immersion\'s libImmEmulatorJ.so.
* commit 'b5e7eba6d1b97e471996fcfe7dbde7cbba7512ef':
  Work around a bug in Immersion's libImmEmulatorJ.so.
2014-10-07 23:22:28 +00:00
Elliott Hughes
b5e7eba6d1 Work around a bug in Immersion's libImmEmulatorJ.so.
This library calls pthread_mutex_lock and pthread_mutex_unlock with a NULL
pthread_mutex_t*. This gives them (and their users) one release to fix things.

Bug: 17443936

(cherry picked from commit 7d3f553f98)

Change-Id: Ie26bbecd3a74d61113b51c18832872499b97ee86
2014-10-07 16:08:46 -07:00
Elliott Hughes
cee722b1cb am 9eb0d554: resolved conflicts for merge of ea8dea8c to lmp-mr1-dev-plus-aosp
* commit '9eb0d554bad86a62c370e7c31fa19b5f3dc90b36':
  Improve <sys/cdefs.h>.
2014-10-07 20:37:10 +00:00
Elliott Hughes
9eb0d554ba resolved conflicts for merge of ea8dea8c to lmp-mr1-dev-plus-aosp
Change-Id: I368c83e83c56a0c14d395540a715f5c42f8eafa8
2014-10-07 13:33:09 -07:00
Elliott Hughes
ea8dea8cb7 Merge "Improve <sys/cdefs.h>." into lmp-mr1-dev 2014-10-07 18:51:36 +00:00
Dan Albert
6ff5aa092b am 24095148: am eeb9aa02: Merge "Use snprintf instead of sprintf."
* commit '24095148c9952d402380d0b0ab8eb5da2a0bbd9a':
  Use snprintf instead of sprintf.
2014-10-07 18:51:01 +00:00
Dan Albert
24095148c9 am eeb9aa02: Merge "Use snprintf instead of sprintf."
* commit 'eeb9aa02b7f307a1d9b80731dd69ef9dd2f47e47':
  Use snprintf instead of sprintf.
2014-10-07 18:47:04 +00:00
Elliott Hughes
d87d401ab1 Improve <sys/cdefs.h>.
Fix and use __RENAME (and lose ___RENAME --- two underscores should be
enough for anybody). This was the point of this change, because I want
to use __RENAME to support the two basename variants and the two
strerror_r variants.

Lose a bunch of macros that weren't being used.

Lose three dead files from the DNS code.

Bug: 17784968

(cherry picked from commit 2cfb4e8e2e)

Change-Id: I5e96146f92c0521248c78c0933bec5e9a9818222
2014-10-07 11:40:09 -07:00
Christopher Ferris
c5d30c27e6 am ac6fc5be: (-s ours) am 4aace385: am 2cf15571: am 40bc7cd4: (-s ours) DO NOT MERGE Re-add .save directive for arm assembler code.
* commit 'ac6fc5befd152814398bccb0443da6704f614f0f':
  DO NOT MERGE  Re-add .save directive for arm assembler code.
2014-10-07 18:03:05 +00:00
Christopher Ferris
ac6fc5befd am 4aace385: am 2cf15571: am 40bc7cd4: (-s ours) DO NOT MERGE Re-add .save directive for arm assembler code.
* commit '4aace3852d2a83067c5ef10e06e2a33c6903940f':
  DO NOT MERGE  Re-add .save directive for arm assembler code.
2014-10-07 17:54:11 +00:00
Christopher Ferris
4aace3852d am 2cf15571: am 40bc7cd4: (-s ours) DO NOT MERGE Re-add .save directive for arm assembler code.
* commit '2cf155713aaba451065d593335d544f2ada24ddf':
  DO NOT MERGE  Re-add .save directive for arm assembler code.
2014-10-07 17:42:39 +00:00
Dmitriy Ivanov
929ec5c950 am c4d97f51: am 6d2dd6a7: Merge "Fix 2nd arch prefix application"
* commit 'c4d97f51476def0852693b4002e9ba65df8cd5a6':
  Fix 2nd arch prefix application
2014-10-07 17:14:21 +00:00
Dmitriy Ivanov
c4d97f5147 am 6d2dd6a7: Merge "Fix 2nd arch prefix application"
* commit '6d2dd6a74035a7ace838dd44e7910d54e15c11c2':
  Fix 2nd arch prefix application
2014-10-07 17:12:11 +00:00
Elliott Hughes
97300b3878 am 106edd3f: am 6c4e16f6: Merge "further cleanup memcpy fortify implementation" into lmp-mr1-dev
* commit '106edd3fa795f41bd8b527732a6c2be74ff4164a':
  further cleanup memcpy fortify implementation
2014-10-07 01:02:57 +00:00
Christopher Ferris
8d0c9dfc2c am a87052c9: resolved conflicts for merge of 27355aff to lmp-mr1-dev-plus-aosp
* commit 'a87052c9a3f71f6017c3a4657d9ce01d8923e969':
  Force export symbols on all x86 variants in libc.
2014-10-07 00:58:44 +00:00
Elliott Hughes
106edd3fa7 am 6c4e16f6: Merge "further cleanup memcpy fortify implementation" into lmp-mr1-dev
* commit '6c4e16f634a8ee07fc0c3cc5299c9f7f03c5f8bf':
  further cleanup memcpy fortify implementation
2014-10-07 00:55:38 +00:00
Christopher Ferris
a87052c9a3 resolved conflicts for merge of 27355aff to lmp-mr1-dev-plus-aosp
Change-Id: Ice2d5d99788eb1fd9bcdfc288a36742f6e73d360
2014-10-06 17:53:54 -07:00
Elliott Hughes
6c4e16f634 Merge "further cleanup memcpy fortify implementation" into lmp-mr1-dev 2014-10-07 00:30:34 +00:00
Christopher Ferris
27355affc1 am d11eac34: Force export symbols on all x86 variants in libc.
* commit 'd11eac3455a059a092ceee92eda9905e1d661e94':
  Force export symbols on all x86 variants in libc.
2014-10-07 00:20:10 +00:00
Christopher Ferris
a0da9f976a am 015a48af: am 81fca356: Merge "Force export symbols on all x86 variants in libc."
* commit '015a48af3634b7337561a35544ecf2bc78549b0f':
  Force export symbols on all x86 variants in libc.
2014-10-07 00:03:54 +00:00
Nick Kralevich
3ccb3fcba4 am d9813e3e: am b5cba608: Merge "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions"
* commit 'd9813e3e7fbf02955d2dd9f9c9ef97a8719b15a3':
  cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
2014-10-07 00:03:44 +00:00
Nick Kralevich
77e5dd7720 am 75a932c5: resolved conflicts for merge of 7ad2147a to lmp-mr1-dev-plus-aosp
* commit '75a932c5dd959a1678929a7a8211d30a85a907fc':
  string.h: remove unused variable
2014-10-06 23:58:37 +00:00
Christopher Ferris
015a48af36 am 81fca356: Merge "Force export symbols on all x86 variants in libc."
* commit '81fca35672df90e2f770e67bbf7e7735c6ff8bd8':
  Force export symbols on all x86 variants in libc.
2014-10-06 23:50:42 +00:00
Nick Kralevich
d9813e3e7f am b5cba608: Merge "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions"
* commit 'b5cba6081bc9179d3ea2aa1bfd77dd8de1c88525':
  cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
2014-10-06 23:28:47 +00:00
Nick Kralevich
db408bf421 further cleanup memcpy fortify implementation
Bug: 17784968

(cherry picked from commit b84f667e93)

Change-Id: I68fc2cc0a1ee7f0887edf3681eb83ef678de1383
2014-10-06 16:18:32 -07:00
Nick Kralevich
75a932c5dd resolved conflicts for merge of 7ad2147a to lmp-mr1-dev-plus-aosp
Change-Id: Ie43710f4e5b8d5638bce505e9bef80e6cdd065bc
2014-10-06 15:50:24 -07:00
Dan Albert
1f41103f26 am 8049eb75: am 9969feca: Merge "Add compile time test infrastructure for bionic."
* commit '8049eb7578ac1e37271da5dca000157687de5162':
  Add compile time test infrastructure for bionic.
2014-10-06 19:56:42 +00:00
Dan Albert
8049eb7578 am 9969feca: Merge "Add compile time test infrastructure for bionic."
* commit '9969fecad23edebcbc4f32a50dc65a2876a2478f':
  Add compile time test infrastructure for bionic.
2014-10-06 19:54:37 +00:00
Dmitriy Ivanov
30aa4c2ddb am bc7ecf7a: am f4320e86: Merge "Resolve "unused DT entry" warnings for x86_64"
* commit 'bc7ecf7af2d1b06161badddcead0d9f8c66dbd12':
  Resolve "unused DT entry" warnings for x86_64
2014-10-06 19:36:10 +00:00
Dmitriy Ivanov
bc7ecf7af2 am f4320e86: Merge "Resolve "unused DT entry" warnings for x86_64"
* commit 'f4320e867cbc7764d2f1fa8ac64da9cc38cba733':
  Resolve "unused DT entry" warnings for x86_64
2014-10-06 19:28:49 +00:00
Dmitriy Ivanov
5830490dd7 am bfbe68fc: am 6d569b92: Merge "Add file_offset parameter to android_extinfo"
* commit 'bfbe68fc248d4ff69d963aecbab4a42f6def7ba0':
  Add file_offset parameter to android_extinfo
2014-10-06 17:33:59 +00:00
Dmitriy Ivanov
bfbe68fc24 am 6d569b92: Merge "Add file_offset parameter to android_extinfo"
* commit '6d569b92012543a297dccf2dfeaa648d07b3c133':
  Add file_offset parameter to android_extinfo
2014-10-06 17:29:06 +00:00
Nick Kralevich
7ad2147a08 string.h: remove unused variable
(cherry picked from commit 48be71d02b)

Bug: 17784968
Change-Id: Iac7732fb4f7fe42977cb9f62472bb636e17e5232
2014-10-06 10:17:01 -07:00
Nick Kralevich
7912cc7e9e am e88b00c5: am a6eef3be: Merge "Revert "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions""
* commit 'e88b00c51d87ce2182774e40939fe51507de6a40':
  Revert "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions"
2014-10-06 00:48:54 +00:00
Nick Kralevich
e88b00c51d am a6eef3be: Merge "Revert "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions""
* commit 'a6eef3be105fb34161fd1b1d513f7d03b5f1bbe9':
  Revert "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions"
2014-10-06 00:44:49 +00:00
Nick Kralevich
c4b6e25d52 am 5ba8094f: am 558ec810: Merge "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions"
* commit '5ba8094f8bd9e927814eb2a242c6cb8d2c7e87ed':
  cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
2014-10-06 00:21:56 +00:00
Nick Kralevich
5ba8094f8b am 558ec810: Merge "cdefs.h: add artificial attribute to FORTIFY_SOURCE functions"
* commit '558ec8103bad6eed78c3e372fc9b2535a3486745':
  cdefs.h: add artificial attribute to FORTIFY_SOURCE functions
2014-10-06 00:17:23 +00:00
Nick Kralevich
540aeac4e0 am 32cfbb76: am db6fea86: Merge "further cleanup memcpy fortify implementation"
* commit '32cfbb760536a53d39f376f14eb142b6aab265c3':
  further cleanup memcpy fortify implementation
2014-10-05 17:01:23 +00:00
Nick Kralevich
32cfbb7605 am db6fea86: Merge "further cleanup memcpy fortify implementation"
* commit 'db6fea86a5cb70c5aaad61ef6c126557f36e138b':
  further cleanup memcpy fortify implementation
2014-10-05 16:54:37 +00:00
Nick Kralevich
9143ea373d am b93a965b: am ae97a776: Merge "string.h: remove unused variable"
* commit 'b93a965bce51d5be57b25f2fd32e858fd300c3e6':
  string.h: remove unused variable
2014-10-04 22:50:53 +00:00
Nick Kralevich
b93a965bce am ae97a776: Merge "string.h: remove unused variable"
* commit 'ae97a776ea900e5923d6d320d72dcc04b224796e':
  string.h: remove unused variable
2014-10-04 22:47:07 +00:00
Dmitriy Ivanov
1eb0694888 am cd9165e6: resolved conflicts for merge of 02542b3b to lmp-mr1-dev-plus-aosp
* commit 'cd9165e64952026f54260910dfe72b32387f6d48':
  Reimplement clock(3) using clock_gettime(3)
  Explain why clock(3) isn't broken.
2014-10-04 18:22:14 +00:00
Dmitriy Ivanov
cd9165e649 resolved conflicts for merge of 02542b3b to lmp-mr1-dev-plus-aosp
Change-Id: Ib881abd163fd737719b665c447055c7883a7b791
2014-10-04 11:16:42 -07:00
Alex Van Brunt
02542b3bbd am a5087148: Reimplement clock(3) using clock_gettime(3)
* commit 'a508714800242b294291060641ed35d719bdc857':
  Reimplement clock(3) using clock_gettime(3)
2014-10-04 16:44:11 +00:00
Elliott Hughes
282559de94 am 5f86872e: am 4ef0e59f: Merge "Reimplement clock(3) using clock_gettime(3)"
* commit '5f86872e672187afa6256bf3f15257af7e4eaef6':
  Reimplement clock(3) using clock_gettime(3)
2014-10-04 02:41:31 +00:00
Elliott Hughes
5f86872e67 am 4ef0e59f: Merge "Reimplement clock(3) using clock_gettime(3)"
* commit '4ef0e59f339ad138eabe3bc408beda6004f5ea83':
  Reimplement clock(3) using clock_gettime(3)
2014-10-04 02:17:19 +00:00
Elliott Hughes
22f5a61d95 am ea9800e9: Explain why clock(3) isn\'t broken.
* commit 'ea9800e98598c71fe76c4e2a0d0498b6bd490a83':
  Explain why clock(3) isn't broken.
2014-10-04 00:06:27 +00:00
Dmitriy Ivanov
18945005c2 am bf956e86: resolved conflicts for merge of 04f5f410 to lmp-mr1-dev-plus-aosp
* commit 'bf956e863e486c35700718ff84bc5483b46784e6':
  Fix gdb could not get shared library list issue
2014-10-03 19:29:45 +00:00
Dmitriy Ivanov
bf956e863e resolved conflicts for merge of 04f5f410 to lmp-mr1-dev-plus-aosp
Change-Id: I921c62dbe265b1be4d373d1988951de0f6743fba
2014-10-03 12:21:57 -07:00
Dmitriy Ivanov
e3924e6c7e am dcca3fce: am d5df4124: Merge "Add RTLD_NODELETE flag support"
* commit 'dcca3fce3f60233e74d7d23b28b04feeb4d5a0e3':
  Add RTLD_NODELETE flag support
2014-10-03 16:54:31 +00:00
Dmitriy Ivanov
dcca3fce3f am d5df4124: Merge "Add RTLD_NODELETE flag support"
* commit 'd5df4124bbbb30411ef19f7c2fbb3987d0eb9630':
  Add RTLD_NODELETE flag support
2014-10-03 16:47:05 +00:00
Ningsheng Jian
04f5f4100c Fix gdb could not get shared library list issue
Get dynamic flags from phdr table's correct entry rather the first
entry, so that the following DT_DEBUG entry can be set.

Also fix the undefined reference to LoadTask::deleter issue under gcc
-O0 option.

Bug: 17524778

(cherry picked from commit e93be99da0)

Change-Id: I347792dab25c7b19c3fc690e03d20899ce1e26e0
2014-10-02 15:35:47 -07:00
Dmitriy Ivanov
812d675be9 am bbf86e61: Fixes to linker code after the conflict resolution
* commit 'bbf86e6157ab98af7468ce5eb3292b6509a3cabd':
  Fixes to linker code after the conflict resolution
2014-10-02 21:35:22 +00:00
Dmitriy Ivanov
6d6c337244 am 2cd77d30: Undo the bad work of Automerger
* commit '2cd77d301ff6860836428cda2ccd626b3bb6912e':
  Undo the bad work of Automerger
2014-10-02 21:35:04 +00:00
Dmitriy Ivanov
1602582952 am 145372b1: Revert "L-MR1 specific fixes"
* commit '145372b1bced73595d51405bcbda73cd092e2425':
  Revert "L-MR1 specific fixes"
2014-10-02 21:35:00 +00:00
Dmitriy Ivanov
bbf86e6157 Fixes to linker code after the conflict resolution
Change-Id: Icd0728604a865b73e7af0e0aee38971a612935f2
2014-10-02 13:44:20 -07:00
Dmitriy Ivanov
2cd77d301f Undo the bad work of Automerger
Change-Id: I585388aebc556a094db4c22e647edacea7cde129
2014-10-02 13:08:39 -07:00
Dmitriy Ivanov
e7575e1b57 am d4ab8f01: am 1cd0c677: L-MR1 specific fixes
* commit 'd4ab8f0135603f252936c8d73a579c7ec5314b71':
  L-MR1 specific fixes
2014-10-02 19:51:14 +00:00
Dmitriy Ivanov
145372b1bc Revert "L-MR1 specific fixes"
This reverts commit 1cd0c6777f.
2014-10-02 12:49:42 -07:00
Dmitriy Ivanov
128c850cc1 am feaf85e3: resolved conflicts for merge of 7d971ec1 to lmp-mr1-dev-plus-aosp
* commit 'feaf85e34c0ab0a65096b183a6ae3144242d934b':
  Fix unload of recursively linked library
2014-10-02 19:42:54 +00:00
Dmitriy Ivanov
d4ab8f0135 am 1cd0c677: L-MR1 specific fixes
* commit '1cd0c6777f35b531c9ce78397d0915aa521b3e87':
  L-MR1 specific fixes
2014-10-02 19:41:50 +00:00
Dmitriy Ivanov
feaf85e34c resolved conflicts for merge of 7d971ec1 to lmp-mr1-dev-plus-aosp
Change-Id: I1cd01e5c0dd00cd55594654d53f7e0cb6edf35d9
2014-10-02 12:38:54 -07:00
Dmitriy Ivanov
651bab0e16 am b5626827: resolved conflicts for merge of f4cb6313 to lmp-mr1-dev-plus-aosp
* commit 'b5626827c9d62783737de163723e8f647eb6665f':
  Add IFUNC support for arm64 and IRELATIVE reloc
2014-10-02 19:38:02 +00:00
Dmitriy Ivanov
b5626827c9 resolved conflicts for merge of f4cb6313 to lmp-mr1-dev-plus-aosp
Change-Id: I9c033fa82c7bf07e06157227f5162d603804b7d6
2014-10-02 12:33:10 -07:00
Dmitriy Ivanov
9adb53a634 am 85fc61d7: am ef1306d7: Refactoring: C++11 style DISABLE_ bionic marcos
* commit '85fc61d7d2755fa55270d30bee348bc98adb5032':
  Refactoring: C++11 style DISABLE_ bionic marcos
2014-10-02 19:27:30 +00:00
Dmitriy Ivanov
da5b0de585 am 2fbf6593: resolved conflicts for merge of 61c4147f to lmp-mr1-dev-plus-aosp
* commit '2fbf6593aec12d0644308775463bd0c4ccff4aa6':
  Reset enviroment for math_tests
2014-10-02 19:27:30 +00:00
Dmitriy Ivanov
85fc61d7d2 am ef1306d7: Refactoring: C++11 style DISABLE_ bionic marcos
* commit 'ef1306d77718cc74a8df5673a15649dea317571d':
  Refactoring: C++11 style DISABLE_ bionic marcos
2014-10-02 19:23:57 +00:00
Dmitriy Ivanov
7c96e34558 am 6aac3cd1: resolved conflicts for merge of ae69a958 to lmp-mr1-dev-plus-aosp
* commit '6aac3cd112360631970ff3a7b809d58ed88a10c9':
  Load libraries in breadth-first order
2014-10-02 19:23:44 +00:00
Dmitriy Ivanov
2fbf6593ae resolved conflicts for merge of 61c4147f to lmp-mr1-dev-plus-aosp
Change-Id: I4ed15dbb2136a1984f7651dcc85d05e3e585ac51
2014-10-02 12:22:07 -07:00
Dmitriy Ivanov
6aac3cd112 resolved conflicts for merge of ae69a958 to lmp-mr1-dev-plus-aosp
Change-Id: Ia466577ef6e627cc6fcef46aa37cce21acbc8519
2014-10-02 12:17:32 -07:00
Dmitriy Ivanov
166aa84826 am e3105fee: resolved conflicts for merge of c0133a73 to lmp-mr1-dev-plus-aosp
* commit 'e3105fee224456000f84a03a767685849055e381':
  Revert "Load libraries in breadth-first order"
2014-10-02 19:04:09 +00:00
Dmitriy Ivanov
e3105fee22 resolved conflicts for merge of c0133a73 to lmp-mr1-dev-plus-aosp
Change-Id: I31d81e91d796fa27f9c88a7edc96c97320ade72c
2014-10-02 11:59:28 -07:00
Dmitriy Ivanov
a79c70dd59 am daf15a6c: resolved conflicts for merge of 8de1ddec to lmp-mr1-dev-plus-aosp
* commit 'daf15a6ca7b1ef7f16103e339334eda3b18aa425':
  Fix order of soinfo links (repairs libcxx tests).
2014-10-02 18:41:08 +00:00
Dmitriy Ivanov
daf15a6ca7 resolved conflicts for merge of 8de1ddec to lmp-mr1-dev-plus-aosp
Change-Id: I9bb063dcf684307181ce4a2b1e5f96bd0d78aaff
2014-10-02 11:34:05 -07:00
Dmitriy Ivanov
e027ca9665 am 32ebc71f: resolved conflicts for merge of 59c12a65 to lmp-mr1-dev-plus-aosp
* commit '32ebc71f99523eb2496a4be175a40dcd10dc699a':
  Load libraries in breadth-first order
2014-10-02 18:32:33 +00:00
Dmitriy Ivanov
32ebc71f99 resolved conflicts for merge of 59c12a65 to lmp-mr1-dev-plus-aosp
Change-Id: I92667dd3d55c8cfd2586c88362fd542c7a6ff9b2
2014-10-02 11:27:57 -07:00
Dmitriy Ivanov
0427f87378 am dadc782c: resolved conflicts for merge of 81fe2b16 to lmp-mr1-dev-plus-aosp
* commit 'dadc782cf01ebfb1dc3401352450922a9d644614':
  Enable clang compilation with libc but not linker.
2014-10-02 18:10:01 +00:00
Dmitriy Ivanov
dadc782cf0 resolved conflicts for merge of 81fe2b16 to lmp-mr1-dev-plus-aosp
Change-Id: I61272d86ebf0d40262e88f5f4327cf97be035bda
2014-10-02 11:06:05 -07:00
Dmitriy Ivanov
e4874d6b1d am 9b6b6e6d: resolved conflicts for merge of 7210c41f to lmp-mr1-dev-plus-aosp
* commit '9b6b6e6d4a9fa83c6ded39a618e66c05e21d2989':
  Encapsulate soinfo_link_image and soinfo_relocate
2014-10-02 17:57:20 +00:00
Dmitriy Ivanov
9b6b6e6d4a resolved conflicts for merge of 7210c41f to lmp-mr1-dev-plus-aosp
Change-Id: I44d84a95f506e89e77cce8c218083a80ca5724b9
2014-10-02 10:54:08 -07:00
Dmitriy Ivanov
3ca82fd210 am 1c695166: am 4466bd72: Implement LinkedList::visit()
* commit '1c69516677e9a7943e90add7f1e44361c7a53b38':
  Implement LinkedList::visit()
2014-10-02 17:38:12 +00:00
Dmitriy Ivanov
5d20f051b0 am de1943eb: resolved conflicts for merge of ff01f6fc to lmp-mr1-dev-plus-aosp
* commit 'de1943eb82116d879344dc17f54f7188d8119740':
  Introduce size-based r/w allocators
2014-10-02 17:38:11 +00:00
Dmitriy Ivanov
15f795113e am 846be3ea: resolved conflicts for merge of 4d01d08c to lmp-mr1-dev-plus-aosp
* commit '846be3ea5d71bc69744747d19b0a9b0dcee4c376':
  Erase elements in LinkedList::remove_if
2014-10-02 17:38:10 +00:00
Dmitriy Ivanov
e788f1da5d am cd7890ba: resolved conflicts for merge of cfad7ae9 to lmp-mr1-dev-plus-aosp
* commit 'cd7890ba2d0297f3857d65a29fe65da409ccc319':
  Replace NULL with nullptr
2014-10-02 17:38:10 +00:00
Dmitriy Ivanov
1c69516677 am 4466bd72: Implement LinkedList::visit()
* commit '4466bd72fb9daeb0ef8f250e8314b555aab30817':
  Implement LinkedList::visit()
2014-10-02 17:34:40 +00:00
Dmitriy Ivanov
de1943eb82 resolved conflicts for merge of ff01f6fc to lmp-mr1-dev-plus-aosp
Change-Id: I90e7700708a305a7e93dd3ef3a32c5508038b53b
2014-10-02 10:33:04 -07:00
Dmitriy Ivanov
846be3ea5d resolved conflicts for merge of 4d01d08c to lmp-mr1-dev-plus-aosp
Change-Id: Icaf503240281596de05ee331457200b61d57ab46
2014-10-02 10:28:43 -07:00
Dmitriy Ivanov
cd7890ba2d resolved conflicts for merge of cfad7ae9 to lmp-mr1-dev-plus-aosp
Change-Id: I119e37c6689c4cc49663748a72c17dc55a362b02
2014-10-02 10:21:34 -07:00
Dmitriy Ivanov
ee5e2fb541 am 47102e1e: am 5dfe802d: Remove unnecessary calls to LinkedList::clear()
* commit '47102e1e1dd538089198c6889b0109f1f9734b77':
  Remove unnecessary calls to LinkedList::clear()
2014-10-02 17:10:27 +00:00
Dmitriy Ivanov
512c261c8e am abf6390f: resolved conflicts for merge of 93c3f420 to lmp-mr1-dev-plus-aosp
* commit 'abf6390f37b6d541fa3d26583fc8506047b50de8':
  Enable __cxa_atexit && __cxa_finalize for linker
2014-10-02 17:10:27 +00:00
Dmitriy Ivanov
47102e1e1d am 5dfe802d: Remove unnecessary calls to LinkedList::clear()
* commit '5dfe802d0dedbfce355a7ece5bc77c7346941bb2':
  Remove unnecessary calls to LinkedList::clear()
2014-10-02 17:06:50 +00:00
Dmitriy Ivanov
c05ceefcd7 am 88eb2a9c: resolved conflicts for merge of 3bbd218e to lmp-mr1-dev-plus-aosp
* commit '88eb2a9cf5f2c71bdd73d36ff7dbc29a655cb1ec':
  Bump soinfo version
2014-10-02 17:06:48 +00:00
Dmitriy Ivanov
abf6390f37 resolved conflicts for merge of 93c3f420 to lmp-mr1-dev-plus-aosp
Change-Id: I3cd9c572ec096dc14e0356fe2725074bc7af29d3
2014-10-02 10:05:02 -07:00
Dmitriy Ivanov
88eb2a9cf5 resolved conflicts for merge of 3bbd218e to lmp-mr1-dev-plus-aosp
Change-Id: Ie7f85be196a44ab59554384274f2022239f91b0e
2014-10-02 09:59:26 -07:00
Dmitriy Ivanov
327bf8ad36 am 58481547: Merge "resolved conflicts for merge of bd321c11 to lmp-mr1-dev-plus-aosp" into lmp-mr1-dev-plus-aosp
* commit '5848154714fbe84de46af33ee9a57c7588094167':
  Run constructors before resolving ifunc functions
2014-10-02 16:56:38 +00:00
Dmitriy Ivanov
5848154714 Merge "resolved conflicts for merge of bd321c11 to lmp-mr1-dev-plus-aosp" into lmp-mr1-dev-plus-aosp 2014-10-02 16:51:08 +00:00
Dmitriy Ivanov
0a21fe5dcd resolved conflicts for merge of bd321c11 to lmp-mr1-dev-plus-aosp
Change-Id: I6ee8a75840073ed00eda9f8f0fbd372cdcfb0be0
2014-10-02 09:49:28 -07:00
Dmitriy Ivanov
f126b0d59f am 8fd54631: resolved conflicts for merge of 31b88da8 to lmp-mr1-dev-plus-aosp
* commit '8fd546313cb47b42a70478a59b5b556bf4a61966':
  Added test for ifunc support in dynamic linker.
2014-10-02 15:59:45 +00:00
Dmitriy Ivanov
8fd546313c resolved conflicts for merge of 31b88da8 to lmp-mr1-dev-plus-aosp
Change-Id: I3081cba9e1372adc085380cda01d4825543a6727
2014-10-02 08:53:42 -07:00
Elliott Hughes
322bce681c am d081e8b5: am e4f8962a: Merge "Update bionic to tzdata 2014h." into lmp-mr1-dev
* commit 'd081e8b53960ed3be976e75bb7ac2c043898c4ad':
  Update bionic to tzdata 2014h.
2014-10-02 12:47:19 +00:00
Elliott Hughes
14afc13b99 am 26ce6c21: am b5f5b0e4: Fix update-tzdata.py to rebuild icu4c .dat file.
* commit '26ce6c215bcd4fe6befce3b55228966e27775616':
  Fix update-tzdata.py to rebuild icu4c .dat file.
2014-10-02 12:47:18 +00:00
Elliott Hughes
d081e8b539 am e4f8962a: Merge "Update bionic to tzdata 2014h." into lmp-mr1-dev
* commit 'e4f8962ab5b4fb64842f4635fdf01a860bb180ee':
  Update bionic to tzdata 2014h.
2014-10-02 12:37:01 +00:00
Elliott Hughes
26ce6c215b am b5f5b0e4: Fix update-tzdata.py to rebuild icu4c .dat file.
* commit 'b5f5b0e418e5c382573e367dd4aff9373180bbe4':
  Fix update-tzdata.py to rebuild icu4c .dat file.
2014-10-02 12:37:00 +00:00
Dmitriy Ivanov
1cd0c6777f L-MR1 specific fixes
Reset soinfo version to 0.
 Disable ifunc test for arm64 because of old toolchain
 in lmp-mr1-dev branch

 Note: this commit should be reverted in -plus-aosp branch.

Change-Id: I2d6d996d43bc35d5d4975c745779f43a988b31e6
2014-10-01 16:26:49 -07:00
Dmitriy Ivanov
7d971ec14b Fix unload of recursively linked library
Expanded test for recursive libs. Fixed bug with unnecessary
  soinfo_free of already loaded library.

(cherry picked from commit a6ac54a215)

Change-Id: I6907c723d9fbdf6b2777f3f236b1e29b0843edd6
2014-10-01 16:04:58 -07:00
Dmitriy Ivanov
f4cb631364 Add IFUNC support for arm64 and IRELATIVE reloc
There are number of changes in the way IFUNC related relocations are done:
 1. IRELATIVE relocations are now supported for x86/x86_64 and arm64.
 2. IFUNC relocations are now relying on static linker to generate
    them in correct order - this removes necessety of additional
    relocation pass for ifuncs.
 3. Related to 2: rela?.dyn relocations are preformed before .plt ones.
 4. Ifunc are resolved on symbol lookup this approach allowed to avoid
    mprotect(PROT_WRITE) call on r-x program segments.

Bug: 17399706
Bug: 17177284

(cherry picked from commit 9aea164457)

Change-Id: Ie19d900fc203beb93faf8943b0d06d534a6de4ad
2014-10-01 16:04:31 -07:00
Dmitriy Ivanov
ef1306d777 Refactoring: C++11 style DISABLE_ bionic marcos
Enable the -std=gnu++11 flag for libstdc++ static and
  dynamic libs.

  ScopeGuard uses DISABLE_ macros instead of '= delete';

(cherry picked from commit d9ff722661)

Change-Id: If2573d080770e18b36b56106f2369f7bb682cd3c
2014-10-01 16:03:51 -07:00
Dmitriy Ivanov
61c4147fa8 Reset enviroment for math_tests
Bug: 17390824

(cherry picked from commit 7b956ede3f)

Change-Id: I5d804ceb5e69533584161bfed6787529cd8296fb
2014-10-01 16:03:40 -07:00
Dmitriy Ivanov
ae69a9584b Load libraries in breadth-first order
This patch fixes the problem with symbol search order
  for dlsym(RTLD_DEFAULT/RTLD_NEXT, .) by loading libraries
  and ld_preloads in correct order.

Bug: https://code.google.com/p/android/issues/detail?id=74255
Attempt: 2

(cherry picked from commit 14669a939d)

Change-Id: Id87540c96a2242220967b6fa5d84ddcd829e2b97
2014-10-01 16:01:28 -07:00
Dmitriy Ivanov
c0133a73b6 Revert "Load libraries in breadth-first order"
This reverts commit a3ad450a2e.

(cherry picked from commit 498eb18b82)

Change-Id: Iec7eab83d0c0ed1604e1e8ea3f9e9d0ce1d29680
2014-10-01 16:00:52 -07:00
Dmitriy Ivanov
8de1ddece0 Fix order of soinfo links (repairs libcxx tests).
(cherry picked from commit b2a30ee8d2)

Change-Id: I59c5333bc050cbbea14051cea9220be2f64ee383
2014-10-01 16:00:41 -07:00
Dmitriy Ivanov
59c12a6527 Load libraries in breadth-first order
This patch fixes the problem with symbol search order
  for dlsym(RTLD_DEFAULT/RTLD_NEXT, .) by loading libraries
  and ld_preloads in correct order.

Bug: https://code.google.com/p/android/issues/detail?id=74255

(cherry picked from commit a3ad450a2e)

Change-Id: I1125de10272c84e4f075cbc72859c1f6b3e89943
2014-10-01 16:00:29 -07:00
Chih-Hung Hsieh
81fe2b16dc Enable clang compilation with libc but not linker.
Clang is still disabled for x86 and x86_64 long double code,
for x86_64 special assembly instruction, and the linker module.

BUG: 17163651
BUG: 17302991
BUG: 17403674

(cherry picked from commit b58db8b083)

Change-Id: I916c05056d37a9c287b0a5ae3b1a209d98c8f70e
2014-10-01 15:57:09 -07:00
Dmitriy Ivanov
7210c41fdc Encapsulate soinfo_link_image and soinfo_relocate
Also get rid of needed[] array for these functions

(cherry picked from commit 29bbc9dd4c)

Change-Id: Id208621f66afa2e02a6b3facacee7d874466d81b
2014-10-01 15:56:44 -07:00
Dmitriy Ivanov
4466bd72fb Implement LinkedList::visit()
(cherry picked from commit a492605849)

Change-Id: I59554be45c910bfe33494016595a5ade9daad230
2014-10-01 15:56:23 -07:00
Dmitriy Ivanov
ff01f6fcce Introduce size-based r/w allocators
(cherry picked from commit 0cd83ebb0e)

Change-Id: Ib037bd5313c9a78b6051482f14e789aa820b4dd1
2014-10-01 15:55:58 -07:00
Dmitriy Ivanov
4d01d08c29 Erase elements in LinkedList::remove_if
(cherry picked from commit 4bea498544)

Change-Id: I1ffe248bc2b7572f38fbd987e9c6db5ecbd4559d
2014-10-01 15:55:35 -07:00
Dmitriy Ivanov
cfad7ae934 Replace NULL with nullptr
(cherry picked from commit 851135bf99)

Change-Id: Ic4997907680db7472ef38ffb0f0ca66fff37b797
2014-10-01 15:54:26 -07:00
Dmitriy Ivanov
5dfe802d0d Remove unnecessary calls to LinkedList::clear()
(cherry picked from commit 608217e167)

Change-Id: I031359d79b2e77977ace197ef410e41539dc0ce6
2014-10-01 15:53:07 -07:00
Dmitriy Ivanov
93c3f4203c Enable __cxa_atexit && __cxa_finalize for linker
This allows adding destructors to classes used
 for global variables.

(cherry picked from commit 14241402de)

Change-Id: I1d8776130d1e01a8c53d23a2949f5010f4c96b16
2014-10-01 15:52:38 -07:00
Dmitriy Ivanov
3bbd218ef1 Bump soinfo version
This includes:
 1. Placing has_ifunc after fields with version = 0
 2. Switch to has_min_version(v) function.
 3. Minor soinfo initialization refactoring (placement new + ctor)

(cherry picked from commit 0d15094287)

Change-Id: Idf135fdd3d4826b5653f32add2adc6db5d4a4f95
2014-10-01 15:52:15 -07:00
Dmitriy Ivanov
bd321c1106 Run constructors before resolving ifunc functions
Bug: 17177284

(cherry picked from commit 9598b8c415)

Change-Id: I2c9631ee1cd77f8cf95ec0216a35b605c8786454
2014-10-01 15:51:47 -07:00
Brigid Smith
31b88da843 Added test for ifunc support in dynamic linker.
ifuncs now work in i386 and x86_64 when called in the same library as
well as in a different library.

Bug:6657325
(cherry picked from commit c5a13efa9b)

Change-Id: I321d780bc2f9bd1baa749e1acacd2683aefe827b
2014-10-01 15:50:38 -07:00
Hans Boehm
b24442611c am 4aa38919: am 2d111d9e: Merge "Make memory_order_acquire visible in global namespace"
* commit '4aa389193e79d98754f928f9a3624c6c3fffe2ca':
  Make memory_order_acquire visible in global namespace
2014-10-01 19:27:12 +00:00
Hans Boehm
4aa389193e am 2d111d9e: Merge "Make memory_order_acquire visible in global namespace"
* commit '2d111d9eb10b6c48e2e47251be66b418a6109dd9':
  Make memory_order_acquire visible in global namespace
2014-10-01 19:23:03 +00:00
Christopher Ferris
3d5f6c4997 am 7239135e: am b19bd93f: Merge "Add stpcpy assembler version."
* commit '7239135eb4d651140a40cd4549b8d9e1101a0c20':
  Add stpcpy assembler version.
2014-10-01 18:29:10 +00:00
Christopher Ferris
7239135eb4 am b19bd93f: Merge "Add stpcpy assembler version."
* commit 'b19bd93f8b83307f2f7530545f7c78824914f4eb':
  Add stpcpy assembler version.
2014-10-01 18:24:26 +00:00
Elliott Hughes
e4f8962ab5 Merge "Update bionic to tzdata 2014h." into lmp-mr1-dev 2014-10-01 18:02:51 +00:00
Elliott Hughes
e24825bc9c am 600ab1ca: am cadccfd7: Merge "Update bionic to tzdata 2014h."
* commit '600ab1ca01bbd302e122ae66b79c70d20e1d7621':
  Update bionic to tzdata 2014h.
2014-10-01 17:42:53 +00:00
Elliott Hughes
67cd68a321 am 0d1fa6f2: am 89fd3236: Merge "Fix update-tzdata.py to rebuild icu4c .dat file."
* commit '0d1fa6f29bd60ea08791b8c7f4e9c2fe5728706c':
  Fix update-tzdata.py to rebuild icu4c .dat file.
2014-10-01 17:42:52 +00:00
Elliott Hughes
600ab1ca01 am cadccfd7: Merge "Update bionic to tzdata 2014h."
* commit 'cadccfd70821aeb107b8fc0084da04faecbfde2f':
  Update bionic to tzdata 2014h.
2014-10-01 17:38:45 +00:00
Elliott Hughes
0d1fa6f29b am 89fd3236: Merge "Fix update-tzdata.py to rebuild icu4c .dat file."
* commit '89fd32362bb62775aad001802bc79e3f07d7d62f':
  Fix update-tzdata.py to rebuild icu4c .dat file.
2014-10-01 17:38:44 +00:00
Elliott Hughes
d18205049d Update bionic to tzdata 2014h.
From the release notes:

  Changes affecting past time stamps

    America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.

    Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
    not 1920-01-06.  The old entry was based on a misinterpretation of Shanks.

    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: Africa/Blantyre, Africa/Bujumbura,
    Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
    Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.

Bug: 17731498

(cherry picked from commit 0c8fb51e6b)

Change-Id: Icf8a9cbd309951b4ffc20c74eb1e78c1e39c222f
2014-10-01 10:21:07 -07:00
Elliott Hughes
b5f5b0e418 Fix update-tzdata.py to rebuild icu4c .dat file.
Bug: 17731498

(cherry picked from commit f8896c6c93)

Change-Id: If97e1ccf593a2ed6c2356077e660d6fd88a05875
2014-10-01 10:07:24 -07:00
Dan Albert
27d1976f0c am 3c113851: am 81156d93: Merge "Add coverage flag for libm."
* commit '3c1138510e6e8e0b9c87cc5cf45a7a8780aaf961':
  Add coverage flag for libm.
2014-10-01 02:12:33 +00:00
Dan Albert
3c1138510e am 81156d93: Merge "Add coverage flag for libm."
* commit '81156d93c557e88379dd3e9d869dcc97a15293f5':
  Add coverage flag for libm.
2014-10-01 01:38:13 +00:00
Elliott Hughes
420b580cdc am 31052a12: am 252c1ac9: Merge "Update our FreeBSD realpath(3) to upstream head."
* commit '31052a12eb8c339364cd383c5a99997c02436409':
  Update our FreeBSD realpath(3) to upstream head.
2014-10-01 00:08:06 +00:00
Elliott Hughes
31052a12eb am 252c1ac9: Merge "Update our FreeBSD realpath(3) to upstream head."
* commit '252c1ac9738ff6187354f243ef118eac962b65dc':
  Update our FreeBSD realpath(3) to upstream head.
2014-10-01 00:05:10 +00:00
Dmitriy Ivanov
ad93ccb2a6 am 18ab39b7: am 701cf941: Merge "Fix mips build"
* commit '18ab39b79a4b1df8af1820688196379b5e670018':
  Fix mips build
2014-09-30 23:55:22 +00:00
Dan Albert
af2f7d2db8 am 63de1998: am e04aa450: Merge "Clean up the pthread key tests."
* commit '63de199882ac6a34897f5e6f42387a14b234d975':
  Clean up the pthread key tests.
2014-09-30 23:55:21 +00:00
Dmitriy Ivanov
18ab39b79a am 701cf941: Merge "Fix mips build"
* commit '701cf9419b4df92bd959bbc6f18150f6ae76df7c':
  Fix mips build
2014-09-30 23:51:07 +00:00
Dan Albert
63de199882 am e04aa450: Merge "Clean up the pthread key tests."
* commit 'e04aa450c2b51ea066d1a1c37978cce808d13872':
  Clean up the pthread key tests.
2014-09-30 23:51:07 +00:00
Dmitriy Ivanov
addec2929d am 3e05ac0f: am 1f7d5ac5: Merge "Fix unused DT entry warnings."
* commit '3e05ac0ffe333bade13e4961aa4cc0e445f08536':
  Fix unused DT entry warnings.
2014-09-30 22:30:11 +00:00
Dmitriy Ivanov
3e05ac0ffe am 1f7d5ac5: Merge "Fix unused DT entry warnings."
* commit '1f7d5ac53854a09bbcace08b3a1d1b9cf3f2eed3':
  Fix unused DT entry warnings.
2014-09-30 22:26:16 +00:00
Dan Albert
b0dfdec557 am 9d9b7d7e: am 0481471b: Merge "Switch benchmarks and tests to libc++."
* commit '9d9b7d7e7c55cdc7f10a2882e16b864673a3f7e7':
  Switch benchmarks and tests to libc++.
2014-09-30 17:44:13 +00:00
Dan Albert
75894fc9f1 am 0b5f8c7a: am e49491ad: Merge "Ignore multiple symbol definition errors."
* commit '0b5f8c7a7d82bdaf0a8030f3be6561c0e67e0378':
  Ignore multiple symbol definition errors.
2014-09-30 17:44:13 +00:00
Dan Albert
9d9b7d7e7c am 0481471b: Merge "Switch benchmarks and tests to libc++."
* commit '0481471b1bb95a90f632a9fb59c7a1767b9836c8':
  Switch benchmarks and tests to libc++.
2014-09-30 17:39:04 +00:00
Dan Albert
0b5f8c7a7d am e49491ad: Merge "Ignore multiple symbol definition errors."
* commit 'e49491ada4c8e7827329b56a93e5377433aa9084':
  Ignore multiple symbol definition errors.
2014-09-30 17:39:04 +00:00
Dmitriy Ivanov
64da5c186d am d1d4e153: am 9997daa0: Merge "Return has_DT_SYMBOLIC flag."
* commit 'd1d4e153e8adb29048b9bf79a41027b49294a47c':
  Return has_DT_SYMBOLIC flag.
2014-09-30 16:56:09 +00:00
Dmitriy Ivanov
d1d4e153e8 am 9997daa0: Merge "Return has_DT_SYMBOLIC flag."
* commit '9997daa0ff8f630bee5d3b8eb0ab15a0ba1e5cf6':
  Return has_DT_SYMBOLIC flag.
2014-09-30 16:50:04 +00:00
Andrew Hsieh
47f97dedd0 am ccf9a9d4: am b104be32: Merge "Remove arch-mips64/bionic/__get_sp.S"
* commit 'ccf9a9d4498f0bd6d5e16d14741b9d776f5737ab':
  Remove arch-mips64/bionic/__get_sp.S
2014-09-30 06:30:09 +00:00
Christopher Ferris
8211790e3f am 2ef71b1d: am 85a932c0: Merge "Cleanup arm assembly."
* commit '2ef71b1d09afe2557aeafa8d6e230c4161efd3f5':
  Cleanup arm assembly.
2014-09-30 06:30:08 +00:00
Andrew Hsieh
ccf9a9d449 am b104be32: Merge "Remove arch-mips64/bionic/__get_sp.S"
* commit 'b104be321f2538a6e0bbd566bc958537d1f65cef':
  Remove arch-mips64/bionic/__get_sp.S
2014-09-30 06:03:31 +00:00
Christopher Ferris
2ef71b1d09 am 85a932c0: Merge "Cleanup arm assembly."
* commit '85a932c0c9225e0f71d94a0d8cbac85089a398cf':
  Cleanup arm assembly.
2014-09-30 06:03:31 +00:00
Dan Albert
a0489c0093 am 22b9dec9: am 73e6c9b3: Merge "Static libc++ is being renamed libc++_static."
* commit '22b9dec925a219e6cdada2fbfcbd3a7c72f4fbdc':
  Static libc++ is being renamed libc++_static.
2014-09-29 21:02:32 +00:00
Dan Albert
22b9dec925 am 73e6c9b3: Merge "Static libc++ is being renamed libc++_static."
* commit '73e6c9b39353807aae80170355ec0b67b7a4ce16':
  Static libc++ is being renamed libc++_static.
2014-09-29 20:55:26 +00:00
Dan Albert
d288a657dd am b3995bff: am 7ca5c4b9: Merge "Make __aeabi_*() symbols weak."
* commit 'b3995bff21c3e1f592dfbb29eb47cbe0e15a53b0':
  Make __aeabi_*() symbols weak.
2014-09-29 19:44:59 +00:00
Dan Albert
c4dd2d05a6 am 68017e28: am 98ab0c52: Merge "Add a dummy libdl.a."
* commit '68017e2875262c8d434dfcb41c15d727a06bc04f':
  Add a dummy libdl.a.
2014-09-29 19:44:59 +00:00
Elliott Hughes
5991f0f1a8 am 3db6ed61: am d644fecc: Merge "Fix gdb could not get shared library list issue"
* commit '3db6ed61eb328a9b4805ab4a736027440a529ad5':
  Fix gdb could not get shared library list issue
2014-09-29 19:44:46 +00:00
Christopher Ferris
429479e5e1 am 0fc3711b: am aa66e882: Merge "Add __memcpy_chk assembly for 64 bit."
* commit '0fc3711b22f4819c5d346fe7507e8800e2a64b09':
  Add __memcpy_chk assembly for 64 bit.
2014-09-29 13:14:06 +00:00
Dan Albert
b3995bff21 am 7ca5c4b9: Merge "Make __aeabi_*() symbols weak."
* commit '7ca5c4b99b308550e34e185ed632b8a5ad5341ee':
  Make __aeabi_*() symbols weak.
2014-09-27 00:30:06 +00:00
Dan Albert
68017e2875 am 98ab0c52: Merge "Add a dummy libdl.a."
* commit '98ab0c52f5672540c442611d838011be9252079b':
  Add a dummy libdl.a.
2014-09-27 00:30:05 +00:00
Elliott Hughes
3db6ed61eb am d644fecc: Merge "Fix gdb could not get shared library list issue"
* commit 'd644fecc8e5eec0107ca4e2011cee0e5c0a10bdd':
  Fix gdb could not get shared library list issue
2014-09-26 23:09:52 +00:00
Christopher Ferris
0fc3711b22 am aa66e882: Merge "Add __memcpy_chk assembly for 64 bit."
* commit 'aa66e8828048d8d6fd7e4bb9c5e341ed89614266':
  Add __memcpy_chk assembly for 64 bit.
2014-09-26 21:04:56 +00:00
Elliott Hughes
6be4e2c648 am 0d7599e0: am aaad5485: Merge "Re-expose more stdio implementation details for LP32." into lmp-dev
* commit '0d7599e0b58a6916eeb1d2b62e5cc33fd8da1b3a':
  Re-expose more stdio implementation details for LP32.
2014-09-26 15:24:41 +00:00
Christopher Ferris
d518b91cde am 860f51d7: am 6c69afdb: Fix sys_stat.mkfifo when not run as root.
* commit '860f51d7f2efde058716376fcacc2746a9041c41':
  Fix sys_stat.mkfifo when not run as root.
2014-09-26 15:24:41 +00:00
Elliott Hughes
0d7599e0b5 am aaad5485: Merge "Re-expose more stdio implementation details for LP32." into lmp-dev
* commit 'aaad548535c34e2bba16b2a0b71173e0ae4b16c0':
  Re-expose more stdio implementation details for LP32.
2014-09-26 00:22:27 +00:00
Christopher Ferris
860f51d7f2 am 6c69afdb: Fix sys_stat.mkfifo when not run as root.
* commit '6c69afdb6ddd56e011b59e3060f12a5bdffb5f5c':
  Fix sys_stat.mkfifo when not run as root.
2014-09-26 00:22:26 +00:00
Dan Albert
b812af0557 am 775c852e: am 852d4fbb: Merge "Prevent benchmarks from being optimized away."
* commit '775c852e14554689b957996acf7da17b8afbb34a':
  Prevent benchmarks from being optimized away.
2014-09-25 23:26:16 +00:00
Dan Albert
775c852e14 am 852d4fbb: Merge "Prevent benchmarks from being optimized away."
* commit '852d4fbbe9ddee0261c6b3dcadcd75185157ed46':
  Prevent benchmarks from being optimized away.
2014-09-25 23:14:43 +00:00
Elliott Hughes
a3ab14c054 am 184fd813: am 17e7d320: Merge "Re-expose more stdio implementation details for LP32."
* commit '184fd8135c193be8a5d0b51e20fe5b86374913f1':
  Re-expose more stdio implementation details for LP32.
2014-09-25 03:42:05 +00:00
Elliott Hughes
184fd8135c am 17e7d320: Merge "Re-expose more stdio implementation details for LP32."
* commit '17e7d3208c68ff69819179d8a63ca234be2d1ab9':
  Re-expose more stdio implementation details for LP32.
2014-09-25 03:31:24 +00:00
Christopher Ferris
7a941b86e1 am 17c23691: am a864e72b: Merge "Fix sys_stat.mkfifo when not run as root."
* commit '17c236912ba89dfba11887b7e73bf31e0780f6df':
  Fix sys_stat.mkfifo when not run as root.
2014-09-25 00:27:51 +00:00
Christopher Ferris
17c236912b am a864e72b: Merge "Fix sys_stat.mkfifo when not run as root."
* commit 'a864e72b566234fdc41344725aa9b4f47c5baba3':
  Fix sys_stat.mkfifo when not run as root.
2014-09-25 00:17:18 +00:00
Elliott Hughes
e5ffc54701 am a15cff61: am 567d3fcb: Merge "Switch to OpenBSD fopen/fclose."
* commit 'a15cff614f894933d00ec7256c9762ac76d64178':
  Switch to OpenBSD fopen/fclose.
2014-09-24 20:57:23 +00:00
Elliott Hughes
4d1d536fc4 am 4492dde6: am 4fcfd3a4: Merge "Sync with current upstream getopt_long.c."
* commit '4492dde63e1d1a22a5708906102284b1fb06e5dc':
  Sync with current upstream getopt_long.c.
2014-09-24 20:57:23 +00:00
Elliott Hughes
a15cff614f am 567d3fcb: Merge "Switch to OpenBSD fopen/fclose."
* commit '567d3fcb7ece287a84912183e91eff851fa48fc2':
  Switch to OpenBSD fopen/fclose.
2014-09-24 20:45:22 +00:00
Elliott Hughes
4492dde63e am 4fcfd3a4: Merge "Sync with current upstream getopt_long.c."
* commit '4fcfd3a474ae5a9e5095ca92a10a8aaa0a3dae5a':
  Sync with current upstream getopt_long.c.
2014-09-24 20:45:22 +00:00
Elliott Hughes
3da19dffb3 am def2d26a: am f05410ed: Merge "Sync with upstream findfp.c."
* commit 'def2d26a5dcb0436fe133c7dbd9008b01982083d':
  Sync with upstream findfp.c.
2014-09-24 18:22:27 +00:00
Elliott Hughes
def2d26a5d am f05410ed: Merge "Sync with upstream findfp.c."
* commit 'f05410edc634040f96643b8f378320faddfef423':
  Sync with upstream findfp.c.
2014-09-24 18:09:47 +00:00
Dan Albert
5023cbd146 am 9b73b6bf: am 21db6ff1: Merge "Coverage configs for bionic."
* commit '9b73b6bf6327ff94a2e26d0ab60709989a6751c7':
  Coverage configs for bionic.
2014-09-24 17:56:37 +00:00
Dan Albert
fff829d9cd am 13b50586: am 4a6e7110: Merge "Add a dummy atexit(3) to the linker."
* commit '13b50586da02270a93a1ab666c0290a2bbfa4289':
  Add a dummy atexit(3) to the linker.
2014-09-24 17:56:36 +00:00
Dan Albert
9b73b6bf63 am 21db6ff1: Merge "Coverage configs for bionic."
* commit '21db6ff108a8df43582bf2ca0d7d6c925f26b5e5':
  Coverage configs for bionic.
2014-09-24 17:45:24 +00:00
Dan Albert
13b50586da am 4a6e7110: Merge "Add a dummy atexit(3) to the linker."
* commit '4a6e71100e9c99b90b517be5a8e1c21616772d16':
  Add a dummy atexit(3) to the linker.
2014-09-24 17:45:23 +00:00
Dan Albert
56da92b213 am c3c75301: am 086bb382: Fix incorrect parameter types for locale funcs.
* commit 'c3c75301b1592a5a3c913a72e92da3bfd7b49ad1':
  Fix incorrect parameter types for locale funcs.
2014-09-24 17:31:54 +00:00
Dan Albert
c3c75301b1 am 086bb382: Fix incorrect parameter types for locale funcs.
* commit '086bb382db3de7459bc5fad6bb1c257ca331b0e8':
  Fix incorrect parameter types for locale funcs.
2014-09-24 17:24:11 +00:00
Dan Albert
22c07f16df am d51ca155: am fc5a93f7: Merge "Fix incorrect parameter types for locale funcs."
* commit 'd51ca1556753fed5f20cd09a8608d0ee1553e41c':
  Fix incorrect parameter types for locale funcs.
2014-09-24 17:18:35 +00:00
Elliott Hughes
9c12d60f3d am fe1e08f6: am ebf37e38: Merge "Switch to OpenBSD flags.c."
* commit 'fe1e08f61c1514757e66b2295a354816afb81816':
  Switch to OpenBSD flags.c.
2014-09-24 17:18:26 +00:00
Christopher Ferris
bd14d312f4 am 7eb3f742: am 04643c18: Merge "Remove the unnecessary generic-neon code."
* commit '7eb3f742b4ea9bc3d321b241be86e6828a28dc73':
  Remove the unnecessary generic-neon code.
2014-09-24 17:17:06 +00:00
Elliott Hughes
55078ef297 am 39e47991: am c57e5c82: Merge "CLOEXEC support in fdopen, freopen, and mkostemp/mkostemps."
* commit '39e479913c30d003cac0716bb27352fc191c7617':
  CLOEXEC support in fdopen, freopen, and mkostemp/mkostemps.
2014-09-24 17:16:59 +00:00
Dan Albert
d51ca15567 am fc5a93f7: Merge "Fix incorrect parameter types for locale funcs."
* commit 'fc5a93f7a2ea2be740f2c909e8a6a192fa65adc8':
  Fix incorrect parameter types for locale funcs.
2014-09-24 16:13:43 +00:00
Elliott Hughes
fe1e08f61c am ebf37e38: Merge "Switch to OpenBSD flags.c."
* commit 'ebf37e38861e376ae47c72d45ab8de6703dd18f0':
  Switch to OpenBSD flags.c.
2014-09-24 05:08:58 +00:00
Christopher Ferris
7eb3f742b4 am 04643c18: Merge "Remove the unnecessary generic-neon code."
* commit '04643c181c3256348a6fd78e54c8bc5527ad0b0a':
  Remove the unnecessary generic-neon code.
2014-09-24 04:15:10 +00:00
Elliott Hughes
39e479913c am c57e5c82: Merge "CLOEXEC support in fdopen, freopen, and mkostemp/mkostemps."
* commit 'c57e5c828914714a283dd41f0a4adb064f6b8763':
  CLOEXEC support in fdopen, freopen, and mkostemp/mkostemps.
2014-09-24 02:14:31 +00:00
Elliott Hughes
671bee9cdb am 151c3e0a: am 87b6906f: Merge "Pull in upstream fixes to reject invalid bases."
* commit '151c3e0a220f7b90695bda3e05364c11ba56f46a':
  Pull in upstream fixes to reject invalid bases.
2014-09-23 22:23:47 +00:00
Elliott Hughes
151c3e0a22 am 87b6906f: Merge "Pull in upstream fixes to reject invalid bases."
* commit '87b6906f6e0c17b2541535be8e054324cc2fef4a':
  Pull in upstream fixes to reject invalid bases.
2014-09-23 22:13:17 +00:00
Elliott Hughes
46fc634758 am e4cdb462: am 86421653: Merge "Sync with some upstream OpenBSD #include cleanup."
* commit 'e4cdb462dd955576c7b5cde6d2cb65d234536f36':
  Sync with some upstream OpenBSD #include cleanup.
2014-09-23 21:59:58 +00:00
Elliott Hughes
66c47bd60c am c7ee90e4: am 0ab5fd9a: Merge "Switch to OpenBSD insque/remque/killpg."
* commit 'c7ee90e4c142184eafb523a974d6980a9c8976e8':
  Switch to OpenBSD insque/remque/killpg.
2014-09-23 21:59:57 +00:00
Elliott Hughes
e4cdb462dd am 86421653: Merge "Sync with some upstream OpenBSD #include cleanup."
* commit '8642165344217877b8a70811d19e09b584a0e10a':
  Sync with some upstream OpenBSD #include cleanup.
2014-09-23 21:49:18 +00:00
Elliott Hughes
c7ee90e4c1 am 0ab5fd9a: Merge "Switch to OpenBSD insque/remque/killpg."
* commit '0ab5fd9a5af4cd00572e4881f46c1e6f974f657c':
  Switch to OpenBSD insque/remque/killpg.
2014-09-23 21:49:17 +00:00
Elliott Hughes
719e8a4b88 am 5d953ddd: am 93951cfa: Merge "Fix a couple more cases of missing CLOEXEC."
* commit '5d953ddd40445f337c1f54a4fb1e2b3741245809':
  Fix a couple more cases of missing CLOEXEC.
2014-09-23 16:20:22 +00:00
Elliott Hughes
1decd9642d am f06c55ac: am e8a95624: Merge "Test pthread_cleanup_push(3)/pthread_cleanup_pop(3)."
* commit 'f06c55ac43dfcdb233be195ca770a9ad25517149':
  Test pthread_cleanup_push(3)/pthread_cleanup_pop(3).
2014-09-23 16:20:07 +00:00
Elliott Hughes
9c8e85f60d am 12766c45: am b2da4562: Merge "Clean up fpathconf(3)/pathconf(3)."
* commit '12766c458e06e8d3a7f27d1b079443827b40aa48':
  Clean up fpathconf(3)/pathconf(3).
2014-09-23 16:20:00 +00:00
Elliott Hughes
da08f6ca5f am c0226cc7: am d9cb0ed2: Merge "Unit test for abort(3)."
* commit 'c0226cc767580b9b3cd097ab77557c721b4b2c88':
  Unit test for abort(3).
2014-09-23 16:19:57 +00:00
Elliott Hughes
5d953ddd40 am 93951cfa: Merge "Fix a couple more cases of missing CLOEXEC."
* commit '93951cfa96c3c7504a78f94e7ec408936e5db9bf':
  Fix a couple more cases of missing CLOEXEC.
2014-09-23 01:40:10 +00:00
Elliott Hughes
f06c55ac43 am e8a95624: Merge "Test pthread_cleanup_push(3)/pthread_cleanup_pop(3)."
* commit 'e8a95624b6ee37f7ee85f0318f1fccd916292ebd':
  Test pthread_cleanup_push(3)/pthread_cleanup_pop(3).
2014-09-22 23:46:23 +00:00
Elliott Hughes
12766c458e am b2da4562: Merge "Clean up fpathconf(3)/pathconf(3)."
* commit 'b2da45625353336452112e28872310903dc70a8f':
  Clean up fpathconf(3)/pathconf(3).
2014-09-22 23:04:51 +00:00
Elliott Hughes
c0226cc767 am d9cb0ed2: Merge "Unit test for abort(3)."
* commit 'd9cb0ed281f0301ec2ca6828f0acc1ed08dceb8a':
  Unit test for abort(3).
2014-09-22 22:08:03 +00:00
Elliott Hughes
6c960a2121 am 34732f1a: am 9f423c55: Merge "Use the uapi fs magic in <sys/vfs.h>."
* commit '34732f1a17521f0fd744b977cd917df998c879e6':
  Use the uapi fs magic in <sys/vfs.h>.
2014-09-22 17:23:15 +00:00
Elliott Hughes
34732f1a17 am 9f423c55: Merge "Use the uapi fs magic in <sys/vfs.h>."
* commit '9f423c554a0ffcee2e34472bf0bc1aef3621a822':
  Use the uapi fs magic in <sys/vfs.h>.
2014-09-22 17:08:49 +00:00
Elliott Hughes
18a229d29e am 31c5030d: am 413de5b0: Merge "Add semaphore tests, fix sem_destroy."
* commit '31c5030d9f4297ee99cbd05cd2aa451e7602d74d':
  Add semaphore tests, fix sem_destroy.
2014-09-20 20:23:45 +00:00
Elliott Hughes
31c5030d9f am 413de5b0: Merge "Add semaphore tests, fix sem_destroy."
* commit '413de5b0d4ddcf039aaef8b40a5f02d41dbb06e6':
  Add semaphore tests, fix sem_destroy.
2014-09-20 20:09:50 +00:00
Christopher Ferris
b03f2831b8 am b743da01: am e7160449: Merge "Remove references to MALLOC_LEAK_CHECK."
* commit 'b743da019164231da807000af8440e646da45b99':
  Remove references to MALLOC_LEAK_CHECK.
2014-09-20 03:14:53 +00:00
Christopher Ferris
b743da0191 am e7160449: Merge "Remove references to MALLOC_LEAK_CHECK."
* commit 'e716044918d85cd3c34425779a09a24348f7f67a':
  Remove references to MALLOC_LEAK_CHECK.
2014-09-20 02:54:07 +00:00
Elliott Hughes
9dd308d0c3 am ff4187e9: am adc01348: Merge "Add greg_t for arm64."
* commit 'ff4187e9a34a84e3f08e259ab7080b55a47eb3c3':
  Add greg_t for arm64.
2014-09-19 18:40:12 +00:00
Elliott Hughes
ff4187e9a3 am adc01348: Merge "Add greg_t for arm64."
* commit 'adc01348ee51a4ad678b1c277f85cbbed5c2e728':
  Add greg_t for arm64.
2014-09-19 18:24:40 +00:00
Dan Albert
93b294f26b am abc5e4db: am 13d6023a: Merge "Exclude libstdc++ from linked libraries."
* commit 'abc5e4db15b3b1cc31c1f2a01d19581f66fec2a0':
  Exclude libstdc++ from linked libraries.
2014-09-19 08:32:10 +00:00
Christopher Ferris
d7fc04aa7b am b925c1c7: am d5e1c583: Merge "Move to v3.16.3 kernel headers."
* commit 'b925c1c78da02e117afb04ccb637117c1704c166':
  Move to v3.16.3 kernel headers.
2014-09-19 08:31:05 +00:00
Elliott Hughes
643c712b22 am c12827e5: am fb8d60f7: Merge "Fix lgamma_r/lgammaf_r/lgammal_r for -0."
* commit 'c12827e5f9589649839d1a31345bdcf028973bbb':
  Fix lgamma_r/lgammaf_r/lgammal_r for -0.
2014-09-19 08:31:04 +00:00
Elliott Hughes
0ac1ba5592 am 9969481d: Fix an unintended difference between aosp/master and lmp-dev-plus-aosp.
* commit '9969481d5bf05954fff9c0f3d1c95bb99c36b9a8':
  Fix an unintended difference between aosp/master and lmp-dev-plus-aosp.
2014-09-19 08:27:03 +00:00
Elliott Hughes
703544f299 am c189ffaa: More cases where libc should use O_CLOEXEC.
* commit 'c189ffaaec45efb49e785517e504b41a5e57b088':
  More cases where libc should use O_CLOEXEC.
2014-09-19 08:27:03 +00:00
Dan Albert
50cc4a25c0 am 411ff42f: Hide ScopedTrace.
* commit '411ff42f20729200c0fc2e24a83bc1dcd7a42a51':
  Hide ScopedTrace.
2014-09-19 08:27:00 +00:00
Elliott Hughes
0b356b2213 am d0be539e: (-s ours) Revert "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp.""
* commit 'd0be539e01424fa720840dfe702dedf8e54379fb':
  Revert "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp.""
2014-09-19 08:26:59 +00:00
Elliott Hughes
7f4a8e8579 am 7d3a8cf6: am 82e71085: Merge "The nextafter functions use the wrong next representable value"
* commit '7d3a8cf66768118fb1384384469aae2647d9d4ef':
2014-09-19 08:13:51 +00:00
Elliott Hughes
fee7bbb8ab am 397335a0: am 6ced0051: Merge "Stack unwinding unit tests."
* commit '397335a0c89058361ecb5d5f67bc4134d441c099':
2014-09-19 08:13:50 +00:00
Christopher Ferris
98f03fe4aa am cd7f93d3: am 0bd28a43: Merge "Update kernel uapi headers to v3.16.1."
* commit 'cd7f93d31f9d8f16cbd730f493964076bccc4d28':
2014-09-19 08:11:19 +00:00
Dmitriy Ivanov
d37685b39a am e7c3c9e9: am 6a310f4a: Merge "Temporary disable DL_WARNs for unused DT_*"
* commit 'e7c3c9e91f04a566f250c37b94f04e1a50b65317':
2014-09-19 08:10:49 +00:00
Dmitriy Ivanov
ac6149369c am e594a6e9: am 77784cb9: Merge "Add Android*.mk files to additional dependencies"
* commit 'e594a6e9a88ad73461f7c753a906d069b91d1a05':
2014-09-19 08:10:03 +00:00
Elliott Hughes
bc62d3d067 am a9a920d5: am 03fef1f5: Merge "Fix some 32-bit-isms in <stdio.h>."
* commit 'a9a920d52aa3f1d28541b8b8d12fd33688eb8dfb':
2014-09-19 08:09:27 +00:00
Elliott Hughes
01b9019eef am de3b2bfe: am 2f5cf100: Merge "Pull input.h from v3.16.1 kernel headers."
* commit 'de3b2bfe114d1f280b38f1ff7cb90ecb8cf91b01':
2014-09-19 08:09:26 +00:00
Elliott Hughes
a815fe12e7 am 18ce8e5d: am 36a5aa05: Merge "Use the kernel\'s sa_restorer for aarch64."
* commit '18ce8e5d031225b33c7815ccd18ac0099a437ae1':
2014-09-19 07:42:44 +00:00
Elliott Hughes
e5fa4617aa am 289dd568: am 56433ee2: Merge "Clean up the architecture-specific makefiles."
* commit '289dd568be03f30bb8b9b66f90dae47249ad24bc':
2014-09-19 07:42:30 +00:00
Dmitriy Ivanov
8eb8ca0d50 am 415658c9: am e7c9a387: Merge "Fix 64bit build"
* commit '415658c922a5a6f07a7dc225b47bd8b0e533a1d6':
2014-09-19 07:36:25 +00:00
Dmitriy Ivanov
3a233698ee am ab1b06a8: am 34ac60ca: Merge "Fix some unused DT_ warnings"
* commit 'ab1b06a87bf8048d8f0a6a2eb0b650e098640d06':
2014-09-19 07:36:25 +00:00
Elliott Hughes
07be4ab760 am 6bf74ba5: am 17cc8e53: Merge "No arm source refers to SOFTFLOAT."
* commit '6bf74ba536ae254f1439bd40f0c9c62c13546353':
2014-09-19 07:19:25 +00:00
Dmitriy Ivanov
9b3211528d am 29be5408: am aea393c0: Merge "Remove has_DT_SYMBOLIC flag"
* commit '29be5408dd9dcfcffb46f23aa6fb8c7d557927a4':
2014-09-19 07:19:22 +00:00
Elliott Hughes
a1bacb8b05 am 63b63c14: am 380a3be7: Merge "Fix 32-bit arm unwinding through signal frames."
* commit '63b63c146e4cbe73be483f1238d081a488521875':
2014-09-19 07:19:20 +00:00
Calin Juravle
8229d8938b am b414c62e: am 370704d6: Merge "Add benchmarks for pthread_rw_locks"
* commit 'b414c62e60a50c8ee502362ce2dc841c2effefab':
2014-09-19 06:16:42 +00:00
Elliott Hughes
3349bc33e2 am 78946d41: am 5cba3c6f: Merge "Fix signal trampolines."
* commit '78946d41892177ed87354d1d682213a6984271d7':
2014-09-19 06:16:19 +00:00
Dmitriy Ivanov
148674a86e am 9a44ef61: am 2997ae83: Merge "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
* commit '9a44ef61ae1619cf7b2025072ba8ac3adaba6834':
2014-09-19 06:16:09 +00:00
Dmitriy Ivanov
8455bc6cb3 am b9263dd1: am 0b8f6d59: Merge "Add dlfcn_test to glibc test suite."
* commit 'b9263dd173312097274b68d701d56efc86a517cb':
2014-09-19 06:16:08 +00:00
Elliott Hughes
9a1dd02d56 am c47a5402: am 95b0c6a9: Merge "POSIX says <signal.h> gets you ucontext_t."
* commit 'c47a5402e7568b1d8f14a6f2fda6106b9973a43b':
2014-09-19 04:44:36 +00:00
Dan Albert
abc5e4db15 am 13d6023a: Merge "Exclude libstdc++ from linked libraries."
* commit '13d6023aac62091a7d1df1c1afa1e228515832cb':
  Exclude libstdc++ from linked libraries.
2014-09-19 00:05:37 +00:00
Christopher Ferris
b925c1c78d am d5e1c583: Merge "Move to v3.16.3 kernel headers."
* commit 'd5e1c583a66a821c7d7e8f43e1238a4569981b90':
  Move to v3.16.3 kernel headers.
2014-09-18 21:47:50 +00:00
Elliott Hughes
c12827e5f9 am fb8d60f7: Merge "Fix lgamma_r/lgammaf_r/lgammal_r for -0."
* commit 'fb8d60f7436d8f90f951fb2efc27449c3aee8046':
  Fix lgamma_r/lgammaf_r/lgammal_r for -0.
2014-09-18 21:47:50 +00:00
Elliott Hughes
9969481d5b Fix an unintended difference between aosp/master and lmp-dev-plus-aosp.
Whitespace difference presumably introduced while fixing a merge conflict.

Bug: 17549448

(cherry picked from commit 8fa377eb6a)

Change-Id: I7e30f37da4430af19d09a661e489c8ff65e42297
2014-09-18 10:57:57 -07:00
Elliott Hughes
c189ffaaec More cases where libc should use O_CLOEXEC.
(cherry picked from commit f73183f1a3)

(cherry picked from commit 21ce3f506f)

Change-Id: I70b240bd40ad8d2ba33ae7ab2618782709fd0d6a
2014-09-18 10:57:16 -07:00
Dan Albert
411ff42f20 Hide ScopedTrace.
(cherry-pick of f2c1e7ee78a167ff323b9f45d20532d064d6778d.)

Bug: 11156955

(cherry picked from commit ebb6b4a4d3)

Change-Id: Ifc10364b35384a9f34e4c2c634dd78a16065a817
2014-09-18 10:54:30 -07:00
Elliott Hughes
d0be539e01 Revert "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp.""
This reverts commit 26c1420fbb.

(cherry picked from commit 9e87f2f876)

Change-Id: I46a71a456952e3dd2c2bb0d9934820ffe8dc8469
2014-09-18 10:46:04 -07:00
Elliott Hughes
711a0a60eb am f2cab6f8: am 82e71085: Merge "The nextafter functions use the wrong next representable value"
* commit 'f2cab6f808fa22f71efa7ce206df76ffcd5503cc':
  The nextafter functions use the wrong next representable value
2014-09-18 16:18:18 +00:00
Elliott Hughes
b3b72f9278 am 14dfe3e6: am 6ced0051: Merge "Stack unwinding unit tests."
* commit '14dfe3e62b2a96f35ad455f0b1dd996343d9aeeb':
  Stack unwinding unit tests.
2014-09-18 16:18:18 +00:00
Elliott Hughes
7d3a8cf667 am 82e71085: Merge "The nextafter functions use the wrong next representable value"
* commit '82e71085c23d11030e9950d8d08e30ef249fd73b':
  The nextafter functions use the wrong next representable value
2014-09-18 16:11:46 +00:00
Elliott Hughes
397335a0c8 am 6ced0051: Merge "Stack unwinding unit tests."
* commit '6ced005123aaedeed7cd653d0baab3fbd511a492':
  Stack unwinding unit tests.
2014-09-18 16:11:45 +00:00
Christopher Ferris
bac0957527 am aac37784: am 0bd28a43: Merge "Update kernel uapi headers to v3.16.1."
* commit 'aac37784dfd696f7469361e91e2444941c3eafb1':
  Update kernel uapi headers to v3.16.1.
2014-09-18 00:52:35 +00:00
Christopher Ferris
cd7f93d31f am 0bd28a43: Merge "Update kernel uapi headers to v3.16.1."
* commit '0bd28a43dae87c808f6af61ad3dba042b35be7e7':
  Update kernel uapi headers to v3.16.1.
2014-09-18 00:41:36 +00:00
Dmitriy Ivanov
824912dbe3 am 4dcc5888: am 6a310f4a: Merge "Temporary disable DL_WARNs for unused DT_*"
* commit '4dcc58887e303b0427886af1712c550c25b8542e':
  Temporary disable DL_WARNs for unused DT_*
2014-09-18 00:26:40 +00:00
Dmitriy Ivanov
e7c3c9e91f am 6a310f4a: Merge "Temporary disable DL_WARNs for unused DT_*"
* commit '6a310f4ad6c06b6f513d6dd9784ce0377f94f9bd':
  Temporary disable DL_WARNs for unused DT_*
2014-09-18 00:16:41 +00:00
Dmitriy Ivanov
eb7cb8e5f8 am f412f82d: am 77784cb9: Merge "Add Android*.mk files to additional dependencies"
* commit 'f412f82d4107ea485fb8c60adfd05c1953032f1f':
  Add Android*.mk files to additional dependencies
2014-09-17 23:31:59 +00:00
Dmitriy Ivanov
e594a6e9a8 am 77784cb9: Merge "Add Android*.mk files to additional dependencies"
* commit '77784cb9b7bad354601a3f965c3eaffecf6798ca':
  Add Android*.mk files to additional dependencies
2014-09-17 23:21:00 +00:00
Elliott Hughes
b7fb8b6156 am 58fe4f0b: am 03fef1f5: Merge "Fix some 32-bit-isms in <stdio.h>."
* commit '58fe4f0b079d780f25f1c34a758550368024a44d':
  Fix some 32-bit-isms in <stdio.h>.
2014-09-17 22:53:12 +00:00
Elliott Hughes
3fa99dd4f3 am d75695d8: am 2f5cf100: Merge "Pull input.h from v3.16.1 kernel headers."
* commit 'd75695d8e0093ddf1ad298ef6aacae0782816962':
  Pull input.h from v3.16.1 kernel headers.
2014-09-17 22:53:11 +00:00
Elliott Hughes
a9a920d52a am 03fef1f5: Merge "Fix some 32-bit-isms in <stdio.h>."
* commit '03fef1f51179de5cb65eafd9b57ea05c8e061542':
  Fix some 32-bit-isms in <stdio.h>.
2014-09-17 22:37:09 +00:00
Elliott Hughes
de3b2bfe11 am 2f5cf100: Merge "Pull input.h from v3.16.1 kernel headers."
* commit '2f5cf100a8cfaf51296fda69d31ef9e59c6d1da3':
  Pull input.h from v3.16.1 kernel headers.
2014-09-17 22:37:08 +00:00
Elliott Hughes
a7c448810d am 8fa377eb: Fix an unintended difference between aosp/master and lmp-dev-plus-aosp.
* commit '8fa377eb6afdea4b03b6a0d112471f7ee988fb96':
  Fix an unintended difference between aosp/master and lmp-dev-plus-aosp.
2014-09-17 22:36:10 +00:00
Elliott Hughes
1f82cf40bb am 21ce3f50: More cases where libc should use O_CLOEXEC.
* commit '21ce3f506f3b54e4f57a37847375cef9f8aff57f':
  More cases where libc should use O_CLOEXEC.
2014-09-17 22:19:00 +00:00
Dan Albert
23b8947da5 am ebb6b4a4: Hide ScopedTrace.
* commit 'ebb6b4a4d3fab87800b912c9d6ea917f5359f8af':
  Hide ScopedTrace.
2014-09-17 22:19:00 +00:00
Elliott Hughes
b391e05a25 am 9e87f2f8: Revert "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp.""
* commit '9e87f2f876243225deef37645ddceaa5d225cb41':
  Revert "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp.""
2014-09-17 22:13:23 +00:00
Elliott Hughes
7eb56f8031 am 39f46864: am 36a5aa05: Merge "Use the kernel\'s sa_restorer for aarch64."
* commit '39f4686461889c2a733caf3ea55bb11719ca9036':
  Use the kernel's sa_restorer for aarch64.
2014-09-17 17:24:31 +00:00
Elliott Hughes
18ce8e5d03 am 36a5aa05: Merge "Use the kernel\'s sa_restorer for aarch64."
* commit '36a5aa057cf1738577754a3fc16a14a5f817109f':
  Use the kernel's sa_restorer for aarch64.
2014-09-17 17:17:26 +00:00
Elliott Hughes
5aeb5f7b11 am 0bbd77af: am 56433ee2: Merge "Clean up the architecture-specific makefiles."
* commit '0bbd77af89efdd66e7e265284044ca5894f056be':
  Clean up the architecture-specific makefiles.
2014-09-17 17:11:46 +00:00
Elliott Hughes
289dd568be am 56433ee2: Merge "Clean up the architecture-specific makefiles."
* commit '56433ee2a2ccc097ac3ad753168722b0fc76f3b1':
  Clean up the architecture-specific makefiles.
2014-09-17 17:00:22 +00:00
Dmitriy Ivanov
578b8dd727 am b5f0464d: am e7c9a387: Merge "Fix 64bit build"
* commit 'b5f0464d825ee1ef80e8652a12b0743433020ab4':
  Fix 64bit build
2014-09-17 07:05:51 +00:00
Dmitriy Ivanov
415658c922 am e7c9a387: Merge "Fix 64bit build"
* commit 'e7c9a387fa190b786b1f7becfe99cb22a6f2934a':
  Fix 64bit build
2014-09-17 06:53:24 +00:00
Dmitriy Ivanov
cdd93e0885 am f5a56f21: am 34ac60ca: Merge "Fix some unused DT_ warnings"
* commit 'f5a56f21806a3535d3e32b172b417bb4cedf00f5':
  Fix some unused DT_ warnings
2014-09-17 06:01:55 +00:00
Dmitriy Ivanov
ab1b06a87b am 34ac60ca: Merge "Fix some unused DT_ warnings"
* commit '34ac60ca16713be227844798f4b20a2f68c8a241':
  Fix some unused DT_ warnings
2014-09-17 05:50:49 +00:00
Elliott Hughes
8b7cb0560f am 894f7f58: am 17cc8e53: Merge "No arm source refers to SOFTFLOAT."
* commit '894f7f5819e9447d7a7418f180c2275c4c7d9f2f':
  No arm source refers to SOFTFLOAT.
2014-09-17 00:25:04 +00:00
Elliott Hughes
6bf74ba536 am 17cc8e53: Merge "No arm source refers to SOFTFLOAT."
* commit '17cc8e539a578184662c1966a60f37c7d4fed65e':
  No arm source refers to SOFTFLOAT.
2014-09-17 00:07:11 +00:00
Dmitriy Ivanov
dc428a17d6 am 7ccb499c: am aea393c0: Merge "Remove has_DT_SYMBOLIC flag"
* commit '7ccb499c63931b0863d2792f3d2548acca78c90a':
  Remove has_DT_SYMBOLIC flag
2014-09-16 23:07:04 +00:00
Dmitriy Ivanov
29be5408dd am aea393c0: Merge "Remove has_DT_SYMBOLIC flag"
* commit 'aea393c096460669647acbe803617affc5bc0697':
  Remove has_DT_SYMBOLIC flag
2014-09-16 22:53:57 +00:00
Elliott Hughes
48ac72d070 am 67c12a83: am 380a3be7: Merge "Fix 32-bit arm unwinding through signal frames."
* commit '67c12a8392f869b39d4676081d76ebcf5aa9fd05':
  Fix 32-bit arm unwinding through signal frames.
2014-09-16 22:27:59 +00:00
Elliott Hughes
63b63c146e am 380a3be7: Merge "Fix 32-bit arm unwinding through signal frames."
* commit '380a3be757b04378edecad6ecb96017d2ec6a8b9':
  Fix 32-bit arm unwinding through signal frames.
2014-09-16 22:25:54 +00:00
Calin Juravle
82f4e27b4b am c417053e: am 370704d6: Merge "Add benchmarks for pthread_rw_locks"
* commit 'c417053e808af9a23e579723aed0d110f6841f2c':
  Add benchmarks for pthread_rw_locks
2014-09-16 19:57:29 +00:00
Elliott Hughes
8790f37b07 am ca2d1258: am 5cba3c6f: Merge "Fix signal trampolines."
* commit 'ca2d1258fc45252d6f60fc33af02501de340ceed':
  Fix signal trampolines.
2014-09-16 19:57:27 +00:00
Dmitriy Ivanov
7c76969732 am 3d76a5a1: am 2997ae83: Merge "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
* commit '3d76a5a1c7f7b10aa15ac2abddf12b37b6d45027':
  Fix dlsym() to take into account RTLD_GLOBAL/LOCAL
2014-09-16 19:57:25 +00:00
Dmitriy Ivanov
4cdd5ae852 am fe78876f: am 0b8f6d59: Merge "Add dlfcn_test to glibc test suite."
* commit 'fe78876f94949ba46b76e23e3ab5bb5542565db4':
  Add dlfcn_test to glibc test suite.
2014-09-16 19:57:24 +00:00
Calin Juravle
b414c62e60 am 370704d6: Merge "Add benchmarks for pthread_rw_locks"
* commit '370704d69db15ec0b4d24e6412b5d30ded0ffc03':
  Add benchmarks for pthread_rw_locks
2014-09-16 17:59:09 +00:00
Elliott Hughes
78946d4189 am 5cba3c6f: Merge "Fix signal trampolines."
* commit '5cba3c6f8e571cd4e6e2468263b778a90331101f':
  Fix signal trampolines.
2014-09-16 16:52:11 +00:00
Dmitriy Ivanov
9a44ef61ae am 2997ae83: Merge "Fix dlsym() to take into account RTLD_GLOBAL/LOCAL"
* commit '2997ae83d55486ab86a6100265fa502eff721ce2':
  Fix dlsym() to take into account RTLD_GLOBAL/LOCAL
2014-09-16 16:44:36 +00:00
Dmitriy Ivanov
b9263dd173 am 0b8f6d59: Merge "Add dlfcn_test to glibc test suite."
* commit '0b8f6d592ac20ec81dbc96766123c67655f34842':
  Add dlfcn_test to glibc test suite.
2014-09-16 16:44:35 +00:00
Elliott Hughes
0b981eb9d5 am b104f0c4: am 95b0c6a9: Merge "POSIX says <signal.h> gets you ucontext_t."
* commit 'b104f0c4382215acf8e8ed30793140cf13624056':
  POSIX says <signal.h> gets you ucontext_t.
2014-09-16 08:48:12 +00:00
Elliott Hughes
c47a5402e7 am 95b0c6a9: Merge "POSIX says <signal.h> gets you ucontext_t."
* commit '95b0c6a9407d7a4084d956e273ad1697550452d3':
  POSIX says <signal.h> gets you ucontext_t.
2014-09-15 22:02:12 +00:00
Dan Albert
73c923f9f4 am 73c605e2: am 2c581047: Merge "Fix filename in comment in cmath"
* commit '73c605e234eb873f5d198e8e420ac74f5bcc2c81':
  Fix filename in comment in cmath
2014-09-14 20:06:20 +00:00
Christopher Ferris
ca87b17819 am 07ce9767: am 027d2717: Pull input.h from v3.16.1 kernel headers.
* commit '07ce9767884051a781a2dfe7877c2715e9ef712c':
  Pull input.h from v3.16.1 kernel headers.
2014-09-14 20:06:19 +00:00
Elliott Hughes
ce1658bde0 am 35981194: am 85ef3b5b: Merge "Update NOTICE files."
* commit '35981194d8f458884417ecf794f9edb4684f5adf':
  Update NOTICE files.
2014-09-13 17:41:00 +00:00
Elliott Hughes
2e40c43fdf am 79f40ff9: am ae51accf: Merge "Remove an unused file."
* commit '79f40ff929374a5b6b783ef641fc9661cd315c25':
  Remove an unused file.
2014-09-13 17:40:59 +00:00
Elliott Hughes
bd44263101 am 934028eb: am 73d2059f: Merge "Explain why clock(3) isn\'t broken."
* commit '934028eba35b04a965c89c431e7e9a60c06eb17c':
  Explain why clock(3) isn't broken.
2014-09-13 02:28:01 +00:00
Elliott Hughes
f206217660 am 8bd96e06: am 21451f5b: Merge "Get new coshl, sinhl, and tanhl implementations from upstream."
* commit '8bd96e067c2c7c9bdec03de41147e13a531850a9':
  Get new coshl, sinhl, and tanhl implementations from upstream.
2014-09-13 02:27:57 +00:00
Elliott Hughes
df61319444 am 8ce73725: am a40a16ea: Merge "Add a test for pthread_gettid_np."
* commit '8ce73725a3e185d9d36a3913d9713eb9d9062a3c':
  Add a test for pthread_gettid_np.
2014-09-13 02:25:37 +00:00
Elliott Hughes
c63a12128c am 4cc9c6cc: am 69c2d7dc: Merge "Sync libm with upstream."
* commit '4cc9c6cc83e7fcd9d62bac152a9f4fc4c7b8eaf9':
  Sync libm with upstream.
2014-09-13 02:25:13 +00:00
Elliott Hughes
6b9a41e082 am ecd6be3b: am e39e47c6: Merge "Remove "private/bionic_pthread.h"."
* commit 'ecd6be3bd2963ef69500e4b5a0186114f01a282d':
  Remove "private/bionic_pthread.h".
2014-09-13 02:22:42 +00:00
Dmitriy Ivanov
1f08f1a3c8 am b58b8210: am d74aa580: Merge "Fix unload of recursively linked library"
* commit 'b58b821056ab45ece313181fb2d55856957fe2a6':
  Fix unload of recursively linked library
2014-09-13 02:22:41 +00:00
Dmitriy Ivanov
9da0ae4ddd am 75386aa5: am aad92067: Merge "Reformatting"
* commit '75386aa5ffb4f66810b7e267fcd16d69420bb8e2':
  Reformatting
2014-09-13 02:22:41 +00:00
Dmitriy Ivanov
2e3fd896cc am bb5e2968: am 66bbf159: Merge "Refactoring: C++11 style DISABLE_ bionic marcos"
* commit 'bb5e2968ca909903605364e5d7b199d121fcae40':
  Refactoring: C++11 style DISABLE_ bionic marcos
2014-09-13 02:22:40 +00:00
Elliott Hughes
f0a6d5db8f am 0654250e: am 8d8a789c: Merge "Expose __swsetup for LP32 binary compatibility."
* commit '0654250eb99b825abfc4368063c725526018ef77':
  Expose __swsetup for LP32 binary compatibility.
2014-09-12 19:27:34 +00:00
Dmitriy Ivanov
c5cb043819 am 5a6e31c3: am 6487f0d8: Merge "Add IFUNC support for arm64 and IRELATIVE reloc"
* commit '5a6e31c3cbaf5ebbcc6cc6221a12ee1ce10e1e82':
  Add IFUNC support for arm64 and IRELATIVE reloc
2014-09-12 19:27:33 +00:00
Elliott Hughes
d455758e99 am 7f4c7060: am 5920a9ad: Merge "Add pthread_gettid_np and re-expose __get_thread for LP32."
* commit '7f4c7060f0856da7f3624f87b4547615c29130b8':
  Add pthread_gettid_np and re-expose __get_thread for LP32.
2014-09-12 19:27:33 +00:00
Elliott Hughes
6cd84274b8 am da7fe217: am 7e00b44e: Expose __swsetup for LP32 binary compatibility.
* commit 'da7fe217d8ef5aaa1c7f8837719e1c7f1d482679':
  Expose __swsetup for LP32 binary compatibility.
2014-09-12 19:27:27 +00:00
Elliott Hughes
1bd1f3a401 am 66265e80: am 27efc488: Add pthread_gettid_np and re-expose __get_thread for LP32.
* commit '66265e80a13e60ac06153af88936fb4c90a99f66':
  Add pthread_gettid_np and re-expose __get_thread for LP32.
2014-09-12 19:27:27 +00:00
Elliott Hughes
3e4ae3ec09 am d415e27d: am 9e833bf0: Fix mips __fadvise64.S build failure.
* commit 'd415e27d5bcfaba5b8fcd868d98173db708ffa9c':
  Fix mips __fadvise64.S build failure.
2014-09-12 19:19:40 +00:00
Elliott Hughes
ba55c8984e am 5691dcfc: am ea66004c: Merge "Fix mips __fadvise64.S build failure."
* commit '5691dcfc0d8b1418e53d75b3c3428f8f65a87727':
  Fix mips __fadvise64.S build failure.
2014-09-12 19:17:48 +00:00
Elliott Hughes
c3932cca0b am 65e61977: am 176c3278: Merge "Add posix_fadvise(3)." into lmp-dev
* commit '65e619775e3f4517edc7ac68c6b85a9443a67da7':
  Add posix_fadvise(3).
2014-09-12 19:17:03 +00:00
Elliott Hughes
612db11844 am db1e9581: am 33df10f2: Merge "Add posix_fadvise(3)."
* commit 'db1e9581098ad19465d2d81fbe368743b648a071':
  Add posix_fadvise(3).
2014-09-12 19:16:56 +00:00
Lorenzo Colitti
77f01f4306 am 993a2315: am 33a73bfa: When comparing DNS server configs, also compare number of servers
* commit '993a2315a7ddc786ce9180258aa3db498bf9326e':
  When comparing DNS server configs, also compare number of servers
2014-09-11 17:27:10 +00:00
Lorenzo Colitti
b5e7bd0013 am da0ed4cb: am c71483c0: Merge "When comparing DNS server configs, also compare number of servers"
* commit 'da0ed4cbfa10eb3f6a48ef116ae0441239daf7bf':
  When comparing DNS server configs, also compare number of servers
2014-09-09 15:03:50 +00:00
Dmitriy Ivanov
9c8ff91dcc am 06bd5e2d: am 3c3624f3: Merge "Load libraries in breadth-first order"
* commit '06bd5e2d0ade82b9fc70fd8928c1746ca529a2f4':
  Load libraries in breadth-first order
2014-09-09 01:25:51 +00:00
Elliott Hughes
d7928dc803 am 5574335d: am 671f96cd: Merge "Ensure __set_errno is still visible on LP32."
* commit '5574335dc5f380b96aa1f93caeceeeb1bc69bbe2':
  Ensure __set_errno is still visible on LP32.
2014-09-09 00:11:52 +00:00
Elliott Hughes
4a454760b5 am e70e541e: am 201f36d2: Merge "Don\'t expose non-standard basename_r and dirname_r in LP64."
* commit 'e70e541e7f97ddef3c262bbd71a01710d9f57e65':
  Don't expose non-standard basename_r and dirname_r in LP64.
2014-09-09 00:11:52 +00:00
Elliott Hughes
eeb13c6bdb am 938473a7: resolved conflicts for merge of 7efad83d to lmp-dev-plus-aosp
* commit '938473a7f031822d7449624f5844c07d23814422':
  Ensure __set_errno is still visible on LP32.
2014-09-08 23:32:32 +00:00
Elliott Hughes
b614b05942 am 2af51cac: Merge "resolved conflicts for merge of c8f6b82f to lmp-dev-plus-aosp" into lmp-dev-plus-aosp
* commit '2af51cacde8e8e15639352f96e46cbc9e9e6a4f6':
  Don't expose non-standard basename_r and dirname_r in LP64.
2014-09-08 18:52:42 +00:00
Elliott Hughes
347e873bfb am 6b779c6b: am 51c8355d: Add arc4random_addrandom binary compatibility.
* commit '6b779c6b61ec662f19f9ea30fd003c770799196c':
  Add arc4random_addrandom binary compatibility.
2014-09-08 18:52:42 +00:00
Elliott Hughes
b03d3102c3 am ffa8672b: am d3d89f0d: Merge "Add arc4random_addrandom binary compatibility."
* commit 'ffa8672bd5722b9bb2f13dcabffb2814b2edd0ea':
  Add arc4random_addrandom binary compatibility.
2014-09-08 18:26:26 +00:00
Christopher Ferris
d790900d5f am 9e7abe2e: am b4673c41: Merge "Add dlmalloc_usable_size for 32 bit arches."
* commit '9e7abe2e60c16ca3ffb3d1839c040fe2c3d34551':
  Add dlmalloc_usable_size for 32 bit arches.
2014-09-06 20:37:54 +00:00
Christopher Ferris
7f6006d232 am eb1dd673: am 47ed03f7: Merge "Add dlmalloc_usable_size for 32 bit arches." into lmp-dev
* commit 'eb1dd673ecb660a56c19a04697a14ed56db5eb91':
  Add dlmalloc_usable_size for 32 bit arches.
2014-09-06 20:24:21 +00:00
Ying Wang
dc787b75d5 am 455577d3: am e07b4da5: Merge "Use LOCAL_POST_LINK_CMD to insert the objcopy command for linker."
* commit '455577d3ce64135fcb6ce33cd6d3c73b06189e40':
  Use LOCAL_POST_LINK_CMD to insert the objcopy command for linker.
2014-09-06 00:10:28 +00:00
Dmitriy Ivanov
2f06081a97 am 2a0105f9: am 320a01d5: Merge "Revert "Load libraries in breadth-first order""
* commit '2a0105f95d91653626996fa3e8416bfcb41d3048':
  Revert "Load libraries in breadth-first order"
2014-09-06 00:10:28 +00:00
Dmitriy Ivanov
fa0f9cc9f1 am 4a4dc7b3: am b3ebfecd: Merge "Fix order of soinfo links (repairs libcxx tests)."
* commit '4a4dc7b37c3a26a349d771755fb8bfb0ba4a05c9':
  Fix order of soinfo links (repairs libcxx tests).
2014-09-05 23:38:02 +00:00
Chih-Hung Hsieh
6d4d735ae5 am 1325d50c: am 8adace5f: Merge "Enable clang compilation with libc but not linker."
* commit '1325d50c721717032bce940554e21f0cc28c08e5':
  Enable clang compilation with libc but not linker.
2014-09-05 19:21:38 +00:00
Elliott Hughes
911b47f684 am 3fd8eee5: am 5beddb7d: Fix pthread_attr_getstack__main_thread.
* commit '3fd8eee516e9376351c0c06af47154765f1ca647':
  Fix pthread_attr_getstack__main_thread.
2014-09-05 15:43:29 +00:00
Dmitriy Ivanov
feb717abdd am b7f09d06: am 001815ed: Merge "Reset enviroment for math_tests"
* commit 'b7f09d065473adf6b504ccb08f0b0d25c09e70b4':
  Reset enviroment for math_tests
2014-09-05 02:33:04 +00:00
Elliott Hughes
32f8fef668 am 5c5bb4d0: am aca9cae3: Merge "Fix pthread_attr_getstack__main_thread."
* commit '5c5bb4d04ea5221088b0b3cdb63225237c1ff11a':
  Fix pthread_attr_getstack__main_thread.
2014-09-04 23:46:35 +00:00
Elliott Hughes
d3e1b1c59c am fc8f246a: am c74a7680: Merge "Fix mips signed/unsigned signal_test.cpp build breakage."
* commit 'fc8f246a49240b6fc7ed0d83a971219989fd290a':
  Fix mips signed/unsigned signal_test.cpp build breakage.
2014-09-04 23:36:33 +00:00
Dmitriy Ivanov
ff5a8672e1 am 4effe38a: am 44352f5f: Merge "Revert "Register __libc_fini as early as possible.""
* commit '4effe38ae68170539869753aa77855807ed4b970':
  Revert "Register __libc_fini as early as possible."
2014-09-04 23:36:32 +00:00
Dmitriy Ivanov
ec6099ec64 am 24d40f2d: am c0cd9ce5: Merge "Revert "Fix arm64 build""
* commit '24d40f2df06fc5fafd938bd828ba7c9e264c2a0d':
  Revert "Fix arm64 build"
2014-09-04 23:36:32 +00:00
Elliott Hughes
32db68c510 am ac5c1119: am 05f0bfd6: Merge "Don\'t mask out SA_RESTORER from sa_flags."
* commit 'ac5c111924097387499f6163cf3bf2275690de9b':
  Don't mask out SA_RESTORER from sa_flags.
2014-09-04 22:33:01 +00:00
Chih-Hung Hsieh
3e8c441de9 am 020ccc3c: am 4ee7c325: Merge "Disable Clang, due to x86 LDBL_MANT_DIG errors."
* commit '020ccc3c75866ccf333c4a6ebf279002ead371de':
  Disable Clang, due to x86 LDBL_MANT_DIG errors.
2014-09-04 22:33:01 +00:00
Elliott Hughes
60a46deba3 am 32dc56a1: am 071bed80: Merge "_GNU_SOURCE implies _BSD_SOURCE and the latest _POSIX_C_SOURCE."
* commit '32dc56a1ca57b7ea904fe9fd2c0ef43b544561f5':
  _GNU_SOURCE implies _BSD_SOURCE and the latest _POSIX_C_SOURCE.
2014-09-04 17:24:01 +00:00
Dmitriy Ivanov
eb5009617d am 04ecc77d: am 1737b159: Merge "Load libraries in breadth-first order"
* commit '04ecc77df663d9a0b55e5b2e503657b5ad3a75e6':
  Load libraries in breadth-first order
2014-09-04 02:09:52 +00:00
Elliott Hughes
3333a8b2f4 am 40acbd69: am 1e010d60: Add back a dummy arc4random_stir for compatibility.
* commit '40acbd6904ef56b7a8d13904a37cf78b39763fe3':
  Add back a dummy arc4random_stir for compatibility.
2014-09-04 00:16:06 +00:00
Dmitriy Ivanov
d9b342498d am f851d60c: am 8f3b8f52: Merge "Fix arm64 build"
* commit 'f851d60c13899773f9b0f5a1296f1ebd2cf99b59':
  Fix arm64 build
2014-09-03 23:55:38 +00:00
Elliott Hughes
621fc3b046 am d05ad930: am 58bb54c3: Merge "Add back a dummy arc4random_stir for compatibility."
* commit 'd05ad93003aa3ebbf87aa040ee8eb93396b80fd6':
  Add back a dummy arc4random_stir for compatibility.
2014-09-03 23:55:37 +00:00
Dmitriy Ivanov
af9b0c4dab am bd00ae89: am 450aaa01: Merge "Register __libc_fini as early as possible."
* commit 'bd00ae89921e3715ddbf89a1aac069347e5cf3d4':
  Register __libc_fini as early as possible.
2014-09-03 22:49:59 +00:00
Dmitriy Ivanov
43ecbc8520 am 40412333: am 8da304b9: Merge "Make string tests check all alignment combinations"
* commit '40412333b42910e3edde20072aaf32afe3aaca7f':
  Make string tests check all alignment combinations
2014-09-03 22:38:53 +00:00
Dan Albert
77ed51e266 am c71129a4: am 28f17701: Merge "Don\'t fail a test just because we aren\'t root."
* commit 'c71129a4e82211bc2db62ea10311548da5e2c20f':
  Don't fail a test just because we aren't root.
2014-09-03 20:09:51 +00:00
Elliott Hughes
cf9c3aec2b am ce19b10f: am cb093d1f: Merge "Upgrade bionic to tzdata2014g." into lmp-dev
* commit 'ce19b10f5f9db0e73d911faa3ce35ddd2b0837bf':
  Upgrade bionic to tzdata2014g.
2014-09-03 09:12:52 +00:00
Hans Boehm
fd77e895ac am 5c2c5443: am 9ac60bf8: Make stdatomic.h work with gcc4.6 host compiler
* commit '5c2c5443823e30bfb02394f4fc2da06a74bd58df':
  Make stdatomic.h work with gcc4.6 host compiler
2014-09-03 09:12:51 +00:00
Andreas Gampe
4e092df34a am c16f0486: resolved conflicts for merge of 2b10e2f1 to lmp-dev-plus-aosp
* commit 'c16f0486fca0df1125cc381d3f4ef3b652d72d29':
  Undefine _Atomic before redefining
2014-09-03 09:12:50 +00:00
Dmitriy Ivanov
763d17e22f am 69fde6b4: am 3b10ba6f: Merge "Add some missing dlclose(.)"
* commit '69fde6b4a7c7674c8bbc8fba0b82bcc25fdf0539':
  Add some missing dlclose(.)
2014-09-03 05:04:25 +00:00
Dan Albert
6df7c2c80a am f3ba9f71: am c7de9191: Merge "Start math tests with a clean fenv."
* commit 'f3ba9f7171021417a0b6373ecf52136fb5cc9a76':
  Start math tests with a clean fenv.
2014-09-03 05:04:20 +00:00
Dan Albert
7681554de8 am 95742d36: am 847e52b9: Merge "Prevent a few test pthread keys from leaking."
* commit '95742d36038b459704bdd32e22df35956b5aca0d':
  Prevent a few test pthread keys from leaking.
2014-09-03 05:04:17 +00:00
Hans Boehm
cd7f163176 am e8d77291: resolved conflicts for merge of c8cf3513 to lmp-dev-plus-aosp
* commit 'e8d77291670ad435491a08f6c3d83881063e2e12':
  Fix, generalize stdatomic.h; improve test.
2014-09-03 05:04:16 +00:00
Elliott Hughes
6d84bc4c43 am 6c696754: am ec95a9cf: Merge "MIPS64 syscall() arguments"
* commit '6c69675423f3375ba4d9dadfaf9502a15576158c':
  MIPS64 syscall() arguments
2014-09-03 05:03:49 +00:00
Dmitriy Ivanov
32ef431b6c am a1d14f62: am 86f594b1: Merge "Encapsulate soinfo_link_image and soinfo_relocate"
* commit 'a1d14f62f6efb78dbb601c0c2be79a036da05854':
  Encapsulate soinfo_link_image and soinfo_relocate
2014-09-02 19:53:32 +00:00
Elliott Hughes
299647b814 am a5d70a4b: am 4625dd75: Merge "Upgrade bionic to tzdata2014g."
* commit 'a5d70a4b15c3c6a7eddd2a4593ad28fa8846f383':
  Upgrade bionic to tzdata2014g.
2014-09-02 18:42:28 +00:00
Dmitriy Ivanov
15a52d7944 am 23fa71f7: am e057b9fc: Merge "Introduce size-based r/w allocators"
* commit '23fa71f7ca7096a25fd0d603061c861e410eb817':
  Introduce size-based r/w allocators
2014-09-02 17:57:20 +00:00
Dmitriy Ivanov
7b3328a106 am 80ecaf33: am 4cafa3ce: Merge "Implement LinkedList::visit()"
* commit '80ecaf331e16530179f91db565a8862a8a55f3b1':
  Implement LinkedList::visit()
2014-09-02 17:57:07 +00:00
Dmitriy Ivanov
39f5554fe2 am e47b9949: am 5120bcf9: Merge "Look into ld_preloads before current library"
* commit 'e47b994975e8d21c517082914ab3c72afd5cee55':
  Look into ld_preloads before current library
2014-09-02 17:39:37 +00:00
Dmitriy Ivanov
a3dddd9ead am e4c4311f: resolved conflicts for merge of c191a8ad to lmp-dev-plus-aosp
* commit 'e4c4311f4402d8f470b91500acf140baa7c4aa47':
  Look into ld_preloads before current library
2014-09-02 17:39:36 +00:00
Dmitriy Ivanov
29dfcfda4b am a20e37f2: am 11387985: Merge "Erase elements in LinkedList::remove_if"
* commit 'a20e37f291957749091ee3a4f30b35a8d4d5a3f3':
  Erase elements in LinkedList::remove_if
2014-09-02 17:39:36 +00:00
Elliott Hughes
4eac5ecf2b am 1a96db3e: resolved conflicts for merge of b2eb09a9 to lmp-dev-plus-aosp
* commit '1a96db3e8ea0b2a488a068c6f46f7e7ca2e5fc96':
  Use __GNUC_PREREQ rather than __GNUC_PREREQ__ to match glibc.
2014-09-02 17:34:14 +00:00
Hans Boehm
af09e0337e am 94ea04c5: am e505cc66: Merge "Make stdatomic.h work with gcc4.6 host compiler"
* commit '94ea04c50ac3ca59245999bfe302066e8b5c1c84':
  Make stdatomic.h work with gcc4.6 host compiler
2014-09-02 17:33:33 +00:00
Elliott Hughes
d711fa3dee am e21a6242: am bbe06e0d: Merge "Use __GNUC_PREREQ rather than __GNUC_PREREQ__ to match glibc."
* commit 'e21a624269b198e82c1c9a102d36f1fa21b44f6b':
  Use __GNUC_PREREQ rather than __GNUC_PREREQ__ to match glibc.
2014-09-01 11:25:55 +00:00
Dmitriy Ivanov
016c7e19da am e6f46bfb: am 83b637fa: Merge "Replace NULL with nullptr"
* commit 'e6f46bfb90123757aaa36a3be79b875e18a95c46':
  Replace NULL with nullptr
2014-09-01 11:25:50 +00:00
Elliott Hughes
079841285e am 72dc86ec: am 1f39afc8: Merge "The host prebuilt glibc is 2.11, so remove workarounds for 2.9."
* commit '72dc86ec5f8927d7be03b110a61aba45e94b4cfa':
  The host prebuilt glibc is 2.11, so remove workarounds for 2.9.
2014-08-29 18:49:21 +00:00
Chih-Hung Hsieh
d3acdf1660 am 46623c1c: am cc4259ed: Merge "Ignore all __weak_alias in OpenBSD libC."
* commit '46623c1cc7045d01ad950a4d2cad2a2722efc5ce':
  Ignore all __weak_alias in OpenBSD libC.
2014-08-29 11:56:38 +00:00
Elliott Hughes
7187c84058 am cd6657f9: am 29f06943: Merge "Add GNU-compatible strerror_r."
* commit 'cd6657f9eacb8dff723be48ffff72e153b4c82c6':
  Add GNU-compatible strerror_r.
2014-08-29 11:56:38 +00:00
Elliott Hughes
1470c824a9 am eceb417d: am 67f1f3b1: Have pthread_attr_getstack for the main thread report RLIMIT_STACK...
* commit 'eceb417d2817aace3207943cc90b81026d505f80':
  Have pthread_attr_getstack for the main thread report RLIMIT_STACK...
2014-08-28 04:16:11 +00:00
Elliott Hughes
53c39aab6e am 0019c7b5: resolved conflicts for merge of a0eeb0b6 to lmp-dev-plus-aosp
* commit '0019c7b5a05a7c79e3ab9b72cae9bcdf8d22491e':
  Fix pthread_getattr_np for the main thread.
2014-08-28 04:11:48 +00:00
Elliott Hughes
f5f59e3756 am 9560aaba: am f4e721dd: Merge "Have pthread_attr_getstack for the main thread report RLIMIT_STACK..."
* commit '9560aaba8ff6c667495de590a097709cb95bba24':
  Have pthread_attr_getstack for the main thread report RLIMIT_STACK...
2014-08-28 00:13:16 +00:00
Christopher Ferris
96e0a433f9 am 5f6bab1a: am af9da4a3: Merge "Replace snprintf calls in linker."
* commit '5f6bab1ac2212a23d8afd96dceb51b793b05dd2f':
  Replace snprintf calls in linker.
2014-08-27 23:53:09 +00:00
Chih-Hung Hsieh
42e5994ff1 am 2c449617: am fbe9d3df: Merge "Fix strlen function type for mips."
* commit '2c449617c37c7b5419908499740530af2f1ca6f0':
  Fix strlen function type for mips.
2014-08-27 23:36:22 +00:00
Yigit Boyar
f227b34d1c am 80f47ca3: Merge branch \'lmp-dev-plus-aosp\' of https://googleplex-android.googlesource.com/_direct/platform/bionic into lmp-dev-plus-aosp
* commit '80f47ca35cf54ac3de8b42b70d81189bd58080c7':
  Replace ambiguous cmp instruction with cmpl.
2014-08-27 23:13:49 +00:00
Christopher Ferris
91f854ee7d am 04f12ef9: am 598d25bf: Merge "Replace snprintf calls in linker." into lmp-dev
* commit '04f12ef91c7f4235d6657583679f1dc39718344f':
  Replace snprintf calls in linker.
2014-08-27 23:13:48 +00:00
Chih-Hung Hsieh
71405a84da am 2dc7fd03: am 34da32e7: Merge "Add missing type casts before comparison."
* commit '2dc7fd03e77e32f85422786cc4bea157354d50be':
  Add missing type casts before comparison.
2014-08-27 22:13:22 +00:00
Christopher Ferris
895854f430 am 725fae1d: am 6ecd1cd1: Merge "Use the default unwind code."
* commit '725fae1de487cb202d5429afb440541b79e8381e':
  Use the default unwind code.
2014-08-27 21:50:09 +00:00
Baligh Uddin
0570368a79 am 388369b7: Merge branch \'lmp-dev-plus-aosp\' of https://googleplex-android.googlesource.com/_direct/platform/bionic into lmp-dev-plus-aosp
* commit '388369b788f93670551fe32233b6c4b55d3879d9':
  call uselocale() before freelocale() to make sure that g_local_key has a valid locale.
  Switch to OpenBSD <err.h> implementation.
2014-08-27 17:55:30 +00:00
Elliott Hughes
c15ee16fb3 am b489ba48: am 6cc4e3b6: Merge "call uselocale() before freelocale() to make sure that g_local_key has a valid locale." into lmp-dev
* commit 'b489ba48a11ae91bd51bd99b3741ad452484684d':
  call uselocale() before freelocale() to make sure that g_local_key has a valid locale.
2014-08-27 17:55:29 +00:00
Christopher Ferris
e94c0e6abf am 7bad1a90: am 3f7635f4: Use the default unwind code.
* commit '7bad1a90f1f270d5e2e3ca798d1e0f35c79bec6b':
  Use the default unwind code.
2014-08-27 04:55:00 +00:00
Hans Boehm
c0c0e0404f am 3b32ba0e: am 6bfcefe0: Merge "Undefine _Atomic before redefining"
* commit '3b32ba0e2c1851e20f72a73c606dcbfc79e687bb':
  Undefine _Atomic before redefining
2014-08-27 00:11:45 +00:00
Elliott Hughes
e294a02c0c am d961078f: am 07401c71: Merge "Switch to OpenBSD daemon(3)."
* commit 'd961078f2d1ee42f41ae967d33ba583dd42475f8':
  Switch to OpenBSD daemon(3).
2014-08-27 00:11:45 +00:00
Elliott Hughes
edbd5b2659 am 3e95a0d6: am f1e64b5c: (-s ours) Merge "More cases where libc should use O_CLOEXEC."
* commit '3e95a0d6f0fb3e15485c4671643b4c61e89c49d3':
  More cases where libc should use O_CLOEXEC.
2014-08-27 00:11:44 +00:00
Elliott Hughes
77fd54ae1c am f975bc2d: am 7b87d441: Merge "Switch to OpenBSD res_random."
* commit 'f975bc2d59b064e08f5d01ecd0724cb76351727f':
  Switch to OpenBSD res_random.
2014-08-26 23:47:17 +00:00
Elliott Hughes
390a11303d am 06b03394: am 59de803a: Merge "libc should use O_CLOEXEC when opening files for its own use."
* commit '06b033942ae7c6d967e4c58a4dd649e421598eba':
  libc should use O_CLOEXEC when opening files for its own use.
2014-08-26 23:47:16 +00:00
Dmitriy Ivanov
df8e8af8f7 am a04130f5: am 9f5dee55: Merge "Remove unnecessary calls to LinkedList::clear()"
* commit 'a04130f54c087cf2ad2924863a8a1e5c22fdd8a9':
  Remove unnecessary calls to LinkedList::clear()
2014-08-26 23:47:15 +00:00
Dmitriy Ivanov
2ad7cce57c am 8e35e9e7: am d2bd3c47: Merge "Enable __cxa_atexit && __cxa_finalize for linker"
* commit '8e35e9e73ee14fa8c725c83d871db2b58821d8c9':
  Enable __cxa_atexit && __cxa_finalize for linker
2014-08-26 23:35:36 +00:00
Elliott Hughes
8572efefa5 am 05409ded: am c764fb24: Merge "Fix pthread_getattr_np for the main thread."
* commit '05409dedcd6268d8150e5a39327b1b48711834c0':
  Fix pthread_getattr_np for the main thread.
2014-08-26 20:18:50 +00:00
Chih-Hung Hsieh
b4e5b1012b am a9c435e0: am 9e307af9: Merge "Add standard throw() spec to delete operators."
* commit 'a9c435e072111d6e4a90748bb4a34f2c46814162':
  Add standard throw() spec to delete operators.
2014-08-25 22:41:21 +00:00
Hans Boehm
235027e19d am 685c722d: am a4a8c4fe: Merge "Fix, generalize stdatomic.h; improve test."
* commit '685c722d32086f0ded3da9975a934cef34f171c9':
  Fix, generalize stdatomic.h; improve test.
2014-08-22 23:24:37 +00:00
Dmitriy Ivanov
355ffed60d am 0c3ef375: am 9d34f6a9: Merge "Bump soinfo version"
* commit '0c3ef37501d32444ef333a960e306b33164fa31f':
  Bump soinfo version
2014-08-22 21:13:57 +00:00
Dan Albert
2d516203f3 am 740cf634: am 0b9fa4c9: Merge "Fix dlmalloc build."
* commit '740cf634f78141b37e30a37f9fdf491951d321e4':
  Fix dlmalloc build.
2014-08-22 18:40:23 +00:00
Dan Albert
66af51131b am a2dcd944: am 4756afe3: Merge "Implement malloc_info(3)."
* commit 'a2dcd9449e7afe93ee9472ea899539b17574908f':
  Implement malloc_info(3).
2014-08-22 18:16:29 +00:00
Elliott Hughes
952e2b839c am 4592c5e9: Merge branch \'lmp-dev-plus-aosp\' of https://googleplex-android.googlesource.com/_direct/platform/bionic into lmp-dev-plus-aosp
* commit '4592c5e993e2ee625b9cfdd8e50cce0be9042114':
  Fix unistd.getpid_caching_and_clone.
2014-08-22 16:53:23 +00:00
Elliott Hughes
a657e1cc6a am 021ce40c: am 84d0683a: Fix unistd.getpid_caching_and_clone.
* commit '021ce40c0ca98ccdd7daa4d468222b951da10c06':
  Fix unistd.getpid_caching_and_clone.
2014-08-22 16:53:23 +00:00
Dan Albert
fc7b06fd58 am ab537ae5: am 2e6c5fc4: Merge "Remove _flush_cache(2) for mips64."
* commit 'ab537ae574ba675d3b313c544f5cf5de0c6e77e7':
  Remove _flush_cache(2) for mips64.
2014-08-21 22:26:46 +00:00
Dmitriy Ivanov
84c8fc8683 am 87c5f24e: am 2bd88d45: Merge "Run constructors before resolving ifunc functions"
* commit '87c5f24e4e58d7c26e8490f33d8233755b17a551':
  Run constructors before resolving ifunc functions
2014-08-21 21:55:13 +00:00
Dan Albert
54f4129b79 am ba8dede8: am 31572118: Merge "__gnu_basename(3) is accounted for."
* commit 'ba8dede8585adfc411726496a877a1460fa769c6':
  __gnu_basename(3) is accounted for.
2014-08-21 19:43:28 +00:00
Elliott Hughes
4e8ff5bf33 am d00ce65a: am 2d80400a: Fix some 32-bit-isms in <stdio.h>.
* commit 'd00ce65a16a77921b1835dc52dd31b9206200551':
  Fix some 32-bit-isms in <stdio.h>.
2014-08-21 18:34:41 +00:00
Elliott Hughes
4c6c024a32 am 1fa71e6c: am d5fbc371: Merge "Add POSIX-2008 fmemopen, open_memstream, and open_wmemstream."
* commit '1fa71e6cbb7254e6450701913e5f9cfc6226587a':
  Add POSIX-2008 fmemopen, open_memstream, and open_wmemstream.
2014-08-21 04:07:20 +00:00
Elliott Hughes
8aab5c927f am ff3adf16: am b6ed5407: Merge "Simplify _ALIGN_TEXT."
* commit 'ff3adf163222cf8351c9968149509615bc936552':
  Simplify _ALIGN_TEXT.
2014-08-20 20:57:47 +00:00
Elliott Hughes
497a10b311 am 1b6b56a9: am 7134fc30: Merge "Regenerate "services.h" from /etc/services."
* commit '1b6b56a9a662eb68a0eb707c556287b0f7810556':
  Regenerate "services.h" from /etc/services.
2014-08-20 20:57:46 +00:00
Elliott Hughes
fd66905ac7 am 28bd4fd0: am 3bcd414b: Merge "Clean up some of our python scripts."
* commit '28bd4fd080d290dba0f61275109698d0fe4b5dc4':
  Clean up some of our python scripts.
2014-08-20 20:57:45 +00:00
Elliott Hughes
b22eebf09e am c64b6800: am 55244a9b: Merge "Add <stdio_ext.h> for elfutils."
* commit 'c64b680066d4ceaba908bf43ba7b2b8761b00073':
  Add <stdio_ext.h> for elfutils.
2014-08-20 20:57:45 +00:00
Hans Boehm
f4a27ad738 am c4b55c12: am b61c5064: Merge "Work around atomic_load(const T*) issues."
* commit 'c4b55c1221581b5ab8dc7cc21d9eead85b79eaa2':
  Work around atomic_load(const T*) issues.
2014-08-20 20:57:44 +00:00
Elliott Hughes
7888f4d5ad am d61f102b: am b9d674c8: Merge "Implement the GNU basename(3) in addition to the POSIX one."
* commit 'd61f102bf8015686806f20bf5895fd05b967ce09':
  Implement the GNU basename(3) in addition to the POSIX one.
2014-08-19 22:25:59 +00:00
Dan Albert
a9cfc7750d am f642846c: am 1506fc17: Expose android_set_abort_message().
* commit 'f642846c1cec8554ec4f09686eb9ce999f6edf59':
  Expose android_set_abort_message().
2014-08-19 20:35:04 +00:00
Elliott Hughes
e232b38314 am b8a8d1d6: am c5d6df6f: Merge "Add in_port_t and move it and in_addr_t to the correct header file."
* commit 'b8a8d1d68e5e7c7df8187f76bbd452a9822fab6d':
  Add in_port_t and move it and in_addr_t to the correct header file.
2014-08-19 20:35:03 +00:00
Elliott Hughes
74dae62e5a am 59b5f585: am 6f4220c4: Merge "Move the meat of <features.h> into <sys/cdefs.h>."
* commit '59b5f5852219cbfc266f619177990955022a31d1':
  Move the meat of <features.h> into <sys/cdefs.h>.
2014-08-19 19:11:58 +00:00
Dan Albert
62e1e86e33 am f01d69e9: am 2222eae6: Merge "Missing #include <sys/cdefs.h>."
* commit 'f01d69e9def62d67da15e50ff40afab55f5c140c':
  Missing #include <sys/cdefs.h>.
2014-08-19 18:47:16 +00:00
Elliott Hughes
b969ed0786 am f00e8620: am 17f83c93: Merge "Remove unused defines from <features.h>."
* commit 'f00e86209d8b6b846c376786230ae07667534507':
  Remove unused defines from <features.h>.
2014-08-19 17:59:32 +00:00
Dan Albert
3a240cc3bb am d971171d: am 934c8015: Merge "Expose android_set_abort_message()."
* commit 'd971171dfb5dffae9d41c07a3961389689f333e7':
  Expose android_set_abort_message().
2014-08-19 17:43:20 +00:00
Elliott Hughes
b6463733ca am ecd48356: am e4fcc3ad: Merge "Fix _BSD_SOURCE/__USE_BSD."
* commit 'ecd48356e38f2aec61639545c9656e8c67bcd6bd':
  Fix _BSD_SOURCE/__USE_BSD.
2014-08-19 17:37:54 +00:00
Dmitriy Ivanov
f9ac267bd3 am 707ed62b: am 8a76ee82: Merge "Revert "Add support for protected local symbol lookup.""
* commit '707ed62b9f873af84dc2a3427aadff3bef35f726':
  Revert "Add support for protected local symbol lookup."
2014-08-19 17:37:53 +00:00
Dmitriy Ivanov
6179fee1f6 am 19bf7f71: resolved conflicts for merge of e3ad34b3 to lmp-dev-plus-aosp
* commit '19bf7f717023558d54312c95f6a6529154204bab':
  Revert "Add support for protected local symbol lookup."
2014-08-19 13:39:57 +00:00
Elliott Hughes
ef7f99d2b5 am 38ba927c: am 0baf2ca3: Merge "Fix <features.h> (_BSD_SOURCE and _GNU_SOURCE)."
* commit '38ba927c35295f935568a8b8c508dcc666780e8c':
  Fix <features.h> (_BSD_SOURCE and _GNU_SOURCE).
2014-08-19 00:48:15 +00:00
Elliott Hughes
269bef726b am c2289796: am 205cc415: Merge "Improve <sys/cdefs.h>."
* commit 'c228979648e0812b2032d9d622af20153ddf4f29':
  Improve <sys/cdefs.h>.
2014-08-18 22:35:55 +00:00
Dan Albert
8e0eabadba am 247e441b: Resolved conflicts for merge of 6df7b609 to lmp-dev-plus-aosp.
* commit '247e441b0c039046d7ab355424a3d5e41c9bab91':
  Hide C++ stuff in libc. Put it back in libstdc++.
2014-08-18 22:06:30 +00:00
Christopher Ferris
cc7e938ce1 am bd4351f9: am 54d24e09: Merge "Fix leak_realloc, copy entire allocation."
* commit 'bd4351f9452c1e095e02894c198fe4ee8a99832c':
  Fix leak_realloc, copy entire allocation.
2014-08-18 21:15:06 +00:00
Christopher Ferris
c3bc045a5a am 3290fd46: am 3c7c9a8d: (-s ours) Merge "malloc_usable_size returns the original size."
* commit '3290fd4625fc67f35b641b52c1142bb64dc25d67':
  malloc_usable_size returns the original size.
2014-08-18 21:15:06 +00:00
Dan Albert
754e884618 am 2b91cf32: am db2e0247: Merge "Hide C++ stuff in libc. Put it back in libstdc++."
* commit '2b91cf32e646481657d951e1bb2d2493116a4edc':
  Hide C++ stuff in libc. Put it back in libstdc++.
2014-08-18 20:22:56 +00:00
Christopher Ferris
0d9b41e1a8 am 3d7f92e9: am 9e56ce4c: Merge "Fix leak_realloc, copy entire allocation." into lmp-dev
* commit '3d7f92e914b5a89a74d33757379775cc6abaebc1':
  Fix leak_realloc, copy entire allocation.
2014-08-18 19:47:21 +00:00
Dmitriy Ivanov
32efc8ea0f am 05d2a981: am 2b6cdb5e: Merge "Add atexit test for attributed c-tor/d-tor"
* commit '05d2a98133b5432f70e1f830aa55c5f50bfb3e29':
  Add atexit test for attributed c-tor/d-tor
2014-08-16 00:44:40 +00:00
Dmitriy Ivanov
7677b6f382 am 18fbdce8: am d8e00769: Merge "Keep symbols for linker" into lmp-dev
* commit '18fbdce86e02726581a13954f27a7ab05e438a2e':
  Keep symbols for linker
2014-08-16 00:43:44 +00:00
Hans Boehm
e91a58a164 am a1ff9e8e: am f0f66c02: Have stdatomic.h punt to C++ atomic when possible
* commit 'a1ff9e8eb00d189b01d7f3cdb21541ce0445a3b1':
  Have stdatomic.h punt to C++ atomic when possible
2014-08-15 21:27:05 +00:00
Hans Boehm
cc6c2324a7 am e9c7a452: am 7d05f741: Merge "Have stdatomic.h punt to C++ atomic when possible"
* commit 'e9c7a4528cf33f571e9ba4d3ccc032b4f377a89b':
  Have stdatomic.h punt to C++ atomic when possible
2014-08-15 18:33:22 +00:00
Dan Albert
e7bf334437 am 47822dae: am e2050ae1: Merge "Change name of MB_CUR_MAX implementation function." into lmp-dev
* commit '47822dae63d939b58ca9b946b90396475ac14930':
  Change name of MB_CUR_MAX implementation function.
2014-08-15 13:39:47 +00:00
Dan Albert
6676667b7f am 716fe4ca: am 553c0ea5: Merge "Move mtctxres.c to libc_dns.a." into lmp-dev
* commit '716fe4caacff804a689ac84eaeb5cc5a9311edcd':
  Move mtctxres.c to libc_dns.a.
2014-08-15 13:39:46 +00:00
Christopher Ferris
033c2787c4 am c3731ea8: am 0533195e: Merge "malloc_usable_size returns the original size." into lmp-dev
* commit 'c3731ea8fdeb5d4d0152b986b4bb9316dc49ead8':
  malloc_usable_size returns the original size.
2014-08-15 11:52:10 +00:00
Dmitriy Ivanov
337527f4a7 am a43011da: am 4bea4c63: Label pages mapped by linker_allocator
* commit 'a43011daf05cf0b22f4c0d387254351e87898035':
  Label pages mapped by linker_allocator
2014-08-14 23:49:22 +00:00
Dan Albert
cf59e8ca66 am 3dbab7a7: am d0cce143: Merge "Move mtctxres.c to libc_dns.a."
* commit '3dbab7a709c1048e5051c4496f65def3b2f2c44c':
  Move mtctxres.c to libc_dns.a.
2014-08-14 23:33:27 +00:00
Dmitriy Ivanov
4eb28d6278 am f6829737: am 8457779b: Merge "Keep symbols for linker"
* commit 'f6829737ccaec1af17290283d2c571dd06600f96':
  Keep symbols for linker
2014-08-14 23:00:44 +00:00
Dan Albert
db4b9e600e am 49af4264: am 0d4ccee3: Merge "Change name of MB_CUR_MAX implementation function."
* commit '49af4264ab57618f5e189287f4f2aa9f8aae2231':
  Change name of MB_CUR_MAX implementation function.
2014-08-14 21:35:56 +00:00
Dan Albert
7fe5957503 am 72de5013: am 104a4729: Merge "Add more functionality to glibc symbol checker."
* commit '72de50139dd7bccebb57b2764eae0f534b6ecdca':
  Add more functionality to glibc symbol checker.
2014-08-14 21:35:56 +00:00
Hans Boehm
6486388ee3 am faa0a7b7: am 4f85c6ff: Merge "Add memory ordering constraint, convert to C11 atomics"
* commit 'faa0a7b7886e98c63078b4874224c7ea66a70036':
  Add memory ordering constraint, convert to C11 atomics
2014-08-14 03:38:37 +00:00
Dmitriy Ivanov
3435d89666 am 63ea43de: am e942b3ed: Merge "Added test for ifunc support in dynamic linker."
* commit '63ea43de8f2f5aa5c260165a1d4415f642656d75':
  Added test for ifunc support in dynamic linker.
2014-08-14 00:38:50 +00:00
Dan Albert
89c57c8728 am 07337271: am 9a74e4c1: Merge "Hide __libc_init_vdso()."
* commit '0733727194593db83aa10ecce74028745a75460a':
  Hide __libc_init_vdso().
2014-08-13 23:11:48 +00:00
Dan Albert
808a44c37f am 9b4410b9: am 1f4c536f: (-s ours) Merge "Hide ScopedTrace."
* commit '9b4410b9123b32ecb3b48eb17ef67e029660a821':
  Hide ScopedTrace.
2014-08-13 20:21:59 +00:00
Dmitriy Ivanov
41fa785698 am af2ee506: am 8a84d383: Optimize symbol lookup
* commit 'af2ee5068d8516919f38b2785de1ccac996d7d64':
  Optimize symbol lookup
2014-08-13 16:52:47 +00:00
Dmitriy Ivanov
f759d4cb51 am 15921382: am db0785cb: Merge "Optimize symbol lookup"
* commit '15921382fb94bbbfa559f76eb2aaca9f54fb98d0':
  Optimize symbol lookup
2014-08-13 16:36:08 +00:00
Dan Albert
0f30332e89 am 4b100dd7: am d332bc68: Hide __libc_malloc_dispatch.
* commit '4b100dd72fe368296882e91ad76d2dedf89e1fa2':
  Hide __libc_malloc_dispatch.
2014-08-13 15:54:50 +00:00
Dan Albert
fe9633c555 am 25b55a09: am 6e3823d3: Merge "Hide __libc_malloc_dispatch."
* commit '25b55a09f661e07e920a8e68951517e1be22349d':
  Hide __libc_malloc_dispatch.
2014-08-13 00:06:04 +00:00
Dmitriy Ivanov
b37298f436 am ab63b6b0: am 00c16c1b: Merge "Label pages mapped by linker_allocator"
* commit 'ab63b6b067c848aa789c6bda4f420b929d5f3c14':
  Label pages mapped by linker_allocator
2014-08-11 16:47:03 +00:00
Elliott Hughes
d4f4df8bd9 am a466df52: am 72d7e667: Fix our x86 PIC_PROLOGUE.
* commit 'a466df528c90495931f46fbe39ed37ea3893d5ee':
  Fix our x86 PIC_PROLOGUE.
2014-08-10 08:59:06 +00:00
Elliott Hughes
daf86953fb am cd2cd65c: am 4d0f742a: Merge "Fix our x86 PIC_PROLOGUE."
* commit 'cd2cd65c5f5a65e27610d3cd5a6838395114aa5e':
  Fix our x86 PIC_PROLOGUE.
2014-08-10 08:55:20 +00:00
Dan Albert
8e4d698df8 am 2a8efb81: am f4d21fba: Merge "Make __set_errno hidden in asm." into lmp-dev
* commit '2a8efb8169ff6b1b9375aac01f2263b4f71cb9ec':
  Make __set_errno hidden in asm.
2014-08-09 06:58:53 +00:00
Dan Albert
8e650110e7 am 21588d1f: am a0db4641: Merge "Make __set_errno hidden in asm."
* commit '21588d1f2e885d42b724d8c22ea313593c69cac5':
  Make __set_errno hidden in asm.
2014-08-08 22:53:57 +00:00
Dan Albert
16f3c423fa am 287762ed: am 3788a1ee: Merge "Revert "Fix incorrect relocations for x86.""
* commit '287762edb7bc2d13cdd4c02f049eac4cf8630876':
  Revert "Fix incorrect relocations for x86."
2014-08-08 22:45:51 +00:00
Christopher Ferris
c455eb2478 am 98d4eaab: am 1c5e415f: Merge "Add a way to disable backtracing in malloc debug."
* commit '98d4eaab3fe8e0a243ce2abaf6647acb99e9d81e':
  Add a way to disable backtracing in malloc debug.
2014-08-08 16:57:32 +00:00
Christopher Ferris
629552fb67 am f1820351: am 49de01a5: Add a way to disable backtracing in malloc debug.
* commit 'f18203517e61fdefbe42620426cc9990294dda00':
  Add a way to disable backtracing in malloc debug.
2014-08-08 16:38:57 +00:00
Elliott Hughes
e92e559092 am b763b7d6: am f2d8c357: Merge "Remove misleading arm/arm64 PIC_SYM."
* commit 'b763b7d6d57380eb82f6fe5cb62864ea12b405ae':
  Remove misleading arm/arm64 PIC_SYM.
2014-08-08 16:25:09 +00:00
Christopher Ferris
3c684d4393 am e2005cda: am 92f0c91b: Merge "Create a distinct temp directory for each run."
* commit 'e2005cdae0e6ad103fa18e61d5f46c5549fac4e4':
  Create a distinct temp directory for each run.
2014-08-08 07:19:10 +00:00
Elliott Hughes
d0a07699b4 am 0d9cc846: am 43227c0b: Android is all-PIC/PIE.
* commit '0d9cc846f748c72ad8d8df4b606f5333b61cabf0':
  Android is all-PIC/PIE.
2014-08-08 02:26:42 +00:00
Dan Albert
2f4002d9f8 am d17047ff: am cdd2f072: Merge "Fix incorrect relocations for x86."
* commit 'd17047ffd6a6c54e177bc75b05082afeae40f2f9':
  Fix incorrect relocations for x86.
2014-08-08 00:29:29 +00:00
Elliott Hughes
c4a9c129dd am 1636f80b: am d994622e: Merge "Android is all-PIC/PIE."
* commit '1636f80b7d30103f10ab3ccc2632e8f693c0f9c0':
  Android is all-PIC/PIE.
2014-08-07 18:37:50 +00:00
Christopher Ferris
e552abb0b4 am 1c85152f: am 85ebcfce: Merge "Do a second key cleanup in pthread_exit."
* commit '1c85152f76e0696e117760d5f89d23480a753afd':
  Do a second key cleanup in pthread_exit.
2014-08-07 01:17:28 +00:00
Christopher Ferris
9e849a64ed am 60b4de13: am 3e7b8e2a: Merge "Do a second key cleanup in pthread_exit." into lmp-dev
* commit '60b4de132cfa2efef75033aefe3322762042ea92':
  Do a second key cleanup in pthread_exit.
2014-08-07 01:13:13 +00:00
Elliott Hughes
984e051bcf am 3ea3982f: am 501eb513: Merge "Upgrade bionic to tzdata2014f." into lmp-dev
* commit '3ea3982f1f810049ad02f658220784ace5eae6db':
  Upgrade bionic to tzdata2014f.
2014-08-07 01:00:59 +00:00
Elliott Hughes
5b420a25ac am af0ec906: am 6edf8985: Merge "Fix the tzdata update tools." into lmp-dev
* commit 'af0ec906bd0f77971afaf135466e60e41f7faea7':
  Fix the tzdata update tools.
2014-08-07 00:52:49 +00:00
Elliott Hughes
65077ed577 am 5a092670: am f3868fa7: Merge "Upgrade bionic to tzdata2014f."
* commit '5a0926701997d6ff2189054787147adb956d4b3a':
  Upgrade bionic to tzdata2014f.
2014-08-07 00:52:48 +00:00
Elliott Hughes
a76126a0a3 am 0415a4a6: am b4b7e054: Merge "Fix the tzdata update tools."
* commit '0415a4a6f89e31cd8b3d5126fd7a1b9877d84906':
  Fix the tzdata update tools.
2014-08-07 00:52:48 +00:00
Dan Albert
9f7bca69e9 am 0f3b73aa: am bc0d65c1: Merge "Proper MB_CUR_MAX." into lmp-dev
* commit '0f3b73aa22ca3bed476ec2800a7b06f0eecdcf88':
  Proper MB_CUR_MAX.
2014-08-06 23:02:32 +00:00
Dan Albert
914d64980b am 589859a1: am 5b39a445: Merge "Fix mbsrtowcs(3) src param for finished string." into lmp-dev
* commit '589859a125fc0c67d0f56706ee18f7ae2f3e45ee':
  Fix mbsrtowcs(3) src param for finished string.
2014-08-06 23:02:28 +00:00
Dan Albert
a56d8fd6de am d14344ad: am 40079b00: Fixes build.
* commit 'd14344adf295c3870bc8454d9989da3c5e320312':
  Fixes build.
2014-08-06 23:02:28 +00:00
Dan Albert
5511dd46fd am 8b1af476: am 5386a741: Revert "Replaces vfork() implementation with fork()"
* commit '8b1af4762c3f1fb35173830ba417564a5b3dc0ad':
  Revert "Replaces vfork() implementation with fork()"
2014-08-06 23:02:27 +00:00
Elliott Hughes
bd5cc87362 am fa70bacc: am 3a238ae7: Merge "Revert "Add a hack to <stdlib.h> until we can fix libvpx.""
* commit 'fa70bacc6cfe78793743696b91c7fe3158a01a3f':
  Revert "Add a hack to <stdlib.h> until we can fix libvpx."
2014-08-06 23:01:37 +00:00
Elliott Hughes
7ef16e88e8 am 5fb6ce29: am 00a8344a: Merge "Workaround b/16818336 which fails build under aggressive inlining." into lmp-dev
* commit '5fb6ce295038d345dee354b93c2fc408effdd29c':
  Workaround b/16818336 which fails build under aggressive inlining.
2014-08-06 23:00:48 +00:00
Paul Jensen
2e2d7dee1d am 8019e6f0: am 7a5f0952: Merge "Revert most of "Cleanup: Delete dead code."" into lmp-dev
* commit '8019e6f0fd39a9b76034a12ef1598b50588fb719':
  Revert most of "Cleanup: Delete dead code."
2014-08-06 23:00:47 +00:00
Elliott Hughes
a69fd4651a am 42848344: am bb91a1b8: Merge "Workaround b/16818336 which fails build under aggressive inlining."
* commit '428483446e7cd52cb608481c091f2ac4521081ae':
  Workaround b/16818336 which fails build under aggressive inlining.
2014-08-06 18:57:22 +00:00
Elliott Hughes
5801991bdd am 987e533e: am 59b0933e: Explain how wcswcs ended up in ndk_cruft.cpp.
* commit '987e533ed466a51a1b269f6707765d4a6243d27e':
  Explain how wcswcs ended up in ndk_cruft.cpp.
2014-08-06 18:17:01 +00:00
Elliott Hughes
f69f0b9ac2 am 10d197c6: am 8b91980e: Merge "Explain how wcswcs ended up in ndk_cruft.cpp."
* commit '10d197c681e96187645eaf6341d13967e33a0308':
  Explain how wcswcs ended up in ndk_cruft.cpp.
2014-08-06 18:08:43 +00:00
Elliott Hughes
f77fbbb53e am 0a693b4f: am afc86723: Merge "Add an obvious comment to <stdio.h> for fixincludes."
* commit '0a693b4fc88bc6e0f3b0672a994931cce5d42716':
  Add an obvious comment to <stdio.h> for fixincludes.
2014-08-06 17:40:42 +00:00
Dmitriy Ivanov
694d295e5e am 36730936: am db7a17d4: Revert "Revert "Fix dlsym(3) to do breadth first search.""
* commit '36730936a13b1948240641739a15c3ef56c501f3':
  Revert "Revert "Fix dlsym(3) to do breadth first search.""
2014-08-06 17:36:10 +00:00
Dan Albert
282638f7f5 am 909464c2: am de69069f: Merge "Fixes build."
* commit '909464c2cb90fa8b530ae53fa849d3bc5818b676':
  Fixes build.
2014-08-06 17:25:40 +00:00
Ben Murdoch
62c69c25d2 fix the build
Change-Id: I8a3b26014ced1ce95b9a0f675099c3fdfbe041f3
2014-08-06 16:17:04 +01:00
Dan Albert
74508b2fec am dfe8417a: am a7ef8188: Merge "Revert "Replaces vfork() implementation with fork()""
* commit 'dfe8417a58a8413cce6c7bb2b224950c7085245c':
  Revert "Replaces vfork() implementation with fork()"
2014-08-06 12:10:50 +00:00
Dmitriy Ivanov
83a1c15907 am f9a0af9c: am 1b1966d9: Revert "Fix dlsym(3) to do breadth first search."
* commit 'f9a0af9c9343ba48ab42decbb8aab7fbefed1bd4':
  Revert "Fix dlsym(3) to do breadth first search."
2014-08-04 16:50:33 +00:00
Dan Albert
74a7a4d296 am b782c20b: am 447fe1c2: Merge "Fix mbsrtowcs(3) src param for finished string."
* commit 'b782c20b8244ec5cc348547291503a4c30ca65ba':
  Fix mbsrtowcs(3) src param for finished string.
2014-07-31 22:35:45 +00:00
Dan Albert
ce6fe525d5 am 0c4ad535: am 36bacd23: Merge "Proper MB_CUR_MAX."
* commit '0c4ad535dc8d1aea6ee2bbeb8a68fc3a4363f246':
  Proper MB_CUR_MAX.
2014-07-31 00:26:18 +00:00
Christopher Ferris
828c7b396d am 592cfa90: am 61833de6: Fix memchr with a zero length.
* commit '592cfa90c3cc397a2a0415ac0d8c88f8f03210de':
  Fix memchr with a zero length.
2014-07-30 23:51:25 +00:00
Christopher Ferris
f2eef5159a am 30ac3d58: am 0f7ed163: Merge "Fix memchr with a zero length."
* commit '30ac3d58eaa6e502d053eaaabf163b173884cceb':
  Fix memchr with a zero length.
2014-07-30 23:39:12 +00:00
Elliott Hughes
aa1cbcb131 am 63b6416f: am 4f76469e: Implement <sys/fsuid.h>.
* commit '63b6416f339c70855e4bb44cd1c6fbb9a85a60fe':
  Implement <sys/fsuid.h>.
2014-07-30 23:31:46 +00:00
Elliott Hughes
796d419f2e am 897aca77: am 83b9826e: Merge "Implement <sys/fsuid.h>."
* commit '897aca77eeb9286574ddec58bb893df7c02a8912':
  Implement <sys/fsuid.h>.
2014-07-30 23:31:46 +00:00
Duane Sand
5750c7cc49 am 66fa2c87: am cd541952: [MIPSR6] Use C-coded string ops on mips32r6/mips64r6
* commit '66fa2c87d6dea6c316a9984146c306011e3afb80':
  [MIPSR6] Use C-coded string ops on mips32r6/mips64r6
2014-07-30 22:32:41 +00:00
Elliott Hughes
8ead392b05 am abd28445: am c7706a02: Merge "[MIPSR6] Use C-coded string ops on mips32r6/mips64r6"
* commit 'abd284457884c4972a6dd72e2a2b647d935b1fe3':
  [MIPSR6] Use C-coded string ops on mips32r6/mips64r6
2014-07-30 22:27:49 +00:00
Elliott Hughes
adc2a59383 am 84093b17: am 11bf8a30: Only wipe TLS for user-supplied stacks.
* commit '84093b174eb30f52414838d4a54847b19c621c93':
  Only wipe TLS for user-supplied stacks.
2014-07-30 22:10:49 +00:00
Elliott Hughes
aed19ee769 am 594a5275: am 18a1bbe6: Merge "Only wipe TLS for user-supplied stacks."
* commit '594a5275188df203bb720afc2b2c898643fff6e3':
  Only wipe TLS for user-supplied stacks.
2014-07-30 22:06:45 +00:00
Christopher Ferris
a6d698d914 am 0770ed06: am c701e5b3: Use libunwindbacktrace for debug malloc code.
* commit '0770ed068078786aa2e38ddc6eecbbf2a5fccef0':
  Use libunwindbacktrace for debug malloc code.
2014-07-30 17:02:14 +00:00
Elliott Hughes
46975d966c am a99a69a6: am 1242f7eb: Remove declarations for things that don\'t exist.
* commit 'a99a69a6400ed5078749656ee120fad1ad09ba97':
  Remove declarations for things that don't exist.
2014-07-30 17:02:13 +00:00
Elliott Hughes
8fc6d6807f am 4d17c6c3: am f6aa1779: Merge "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp."" into lmp-dev
* commit '4d17c6c39f8aeae13b177ed7a22be1895068830a':
  Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp."
2014-07-30 17:02:12 +00:00
Dan Albert
f61f354583 am 5fce71b5: am e872c923: Merge "en_US.UTF-8 is also supported." into lmp-dev
* commit '5fce71b56e567a0e578e8ec8c1cab2bbc2e783ec':
  en_US.UTF-8 is also supported.
2014-07-30 14:28:40 +00:00
Dan Albert
28124017d6 am d735a072: am 9379ce69: Merge "There is no _MIN for unsigned types." into lmp-dev
* commit 'd735a0723a185568997b443b338ccf7a171ab254':
  There is no _MIN for unsigned types.
2014-07-30 14:28:39 +00:00
Dan Albert
fd4f86ccc2 am bb0c0531: am a1a813da: Merge "Fix mbsrtowcs(3)\'s handling of len parameter." into lmp-dev
* commit 'bb0c0531057018175a3e610501334f821973c67d':
  Fix mbsrtowcs(3)'s handling of len parameter.
2014-07-30 14:28:39 +00:00
Dan Albert
d0e6c73aec am ff20ad98: am 8db0ce70: Merge "__libc_fatal should print a newline to stderr." into lmp-dev
* commit 'ff20ad985ec54a72a2bc749cbd042373e8453116':
  __libc_fatal should print a newline to stderr.
2014-07-30 14:28:38 +00:00
Dmitriy Ivanov
aed8b1ceff am 2d361732: am 422106a2: Fix dlsym(3) to do breadth first search.
* commit '2d36173271512d9dd63a2193a8efc1d51f44d5fa':
  Fix dlsym(3) to do breadth first search.
2014-07-30 14:28:37 +00:00
Christopher Ferris
880ac3255a am 4cc7dba9: am 4ad5066e: Merge "Use libunwindbacktrace for debug malloc code."
* commit '4cc7dba978de80fe8dfd0424a36719e37991cfbd':
  Use libunwindbacktrace for debug malloc code.
2014-07-30 02:28:03 +00:00
Elliott Hughes
e0414f6f04 am eb0642a2: am 17886971: Merge "Remove declarations for things that don\'t exist."
* commit 'eb0642a2b98d052adf10d9079e51f23b5b49a45a':
  Remove declarations for things that don't exist.
2014-07-30 01:23:39 +00:00
Dmitriy Ivanov
c7c4c60628 am 60abfd28: am 2b591b37: Merge "Fix dlsym(3) to do breadth first search."
* commit '60abfd28ca734e500e4a51ee46b2fd7fa3ce7b8d':
  Fix dlsym(3) to do breadth first search.
2014-07-29 22:13:07 +00:00
Elliott Hughes
4d72c3b2b3 am 0950f263: am 2ea0a58e: Fix linkage of grantpt(3).
* commit '0950f2633524dd97413b019858a0f3820307d2bb':
  Fix linkage of grantpt(3).
2014-07-29 18:09:11 +00:00
Elliott Hughes
3b3e9d67d5 am e9c1d673: am a7dc7600: Merge "Fix linkage of grantpt(3)."
* commit 'e9c1d673759a45df3aff144bfb51a4ac637427ec':
  Fix linkage of grantpt(3).
2014-07-29 17:56:21 +00:00
Brigid Smith
e5e62aa0a5 am 674e245c: am a09fe118: Added a bionic systrace class and tracing to pthread_mutex.cpp.
* commit '674e245cd42a22c33fa31dd9df1777fb76c5891d':
  Added a bionic systrace class and tracing to pthread_mutex.cpp.
2014-07-29 17:32:36 +00:00
Elliott Hughes
45e3d3e96c am 1b369540: am 52f8271f: Merge "Added a bionic systrace class and tracing to pthread_mutex.cpp."
* commit '1b36954017e3f4761627cf96b42fbe33bf3c280c':
  Added a bionic systrace class and tracing to pthread_mutex.cpp.
2014-07-29 16:50:19 +00:00
Dmitriy Ivanov
a0abc0daa7 am 46330ed4: am 24dcda0f: Merge "Fix mips/mips64 build"
* commit '46330ed4104a59a935d89d69bec66e1b908f1c08':
  Fix mips/mips64 build
2014-07-29 14:27:16 +00:00
Dmitriy Ivanov
72f8f35502 am fed22f73: am 1a5db57d: Fix mips/mips64 build
* commit 'fed22f73c1d83e07cf0781c23b2032131902c229':
  Fix mips/mips64 build
2014-07-29 13:33:19 +00:00
Dmitriy Ivanov
793ef05a52 am 4139020d: am 5febb0da: Fix \'adb shell /system/bin/linker\' crash
* commit '4139020da37574e0ed8ac5bb18a3ea6d58170be1':
  Fix 'adb shell /system/bin/linker' crash
2014-07-29 01:02:37 +00:00
Elliott Hughes
e56a2dbdbc am 3164805b: am 2be1be47: Revert "Add a hack to <stdlib.h> until we can fix libvpx."
* commit '3164805b2e075a515d99fd7e88bfbc70e1fada4c':
  Revert "Add a hack to <stdlib.h> until we can fix libvpx."
2014-07-28 23:55:02 +00:00
Dmitriy Ivanov
f98721d5b4 am 18358f0e: am 337c0cef: Merge "Fix \'adb shell /system/bin/linker\' crash"
* commit '18358f0e67d56e71ef098384b45767c1f4651f6d':
  Fix 'adb shell /system/bin/linker' crash
2014-07-28 23:48:51 +00:00
Elliott Hughes
7c963f4840 am 63b5e167: am 78e4f8fe: syscall(3)\'s return type should be long.
* commit '63b5e167ad9f76b7f4917deceac840f929c72934':
  syscall(3)'s return type should be long.
2014-07-28 23:36:02 +00:00
Elliott Hughes
52ed4cdfb9 am a032277b: am 8a2ecf86: Merge "syscall(3)\'s return type should be long."
* commit 'a032277bb40c0327ba5b6c7d7a8c1cb196acaf89':
  syscall(3)'s return type should be long.
2014-07-28 23:35:17 +00:00
Elliott Hughes
d7e6ed0feb am 36666a4d: am 8c66fd79: Merge "Use vsnprintf(3) in syslog(3)."
* commit '36666a4d51e49caf13a75bcfb447ed322a874d84':
  Use vsnprintf(3) in syslog(3).
2014-07-28 16:56:40 +00:00
Elliott Hughes
b38b3887c8 am d201486c: am b1b60c30: Use vsnprintf(3) in syslog(3).
* commit 'd201486cdb2ed28d4162270c01d85e5047555628':
  Use vsnprintf(3) in syslog(3).
2014-07-28 16:52:59 +00:00
Elliott Hughes
fbaedd30e6 am a09f2ebb: am c1a6a725: Remove localtime_tz and strftime_tz.
* commit 'a09f2ebb408e9d562aa41cbe9b8f50e6f0d0a6bd':
  Remove localtime_tz and strftime_tz.
2014-07-26 00:40:05 +00:00
Elliott Hughes
5f7597d5a3 am e7e5e37c: am 1a918d9b: Merge "Remove localtime_tz and strftime_tz."
* commit 'e7e5e37ca47125bb95905e708588159431798f3c':
  Remove localtime_tz and strftime_tz.
2014-07-25 23:29:28 +00:00
Elliott Hughes
05caeb1d11 am d76f4a9b: am 708c1120: Start hiding "private/bionic_time.h".
* commit 'd76f4a9b6fa3542fb8b9dc406f4bc5b4e3166675':
  Start hiding "private/bionic_time.h".
2014-07-25 23:08:45 +00:00
Elliott Hughes
cdb6a40f8f am 4b4ee2fc: am 50a9630c: Merge "Start hiding "private/bionic_time.h"."
* commit '4b4ee2fc1bdfde285392a68c2facf9f16bb92f14':
  Start hiding "private/bionic_time.h".
2014-07-25 22:27:35 +00:00
Dan Albert
8522cc62e8 am 779fdd7c: am a4c14fda: Merge "en_US.UTF-8 is also supported."
* commit '779fdd7c0d6b85c733c2c0c562e8174828cf9fca':
  en_US.UTF-8 is also supported.
2014-07-25 19:18:16 +00:00
Elliott Hughes
ad922e7d03 am f4fd7cf1: am 123172ae: Merge "[MIPS] Fix atomic_is_lock_free test for mips32. On 32-bit MIPS, 64-bit atomic ops are achieved through locks. So allow the test to fail for atomic_intmax_t on 32-bit MIPS."
* commit 'f4fd7cf1380b0cbd29806196959673802f1c769a':
  [MIPS] Fix atomic_is_lock_free test for mips32. On 32-bit MIPS, 64-bit atomic ops are achieved through locks. So allow the test to fail for atomic_intmax_t on 32-bit MIPS.
2014-07-25 02:19:29 +00:00
Dmitriy Ivanov
95f3983e1d am ceaec0d9: am dbf52ec3: Merge "Fix global variable initialization for linker"
* commit 'ceaec0d95ccff34ea2c2403528f7678f4a5b5355':
  Fix global variable initialization for linker
2014-07-25 02:19:28 +00:00
Elliott Hughes
11c5dd17ab am e7b2b02d: am d6f614a4: Merge "Implement twalk(3), add unit tests."
* commit 'e7b2b02dec81271938e29aae09901ca37d2c3a12':
  Implement twalk(3), add unit tests.
2014-07-25 02:19:28 +00:00
Dmitriy Ivanov
cae44d4f8f am a9b2185b: am 65549969: Fix global variable initialization for linker
* commit 'a9b2185bc4ece0fcf0c360b39b5643497aabf26a':
  Fix global variable initialization for linker
2014-07-25 00:05:20 +00:00
Raghu Gandham
b8e30d7320 am 56152a8b: am 34b258dd: [MIPS] Fix atomic_is_lock_free test for mips32. On 32-bit MIPS, 64-bit atomic ops are achieved through locks. So allow the test to fail for atomic_intmax_t on 32-bit MIPS.
* commit '56152a8b81bd5972391df562e4e3cd8a4cdda613':
  [MIPS] Fix atomic_is_lock_free test for mips32. On 32-bit MIPS, 64-bit atomic ops are achieved through locks. So allow the test to fail for atomic_intmax_t on 32-bit MIPS.
2014-07-24 23:59:35 +00:00
Elliott Hughes
29b1858f9c am d00b2327: am b902641d: Implement twalk(3), add unit tests.
* commit 'd00b2327c50ae6c22a565813d6fa385a9cce3ec5':
  Implement twalk(3), add unit tests.
2014-07-24 23:47:02 +00:00
Duane Sand
706654d3c1 am eb1fbf17: am 5ade7e3f: [MIPS] Drop soft-fp targets
* commit 'eb1fbf1781119ef12b257bfe1254032a7f487c31':
  [MIPS] Drop soft-fp targets
2014-07-24 23:47:02 +00:00
Duane Sand
d57a935c44 am 3a11c10a: am c86950cb: [MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models
* commit '3a11c10ad6f6f8fc6cf1031c9862ab5275b5a27e':
  [MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models
2014-07-24 19:57:08 +00:00
Christopher Ferris
3c58853a7d am efbb837d: am bc74ecfa: HACK: Disable syslog going to android log.
* commit 'efbb837dc42c8df3a4a94e5a9aeac1a72aba4e47':
  HACK: Disable syslog going to android log.
2014-07-24 19:57:07 +00:00
Nick Kralevich
c10499eaba am 9a2778a3: am 92d8b232: debuggerd: if PR_GET_DUMPABLE=0, don\'t ask for dumping
* commit '9a2778a3a60a59aae415acdfbfa9168651ce8292':
  debuggerd: if PR_GET_DUMPABLE=0, don't ask for dumping
2014-07-24 19:57:07 +00:00
Colin Cross
174fcc628f am abca8709: am 49fbec6d: HACK: remove %m support from printf.
* commit 'abca8709895d5a67fb8acdfbc5e859463099f1f0':
  HACK: remove %m support from printf.
2014-07-24 19:26:52 +00:00
Elliott Hughes
4298c7ab41 am c6f39339: am 8dbe3f0f: Merge "[MIPS] Drop soft-fp targets"
* commit 'c6f39339de4ef6da583bc078a4d5f73da8dac8f2':
  [MIPS] Drop soft-fp targets
2014-07-24 18:36:19 +00:00
Elliott Hughes
1289ef8743 am 0caa27b1: am 7d22a451: Merge "[MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models"
* commit '0caa27b148ea15b1292d4ace1f4a14fe79e8d953':
  [MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models
2014-07-24 04:07:00 +00:00
Nick Kralevich
cd438324f7 am 3363e16a: am f9650757: Merge "debuggerd: if PR_GET_DUMPABLE=0, don\'t ask for dumping"
* commit '3363e16ac93c444d06988702122481bf33e8d33a':
  debuggerd: if PR_GET_DUMPABLE=0, don't ask for dumping
2014-07-23 23:13:15 +00:00
Nick Kralevich
1c5bb20b0d debuggerd: if PR_GET_DUMPABLE=0, don't ask for dumping
PR_GET_DUMPABLE is used by an application to indicate whether or
not core dumps / PTRACE_ATTACH should work.

Security sensitive applications often set PR_SET_DUMPABLE to 0 to
disable core dumps, to avoid leaking sensitive memory to persistent
storage. Similarly, they also set PR_SET_DUMPABLE to zero to prevent
PTRACE_ATTACH from working, again to avoid leaking the contents
of sensitive memory.

Honor PR_GET_DUMPABLE when connecting to debuggerd. If an application
has said it doesn't want its memory dumped, then we shouldn't
ask debuggerd to dump memory on its behalf.

FORTIFY_SOURCE tests: Modify the fortify_source tests to set
PR_SET_DUMPABLE=0. This reduces the total runtime of
/data/nativetest/bionic-unit-tests/bionic-unit-tests32 from approx
53 seconds to 25 seconds. There's no need to connect to debuggerd
when running these tests.

Bug: 16513137

(cherry picked from commit be0e43b776)

Change-Id: I1e2af2300db56e6c8e6f304a666e66f6904c2be6
2014-07-23 15:57:39 -07:00
Elliott Hughes
c39ab91dfe am aa8672cb: am 4126c129: Fix belated review comments on syslog change.
* commit 'aa8672cb6ddddaa88025f38ad5fe77f0891a219d':
  Fix belated review comments on syslog change.
2014-07-23 20:24:42 +00:00
Elliott Hughes
e5e120b214 am 0200a285: am f9bfc2ff: Merge "Fix belated review comments on syslog change."
* commit '0200a28583670ce4e20e4c4f7e6f2e358d48ba2a':
  Fix belated review comments on syslog change.
2014-07-23 20:24:41 +00:00
Elliott Hughes
06a416c202 am 5e1183c2: am 467e49be: Merge "Fix generate-NOTICE to cope better with BSD __COPYRIGHT macros."
* commit '5e1183c2169b8b56d6330182886d711c5ec2366f':
  Fix generate-NOTICE to cope better with BSD __COPYRIGHT macros.
2014-07-23 19:08:25 +00:00
Elliott Hughes
508dd2e67b am e34ce374: am 2aa142ff: Fix generate-NOTICE to cope better with BSD __COPYRIGHT macros.
* commit 'e34ce3741f88d53ef1400548e4e8702cbe73fa23':
  Fix generate-NOTICE to cope better with BSD __COPYRIGHT macros.
2014-07-23 18:45:38 +00:00
Elliott Hughes
ade1be3e6a am 66544dd1: am 4ac83fad: Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files.
* commit '66544dd13674fc0a1d9af48816797c1c762a4382':
  Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files.
2014-07-23 16:58:39 +00:00
Elliott Hughes
656fde84a0 am 5cd06abd: am ea42a6ca: Merge "Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files."
* commit '5cd06abdcf8980b22bc7ca803ed6c4b2c06b00c5':
  Fix a couple of bugs in generate-NOTICE and regenerate the NOTICE files.
2014-07-23 16:49:25 +00:00
Elliott Hughes
f6c8d26680 am be0ee5a6: am 3ff6d95a: Remove the unused swab.S.
* commit 'be0ee5a62600b98533b0c072f61ab1470ab4a843':
  Remove the unused swab.S.
2014-07-23 03:56:31 +00:00
Elliott Hughes
5017fbda4e am ad87093f: am e26ac7f7: Merge "Remove the unused swab.S."
* commit 'ad87093f04f567573afa3bcdbc6a5f967e86834f':
  Remove the unused swab.S.
2014-07-23 03:37:56 +00:00
Duane Sand
439910983e am f6ab6bfe: am 5d7775c6: [MIPS] Allow united mipsel and mips64el gcc toolchain
* commit 'f6ab6bfeb0ee36ac30421d203b750f80627d21ee':
  [MIPS] Allow united mipsel and mips64el gcc toolchain
2014-07-23 02:53:41 +00:00
Elliott Hughes
98a685f5fd am b5031b5d: am 79b5a396: Merge "[MIPS] Allow united mipsel and mips64el gcc toolchain"
* commit 'b5031b5d6b207484f2cf831d4dd46c17da055044':
  [MIPS] Allow united mipsel and mips64el gcc toolchain
2014-07-23 02:50:08 +00:00
Sreeram Ramachandran
3a14439b6b am 1a1d0b7a: am 2582f02a: Cleanup: Delete dead code.
* commit '1a1d0b7abff01ed8d731e3590720c611a1db2daa':
  Cleanup: Delete dead code.
2014-07-23 00:13:13 +00:00
Elliott Hughes
3dde5101c4 am f6771114: am 6209c81d: Use upstream OpenBSD\'s arc4random.
* commit 'f6771114dddb8ec5802dbfdc13cc81e7c6f91d59':
  Use upstream OpenBSD's arc4random.
2014-07-22 02:35:52 +00:00
Elliott Hughes
f6b20f4156 am e41d7b4e: am b7661362: Rewrite syslog(3) to use Android logging.
* commit 'e41d7b4e83418b73a18416f7a50a5dd842ac65b5':
  Rewrite syslog(3) to use Android logging.
2014-07-22 02:35:51 +00:00
Elliott Hughes
72602a4682 am 55383d57: am 4d421901: Merge "Use upstream OpenBSD\'s arc4random."
* commit '55383d57d4b1507391923bbd59bf063a6eca7f7e':
  Use upstream OpenBSD's arc4random.
2014-07-22 02:12:22 +00:00
Elliott Hughes
91f1b3998f am 85287b29: am 925d388e: Merge "Rewrite syslog(3) to use Android logging."
* commit '85287b29eaeeefa46cac16cdc97551422f7449a2':
  Rewrite syslog(3) to use Android logging.
2014-07-22 01:58:50 +00:00
Dan Albert
3ce32b86ff am 607458ff: am b828eaeb: Merge "There is no _MIN for unsigned types."
* commit '607458ffe1cf8486116f3cb23c667785a8cdc2eb':
  There is no _MIN for unsigned types.
2014-07-22 00:50:55 +00:00
Dan Albert
b61f7f8316 am e226b640: am 1fb90a8a: Merge "Fix mbsrtowcs(3)\'s handling of len parameter."
* commit 'e226b64061207358f5489bc5c119e768d5761b99':
  Fix mbsrtowcs(3)'s handling of len parameter.
2014-07-21 19:24:46 +00:00
Dan Albert
96a820327f am 75fcd01a: am e9731387: Merge "__libc_fatal should print a newline to stderr."
* commit '75fcd01a6ecdee67f55751557ebceb0f31a73682':
  __libc_fatal should print a newline to stderr.
2014-07-21 19:24:27 +00:00
Hans Boehm
3033608b86 am 50f2de91: am ed68221a: Define atomic_charN_t only if charN_t is supported.
* commit '50f2de914f24c0bb38a51ab7759698d11b38a9ad':
  Define atomic_charN_t only if charN_t is supported.
2014-07-21 18:27:40 +00:00
Christopher Ferris
41370acfef am b290796f: am b0815aea: Make sure not to construct illegal property names.
* commit 'b290796ff99151cd13f9d480cc186ceae4713c9f':
  Make sure not to construct illegal property names.
2014-07-21 18:27:40 +00:00
Elliott Hughes
2e138c41d9 am ebb47455: am fbd00819: Merge "Clean up some misinformation around prctl." into lmp-dev
* commit 'ebb474553165cf72c1b3908755aeb3b690f40ad8':
  Clean up some misinformation around prctl.
2014-07-21 18:27:39 +00:00
Christopher Ferris
44d1b00305 am 2affffac: am a6945179: Merge "Add gen syscalls step to instructions." into lmp-dev
* commit '2affffac74eac349b0981cfe8fd65743835896f5':
  Add gen syscalls step to instructions.
2014-07-21 18:27:38 +00:00
Elliott Hughes
065d312a53 am 4aa12034: am 291da8d3: Remove SIOCKILLADDR from <sys/socket.h>.
* commit '4aa120347435481cf439e0378ef12a60b546d2a8':
  Remove SIOCKILLADDR from <sys/socket.h>.
2014-07-21 18:27:38 +00:00
Elliott Hughes
a0d633c2f7 am 6f9e6124: am b5bef263: (-s ours) Remove PR_SET_TIMERSLACK_PID from <sys/prctl.h>.
* commit '6f9e612413a281d69c8d2dbbe00442d75a1f5abb':
  Remove PR_SET_TIMERSLACK_PID from <sys/prctl.h>.
2014-07-21 18:27:37 +00:00
Elliott Hughes
beb24d0dd6 am 841c633f: resolved conflicts for merge of b5bef263 to lmp-dev-plus-aosp
* commit '841c633fa13ba8d48563fbda247e75bab3bd6f49':
  resolved conflicts for merge of b5bef263 to lmp-dev-plus-aosp
2014-07-21 18:21:55 +00:00
Christopher Ferris
451b910deb am bdfb313c: am e8bc5813: Use the mmap/munmap for allocation routines.
* commit 'bdfb313cf1cefd4ffaa59c6aea20a49608a73a52':
  Use the mmap/munmap for allocation routines.
2014-07-21 18:21:35 +00:00
Elliott Hughes
8831e40b19 am 2199ac31: am 7dd126a3: Merge "Clean up some misinformation around prctl."
* commit '2199ac3113d2fa35ff400788aa3d68c0123aacfb':
  Clean up some misinformation around prctl.
2014-07-18 23:39:40 +00:00
Christopher Ferris
cf622c1c22 am 3a23030d: am 3c2b71ad: Merge "Use the mmap/munmap for allocation routines."
* commit '3a23030ded42a7ee7a0b3ed2543e8758a6bcfc9a':
  Use the mmap/munmap for allocation routines.
2014-07-18 22:21:29 +00:00
Elliott Hughes
96674169e0 am c6e9b8ce: am b4669685: Fix private/bionic_name_mem.h build breakage.
* commit 'c6e9b8cebfc0d3faff5ea986a6fc9bbc11413b37':
  Fix private/bionic_name_mem.h build breakage.
2014-07-18 02:57:51 +00:00
Elliott Hughes
a9fdbb819f am 1b77f3f7: resolved conflicts for merge of d648f557 to lmp-dev-plus-aosp
* commit '1b77f3f7417598414694eb29e17a4873a38a1d18':
  Remove non-standard prctl constants from <sys/prctl.h>.
2014-07-18 00:42:52 +00:00
Elliott Hughes
3d96532171 am 6e47ddab: am d18b87f3: Merge "Remove SIOCKILLADDR from <sys/socket.h>."
* commit '6e47ddab72841c165b538de198c5858409fb6349':
  Remove SIOCKILLADDR from <sys/socket.h>.
2014-07-18 00:30:05 +00:00
Elliott Hughes
96eef2388e am 1a04da87: am 76282482: Merge "Remove PR_SET_TIMERSLACK_PID from <sys/prctl.h>."
* commit '1a04da875064d81829c3ea1b3e8096e2b721cd10':
  Remove PR_SET_TIMERSLACK_PID from <sys/prctl.h>.
2014-07-18 00:30:04 +00:00
Elliott Hughes
bb74030901 am d377833d: am 6bf42ddc: Merge "Fix private/bionic_name_mem.h build breakage."
* commit 'd377833de61664b57f656aa0111b7a4b166b1df8':
  Fix private/bionic_name_mem.h build breakage.
2014-07-17 22:20:56 +00:00
Elliott Hughes
c616d304e9 am fdd64140: am 169e2bf6: Merge "Remove non-standard prctl constants from <sys/prctl.h>."
* commit 'fdd64140933bedbefc8633a28bc9478ea954f81a':
  Remove non-standard prctl constants from <sys/prctl.h>.
2014-07-17 22:01:13 +00:00
Elliott Hughes
2651277e77 am 9633cc3e: am 9a7fdb2d: ptrace(3) should be varargs.
* commit '9633cc3ee9501550463d53929a05829e2824a476':
2014-07-17 18:31:08 +00:00
Elliott Hughes
19391d796c am 2492a8e3: am 3002131d: Use VDSO for clock_gettime(2) and gettimeofday(2).
* commit '2492a8e364e5cc8c606458ffdceda8cdc9d34bcc':
2014-07-17 18:31:07 +00:00
Elliott Hughes
db71f00794 am 9a7fdb2d: ptrace(3) should be varargs.
* commit '9a7fdb2dae8f0ae0f9c5b0596bb2710f782925aa':
  ptrace(3) should be varargs.
2014-07-17 18:18:01 +00:00
Elliott Hughes
0cf2d4902a am 3002131d: Use VDSO for clock_gettime(2) and gettimeofday(2).
* commit '3002131da33401cf1b45abbdbec58b7c751fc43a':
  Use VDSO for clock_gettime(2) and gettimeofday(2).
2014-07-17 18:16:35 +00:00
Hans Boehm
a0582bfae6 am ec76a21f: am 43363ab7: Merge "Define atomic_charN_t only if charN_t is supported."
* commit 'ec76a21f27a3727f31c96bcaa27a820765471125':
  Define atomic_charN_t only if charN_t is supported.
2014-07-17 13:45:07 +00:00
Elliott Hughes
e569ff8fbf am 51b9d5ba: am 94f84d36: Merge "ptrace(3) should be varargs."
* commit '51b9d5bad9f011ad509f46622f1a341edf80ad34':
  ptrace(3) should be varargs.
2014-07-17 13:44:35 +00:00
Elliott Hughes
6777948bf2 am 379b1580: am f13aa6fc: Merge "Use VDSO for clock_gettime(2) and gettimeofday(2)."
* commit '379b1580dcad69360f83a6c70c5adc83e483c36b':
  Use VDSO for clock_gettime(2) and gettimeofday(2).
2014-07-17 13:43:35 +00:00
Dan Albert
0b0494c01f am 6526098e: am a4465058: Merge "Remove isascii_l(3)." into lmp-dev
* commit '6526098e710364f3ea9266de1a4a9b675b23bd9a':
  Remove isascii_l(3).
2014-07-16 16:08:25 +00:00
Elliott Hughes
eb2ab29c32 am 775056ff: am 97ba2a5c: Regenerate the syscalls list after the uapi update.
* commit '775056ff71b9ae06db13dffc150d4d1162e775ab':
  Regenerate the syscalls list after the uapi update.
2014-07-16 03:08:38 +00:00
Christopher Ferris
94c30175e3 am 04e7056d: am 770d0f61: Merge "Make sure not to construct illegal property names."
* commit '04e7056d06a7098827dcc7060c5d827b1a8afab4':
  Make sure not to construct illegal property names.
2014-07-16 03:00:34 +00:00
Christopher Ferris
20d08f57f6 am f64411e7: am 64035c4a: Merge "Add gen syscalls step to instructions."
* commit 'f64411e7a8479f0e4968d9aa1ea5b7c95334ec6e':
  Add gen syscalls step to instructions.
2014-07-16 03:00:34 +00:00
Elliott Hughes
47840c305f am 99c8508a: am 52023cb7: Merge "Regenerate the syscalls list after the uapi update."
* commit '99c8508a6e1fefbb19e11af4bdde16f353a61615':
  Regenerate the syscalls list after the uapi update.
2014-07-16 03:00:33 +00:00
Christopher Ferris
09bbeac80c am 76dd4a79: am 51c914b7: Merge "Fix BIONIC_ROUND_UP_POWER_OF_2 for 64 bit."
* commit '76dd4a7911d2b00262d4b60c2828de48818e3226':
  Fix BIONIC_ROUND_UP_POWER_OF_2 for 64 bit.
2014-07-16 03:00:33 +00:00
Christopher Ferris
1c050aa140 am cdf48775: am 73c963e4: Fix BIONIC_ROUND_UP_POWER_OF_2 for 64 bit.
* commit 'cdf48775d4aaa441d833a85441d67ff990d9897e':
  Fix BIONIC_ROUND_UP_POWER_OF_2 for 64 bit.
2014-07-15 22:22:27 +00:00
Elliott Hughes
cea72c11e1 am c80cb8e3: am ca276c40: Fix visibility for a bunch more symbols.
* commit 'c80cb8e3ca36aa0d41f6a58559450aac73b5b565':
  Fix visibility for a bunch more symbols.
2014-07-15 02:35:42 +00:00
Dan Albert
bfd4849e4f am 84491f5b: am 5656a0c4: Merge "Remove isascii_l(3)."
* commit '84491f5b0620386645beb5acf88f873a32179c35':
  Remove isascii_l(3).
2014-07-15 00:34:02 +00:00
Elliott Hughes
209422c44f am 1d31b554: am ee3608f9: Merge "Fix visibility for a bunch more symbols."
* commit '1d31b55443c534187ea726e7292dbd308f263d95':
  Fix visibility for a bunch more symbols.
2014-07-14 23:29:34 +00:00
Elliott Hughes
dc5f392158 am 07198cbf: am 99ae0983: Implement rand/srand in terms of random/srandom.
* commit '07198cbf1676665acd2144a5f9ebc71d7e31aebe':
  Implement rand/srand in terms of random/srandom.
2014-07-14 23:29:29 +00:00
Elliott Hughes
c241ad0688 am 0a79e279: am caaf71eb: Sync upstream-openbsd.
* commit '0a79e2798e4d2b05ca32a7912df274c461e96b2b':
  Sync upstream-openbsd.
2014-07-14 23:29:29 +00:00
Dmitriy Ivanov
a41e7e9492 am db3b2995: resolved conflicts for merge of 38778e3b to lmp-dev-plus-aosp
* commit 'db3b29958dbfe23489cc4fa66d42cd95d441391c':
  Upstream atexit
2014-07-14 23:29:28 +00:00
Elliott Hughes
df9777c3b9 am ac56fc86: am 673bff01: Merge "Implement rand/srand in terms of random/srandom."
* commit 'ac56fc8663a01c3cad6fcacab8d2958f20bc047a':
  Implement rand/srand in terms of random/srandom.
2014-07-14 20:14:06 +00:00
Brian Carlstrom
3c5a701f94 am 6835f586: Merge branch \'lmp-dev-plus-aosp\' of https://googleplex-android.googlesource.com/_direct/platform/bionic into lmp-dev-plus-aosp
* commit '6835f5864d56cf6ee10da027c2ca013423a01bb1':
  Upstream atexit
  Sync upstream-openbsd.
2014-07-14 19:29:50 +00:00
Elliott Hughes
93235cabfb am 49e34298: am 3b318a5b: am e2b177a5: am 83ce99d8: Merge "Define SIOCKILLADDR which isn\'t in the common kernel uapi headers."
* commit '49e34298e62eec01eb6ae777a62b421db45adc36':
2014-07-14 19:29:49 +00:00
Elliott Hughes
40c1838322 am 646e7eb4: am f6968e3c: Define SIOCKILLADDR which isn\'t in the common kernel uapi headers.
* commit '646e7eb4bd0b834eeeddcbd1b4b976f849b7ce77':
2014-07-14 19:29:49 +00:00
Elliott Hughes
4cb78fe675 am 5ddb411c: am bae7c206: am b962ab81: am 57a5b338: Merge "Define three prctl constants that went missing from uapi."
* commit '5ddb411c174ee2402b5445bf73db25f1c7fa33f5':
2014-07-14 19:29:48 +00:00
Elliott Hughes
be69279338 am 29ba6754: am f65d552b: am 0594b9dd: am b8e82b5e: Merge "EM_ARM and EM_AARCH64 are now in the uapi header."
* commit '29ba6754e5370b46adad73cc949f507cdb85fd38':
2014-07-14 19:29:45 +00:00
Christopher Ferris
68b180812e am 8edb50a7: am 8832cfb2: am efdf7862: am 385bb1ed: Merge "Add optimized memchr implementation from newlib"
* commit '8edb50a7ce1e16618983179692169ed9a4c83f34':
2014-07-14 19:29:44 +00:00
Christopher Ferris
c03b5b0c87 am 99ad4f90: am d92a6d06: am 55230dd0: am 96502e27: Merge "Make jemalloc the default choice."
* commit '99ad4f9028e62d268190a7b81365153a9a82a868':
2014-07-14 19:29:43 +00:00
Christopher Ferris
a3f8b0b3df am f0fe22cd: am d389809d: am 18a25078: am c6bc0017: Merge "Update kernel headers to v3.14."
* commit 'f0fe22cd13d6e6650f50453d502d64a67ee35a0f':
2014-07-14 19:29:42 +00:00
Elliott Hughes
3df82ef283 am 1edd9758: am 9c98443e: am ce1422b9: am 040e1187: Merge "Enable building libc with clang."
* commit '1edd97580f74ba11f13f383aa70e4b47d163d600':
2014-07-14 19:29:42 +00:00
Dan Albert
9e962e499c am 42eed01a: am 405fd491: am c0afc23e: am 37f09d6d: Merge "Revert "Revert "Add locale aware APIs."""
* commit '42eed01a1f079515ddc64fbd7d1d77d6de576db6':
2014-07-14 19:29:39 +00:00
Elliott Hughes
0310e5d912 am a7d2f57d: am 210a8423: am d19f2d85: am 76df69d1: Merge "The err family allow null format strings."
* commit 'a7d2f57d614dbf6be3308f5d476bae1e29551db4':
2014-07-14 19:29:37 +00:00
Elliott Hughes
a34620eb55 am bad533b4: am d54994a4: am 696c48df: am eba7c15b: Merge "Revert "Switch libm to building with clang.""
* commit 'bad533b465be292c5c609a5edd336bf00ca359e6':
2014-07-14 19:29:36 +00:00
Elliott Hughes
d4a1d6e229 am 84ae9f67: am 2545bf7b: am 37ab54fd: am 5df23dc8: Merge "Switch libm to building with clang."
* commit '84ae9f673bf96c87b54978db396cc5cb7a9e6266':
2014-07-14 19:29:36 +00:00
Elliott Hughes
5cc91d1f54 am 387d52ea: am 3ea96e7b: am 35805377: am 9b491470: Merge "Slim down static binaries by avoiding stdio."
* commit '387d52ea4bdab7c90061d5828f0208a16214fa74':
2014-07-14 19:29:35 +00:00
Elliott Hughes
a102132057 am 32a93da1: am a9e847fd: am 7d9f1cc5: am f0f8cd1f: Merge "Remove the global lock around thread stack creation."
* commit '32a93da106d58ba9329c3f040063c334574e315c':
2014-07-14 19:29:35 +00:00
Elliott Hughes
7eb1cbc6e5 am e6153565: am b2ddd728: am 12ce9115: am cd23370c: Merge "Remove the obsolete _thread_created_hook."
* commit 'e6153565adce260251d8bf0b285abea053c2da8f':
2014-07-14 19:29:34 +00:00
Calin Juravle
3cfac9fe42 am 8ebfc51e: am 9899217a: am 9712d913: am 02459d34: Merge "Move __cmsg_nxthdr to its proper file."
* commit '8ebfc51ee226d7d5ebcb5f34b579a2391589127d':
2014-07-14 19:29:33 +00:00
Calin Juravle
943f25c072 am cd1093fa: am b89ef57d: am cd061f6e: am 8a71a745: Merge "Removed obsolete symbol cmsg_nxthdr."
* commit 'cd1093fab5e24e02214f49de8b37aeace8e48330':
2014-07-14 19:29:32 +00:00
Christopher Ferris
464972fc6e am d0e94fa5: am a35ae1bc: am 4306b0f8: am 25fba981: Merge "Do not include libc_common in malloc debug code."
* commit 'd0e94fa58d775d6980ab6dc7c4cd70de0f16f10c':
2014-07-14 19:29:31 +00:00
Elliott Hughes
6144d69275 am 699cecdd: am 4c28373d: am 96d7251c: am d028b620: Merge "Added a __system_property_serial benchmark."
* commit '699cecdd2ec27a37a1edfc42556e3f9877ae3055':
2014-07-14 19:29:30 +00:00
Elliott Hughes
72085c59a0 am fffca5a9: am 4f459ec6: am 1cad0226: am 84f0c7c2: Merge "update-tzdata.py needs to know where to find icu."
* commit 'fffca5a9f7d3f4fea4e4d88ba8a15d1810239d33':
2014-07-14 19:29:29 +00:00
Dan Albert
b231d97436 am 2f96faad: am d0a7157c: am ea04b5a6: am 7a85d9a1: Merge "Revert "Add locale aware APIs.""
* commit '2f96faadec2dbd3f8a30466de413629e860cdf0a':
2014-07-14 19:29:28 +00:00
Dan Albert
87abe8a43c am 12810d6d: am 1e46158e: am f6b95993: am 430d5f93: Merge "Add locale aware APIs."
* commit '12810d6d6116049aa68fd9c0c16ec0f408933ac0':
2014-07-14 19:29:27 +00:00
Elliott Hughes
4e67f9c453 am df17c1f2: am 67ee7b9d: am 94560b5b: am 4c199170: Merge "Added __system_propery_read benchmark."
* commit 'df17c1f20bb366e59f75869a3396ca8cedd850de':
2014-07-14 19:29:26 +00:00
Elliott Hughes
e9db4fa091 am 26734a7d: am c346c606: am 8d11fb18: am 3139f6fd: Merge "Remove __CTOR_LIST__ from mips/mips64."
* commit '26734a7dd7628f59c70dcad8d732420c92ff6be1':
2014-07-14 19:29:24 +00:00
Elliott Hughes
b6bc601165 am 602492a6: am 53641001: am 986fb565: am c4c67893: Merge "Don\'t zero r1 on entry to the dynamic linker."
* commit '602492a682f1d7fe21f34b1ff7c08942de0fefa4':
2014-07-14 19:29:23 +00:00
Ying Wang
b1be9d8b5c am af47a46d: am 4fae7675: am 6ee2f321: am 6cdd0cfd: Merge "TARGET_OUT_DATA_NATIVE_TESTS now points to /nativetest64 in 64-bit target"
* commit 'af47a46d38d3b5571944e70ed9ea0a0816dd4685':
2014-07-14 19:29:22 +00:00
Dmitriy Ivanov
be0162e1d7 am 3dd6e3d8: am e245060c: am ab164750: am 3c12ae56: Merge "Add test for constructor function."
* commit '3dd6e3d880077ee2632fb055ef17339558a61c03':
2014-07-14 19:29:21 +00:00
Dmitriy Ivanov
9afe125fdb am 065abed9: am 30e596e9: am ca673e73: am b9c5d606: am 006e0770: Merge "Change android_dlextinfo flags to uint64_t"
* commit '065abed9a580e8ad23bd6cbd5721ea1d70474828':
2014-07-14 19:29:20 +00:00
Elliott Hughes
21c8f41d3f am 0ec257dc: am a3eead96: am 7e43f0d4: resolved conflicts for merge of aedc14b1 to lmp-dev
* commit '0ec257dc20ceadde049296246c78b99f02625412':
2014-07-14 19:29:18 +00:00
Calin Juravle
48766828da am 37eca3d3: am 3b0f3112: am f11e7c74: am 02459d34: Merge "Move __cmsg_nxthdr to its proper file."
* commit '37eca3d325de93ce95e0f85c53aab508c18b306d':
2014-07-14 19:29:17 +00:00
Calin Juravle
a7be72e7a2 am b94d0294: am e8ce76c2: am 1d63dd90: am 8a71a745: Merge "Removed obsolete symbol cmsg_nxthdr."
* commit 'b94d0294037a37b60ba2bd403f12c1c7c28efbaa':
2014-07-14 19:29:16 +00:00
Christopher Ferris
450f9a4b83 am c743b189: am 0f8d5a06: am c04e73a6: am 25fba981: Merge "Do not include libc_common in malloc debug code."
* commit 'c743b18961b46b82e5a4770d67071aeeee8753bf':
2014-07-14 19:29:15 +00:00
Elliott Hughes
6bf66f8ce7 am 5252514d: am 05916dda: am cf53885b: am d028b620: Merge "Added a __system_property_serial benchmark."
* commit '5252514d65ee924d53ceafd14e0d566a477cf35a':
2014-07-14 19:29:14 +00:00
Elliott Hughes
04b7898f17 am e4a1004d: am 42775b51: am feccec68: am 84f0c7c2: Merge "update-tzdata.py needs to know where to find icu."
* commit 'e4a1004d875465b39e7d557bdcc5bbfa8acefeda':
2014-07-14 19:29:13 +00:00
Dan Albert
b24b709ea2 am 5b41373d: am 293006c9: am 418fdef2: am 7a85d9a1: Merge "Revert "Add locale aware APIs.""
* commit '5b41373d499b7ab2b72ad5235c5d1a3c06f236b2':
2014-07-14 19:29:11 +00:00
Dan Albert
79465f3d25 am a0ce997e: am 16dd7fd5: am 43e79dab: am 430d5f93: Merge "Add locale aware APIs."
* commit 'a0ce997e1bf7a1074ce78b1ff8cf6acfa59ca2f3':
2014-07-14 19:29:10 +00:00
Elliott Hughes
3cdcfc82eb am 6c804ab1: am e2bcc8bb: am 748d8708: am 4c199170: Merge "Added __system_propery_read benchmark."
* commit '6c804ab1ea8ed48ba9ec78c443f2c7815fa830a0':
2014-07-14 19:29:09 +00:00
Elliott Hughes
129820c8d6 am 7ad8adbe: am 48ad92a4: am 742fce7b: am 3139f6fd: Merge "Remove __CTOR_LIST__ from mips/mips64."
* commit '7ad8adbe51280128ddcad7849f36d091fb05dda1':
2014-07-14 19:29:08 +00:00
Elliott Hughes
845d50ba81 am f7fe0779: am dc0b68e5: am b9d95b5d: am c4c67893: Merge "Don\'t zero r1 on entry to the dynamic linker."
* commit 'f7fe0779027ce54b6936f8210bc867707c969f38':
2014-07-14 19:29:06 +00:00
Ying Wang
8e8d019b5c am de78c2c4: am 76171b2d: am 02406f68: am 6cdd0cfd: Merge "TARGET_OUT_DATA_NATIVE_TESTS now points to /nativetest64 in 64-bit target"
* commit 'de78c2c45181e8a1b16e70c87be981af9c76a092':
2014-07-14 19:29:05 +00:00
Dmitriy Ivanov
fd2fd4398e am 994faff2: am 4e37e7b1: am b9247ada: am 3c12ae56: Merge "Add test for constructor function."
* commit '994faff20941661a557e3a9339768fa8e2ecf21d':
2014-07-14 19:29:04 +00:00
Dmitriy Ivanov
ff181ce7ac am 49b59013: am 4c632335: am b9c5d606: am 006e0770: Merge "Change android_dlextinfo flags to uint64_t"
* commit '49b590136a7269902179bf61258709d2bb6d5611':
2014-07-14 19:29:03 +00:00
Elliott Hughes
d7c9ad906b am f40424d3: am ddf9066e: resolved conflicts for merge of aedc14b1 to master
* commit 'f40424d38fbe540c1a04a27f7ad1c7a89826fd1c':
2014-07-14 19:29:02 +00:00
1374 changed files with 294110 additions and 44120 deletions

View File

@@ -1,12 +0,0 @@
KNOWN ABI BUGS
--------------
time_t is 32-bit. http://b/5819737
off_t is 32-bit. There is off64_t, but no _FILE_OFFSET_BITS support.
sigset_t is too small on ARM and x86 (but correct on MIPS), so support
for real-time signals is broken. http://b/5828899
atexit(3) handlers registered by a shared library aren't called on
dlclose(3); this only affects ARM. http://b/4998315

2
CPPLINT.cfg Normal file
View File

@@ -0,0 +1,2 @@
set noparent
filter=-build/header_guard,-runtime/int,-readability/function

View File

@@ -208,19 +208,17 @@ The tests are all built from the tests/ directory.
The host tests require that you have `lunch`ed either an x86 or x86_64 target.
$ mma
# 64-bit tests for 64-bit targets, 32-bit otherwise.
$ mm bionic-unit-tests-run-on-host
# Only exists for 64-bit targets.
$ mm bionic-unit-tests-run-on-host32
$ mm bionic-unit-tests-run-on-host64 # For 64-bit *targets* only.
### Against glibc
As a way to check that our tests do in fact test the correct behavior (and not
just the behavior we think is correct), it is possible to run the tests against
the host's glibc.
the host's glibc. The executables are already in your path.
$ mma
$ bionic-unit-tests-glibc32 # already in your path
$ bionic-unit-tests-glibc32
$ bionic-unit-tests-glibc64
@@ -256,3 +254,20 @@ First, build and run the host tests as usual (see above).
$ genhtml -o covreport coverage.info # or lcov --list coverage.info
The coverage report is now available at `covreport/index.html`.
LP32 ABI bugs
-------------
This probably belongs in the NDK documentation rather than here, but these
are the known ABI bugs in LP32:
* `time_t` is 32-bit. <http://b/5819737>
* `off_t` is 32-bit. There is `off64_t`, but no `_FILE_OFFSET_BITS` support.
Many of the `off64_t` functions are missing in older releases, and
stdio uses 32-bit offsets, so there's no way to fully implement
`_FILE_OFFSET_BITS`.
* `sigset_t` is too small on ARM and x86 (but correct on MIPS), so support
for real-time signals is broken. <http://b/5828899>

View File

@@ -14,24 +14,58 @@
# limitations under the License.
#
ifneq ($(BUILD_TINY_ANDROID), true)
LOCAL_PATH := $(call my-dir)
# -----------------------------------------------------------------------------
# Benchmarks library, usable by projects outside this directory.
# -----------------------------------------------------------------------------
benchmark_cflags := \
-O2 \
-fno-builtin \
-Wall \
-Wextra \
-Werror \
-Wunused \
benchmark_cppflags := \
-std=gnu++11 \
benchmarklib_src_files := \
Benchmark.cpp \
utils.cpp \
main.cpp \
include $(CLEAR_VARS)
LOCAL_MODULE := libbenchmark
LOCAL_CFLAGS := $(benchmark_cflags)
LOCAL_CPPFLAGS := $(benchmark_cppflags)
LOCAL_SRC_FILES := $(benchmarklib_src_files)
LOCAL_C_INCLUDES := $(benchmark_c_includes)
LOCAL_STATIC_LIBRARIES := libbase
include $(BUILD_STATIC_LIBRARY)
# Only supported on linux systems.
ifeq ($(HOST_OS),linux)
include $(CLEAR_VARS)
LOCAL_MODULE := libbenchmark
LOCAL_CFLAGS := $(benchmark_cflags)
LOCAL_CPPFLAGS := $(benchmark_cppflags)
LOCAL_SRC_FILES := $(benchmarklib_src_files)
LOCAL_C_INCLUDES := $(benchmark_c_includes)
LOCAL_MULTILIB := both
LOCAL_STATIC_LIBRARIES := libbase
include $(BUILD_HOST_STATIC_LIBRARY)
endif
# -----------------------------------------------------------------------------
# Benchmarks.
# -----------------------------------------------------------------------------
benchmark_c_flags = \
-O2 \
-Wall -Wextra -Wunused \
-Werror \
-fno-builtin \
-std=gnu++11 \
benchmark_src_files = \
benchmark_main.cpp \
benchmark_src_files := \
math_benchmark.cpp \
property_benchmark.cpp \
pthread_benchmark.cpp \
semaphore_benchmark.cpp \
stdio_benchmark.cpp \
@@ -47,10 +81,10 @@ LOCAL_MODULE := bionic-benchmarks
LOCAL_MODULE_STEM_32 := bionic-benchmarks32
LOCAL_MODULE_STEM_64 := bionic-benchmarks64
LOCAL_MULTILIB := both
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_CFLAGS += $(benchmark_c_flags)
LOCAL_SRC_FILES := $(benchmark_src_files) property_benchmark.cpp
LOCAL_CXX_STL := libc++
LOCAL_CFLAGS := $(benchmark_cflags)
LOCAL_CPPFLAGS := $(benchmark_cppflags)
LOCAL_SRC_FILES := $(benchmark_src_files)
LOCAL_STATIC_LIBRARIES := libbenchmark libbase
include $(BUILD_EXECUTABLE)
# We don't build a static benchmark executable because it's not usually
@@ -59,19 +93,24 @@ include $(BUILD_EXECUTABLE)
# performance of the old release's libc, and a static benchmark isn't
# going to let you do that.
# Only supported on linux systems.
ifeq ($(HOST_OS),linux)
# Build benchmarks for the host (against glibc!). Run with:
include $(CLEAR_VARS)
LOCAL_MODULE := bionic-benchmarks-glibc
LOCAL_MODULE_STEM_32 := bionic-benchmarks-glibc32
LOCAL_MODULE_STEM_64 := bionic-benchmarks-glibc64
LOCAL_MULTILIB := both
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_CFLAGS += $(benchmark_c_flags)
LOCAL_LDFLAGS += -lrt
LOCAL_CFLAGS := $(benchmark_cflags)
LOCAL_CPPFLAGS := $(benchmark_cppflags)
LOCAL_LDFLAGS := -lrt
LOCAL_SRC_FILES := $(benchmark_src_files)
LOCAL_CXX_STL := libc++
LOCAL_STATIC_LIBRARIES := libbenchmark libbase
include $(BUILD_HOST_EXECUTABLE)
endif
ifeq ($(HOST_OS)-$(HOST_ARCH),$(filter $(HOST_OS)-$(HOST_ARCH),linux-x86 linux-x86_64))
include $(LOCAL_PATH)/../build/run-on-host.mk
@@ -90,5 +129,3 @@ bionic-benchmarks-run-on-host64: bionic-benchmarks bionic-prepare-run-on-host
endif
endif
endif # !BUILD_TINY_ANDROID

159
benchmarks/Benchmark.cpp Normal file
View File

@@ -0,0 +1,159 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <inttypes.h>
#include <regex.h>
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <time.h>
#include <string>
#include <vector>
#include <base/stringprintf.h>
#include <benchmark/Benchmark.h>
#include "utils.h"
namespace testing {
static uint64_t NanoTime() {
struct timespec t;
t.tv_sec = t.tv_nsec = 0;
clock_gettime(CLOCK_MONOTONIC, &t);
return static_cast<uint64_t>(t.tv_sec) * 1000000000LL + t.tv_nsec;
}
bool Benchmark::header_printed_;
std::vector<Benchmark*>& Benchmark::List() {
static std::vector<Benchmark*> list;
return list;
}
int Benchmark::MaxNameColumnWidth() {
size_t max = 20;
for (auto& benchmark : List()) {
max = std::max(max, benchmark->NameColumnWidth());
}
return static_cast<int>(max);
}
size_t Benchmark::RunAll(std::vector<regex_t*>& regs) {
size_t benchmarks_run = 0;
header_printed_ = false;
for (auto& benchmark : List()) {
benchmarks_run += benchmark->RunAllArgs(regs);
}
return benchmarks_run;
}
void Benchmark::PrintHeader() {
if (!header_printed_) {
printf("%-*s %10s %10s\n", MaxNameColumnWidth(), "", "iterations", "ns/op");
header_printed_ = true;
}
}
template <typename T>
bool BenchmarkT<T>::ShouldRun(std::vector<regex_t*>& regs, T arg) {
if (regs.empty()) {
return true;
}
for (const auto& re : regs) {
if (regexec(re, GetNameStr(arg).c_str(), 0, NULL, 0) != REG_NOMATCH) {
return true;
}
}
return false;
}
void Benchmark::StopBenchmarkTiming() {
if (start_time_ns_ != 0) {
total_time_ns_ += NanoTime() - start_time_ns_;
}
start_time_ns_ = 0;
}
void Benchmark::StartBenchmarkTiming() {
if (start_time_ns_ == 0) {
start_time_ns_ = NanoTime();
}
}
std::string BenchmarkWithoutArg::GetNameStr(void*) {
return Name();
}
template <>
std::string BenchmarkWithArg<int>::GetNameStr(int arg) {
return Name() + "/" + PrettyInt(arg, 2);
}
template <>
std::string BenchmarkWithArg<double>::GetNameStr(double arg) {
return Name() + "/" + android::base::StringPrintf("%0.6f", arg);
}
template<typename T>
void BenchmarkT<T>::RunWithArg(T arg) {
int new_iterations = 1;
int iterations;
while (new_iterations < 1e8) {
bytes_processed_ = 0;
total_time_ns_ = 0;
start_time_ns_ = 0;
iterations = new_iterations;
RunIterations(iterations, arg);
if (total_time_ns_ >= 1e9) {
break;
}
if (total_time_ns_/iterations == 0) {
new_iterations = 1e9;
} else {
new_iterations = 1e9/ (total_time_ns_/iterations);
}
new_iterations = std::max(iterations + 1,
std::min(new_iterations + new_iterations/2, 100*iterations));
new_iterations = Round(new_iterations);
}
printf("%-*s %10s %10" PRId64, MaxNameColumnWidth(), GetNameStr(arg).c_str(),
PrettyInt(iterations, 10).c_str(), total_time_ns_/iterations);
if (total_time_ns_ > 0 && bytes_processed_ > 0) {
double gib_processed = static_cast<double>(bytes_processed_)/1e9;
double seconds = static_cast<double>(total_time_ns_)/1e9;
printf(" %8.3f GiB/s", gib_processed/seconds);
}
printf("\n");
fflush(stdout);
}
template class BenchmarkT<int>;
template class BenchmarkT<double>;
template class BenchmarkT<void*>;
template class BenchmarkWithArg<int>;
template class BenchmarkWithArg<double>;
} // namespace testing

View File

@@ -1,61 +0,0 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <stdint.h>
#include <vector>
namespace testing {
class Benchmark {
public:
Benchmark(const char* name, void (*fn)(int)) {
Register(name, fn, NULL);
}
Benchmark(const char* name, void (*fn_range)(int, int)) {
Register(name, NULL, fn_range);
}
Benchmark* Arg(int x);
const char* Name();
bool ShouldRun(int argc, char* argv[]);
void Run();
private:
const char* name_;
void (*fn_)(int);
void (*fn_range_)(int, int);
std::vector<int> args_;
void Register(const char* name, void (*fn)(int), void (*fn_range)(int, int));
void RunRepeatedlyWithArg(int iterations, int arg);
void RunWithArg(int arg);
};
} // namespace testing
void SetBenchmarkBytesProcessed(int64_t);
void StopBenchmarkTiming();
void StartBenchmarkTiming();
#define BENCHMARK(f) \
static ::testing::Benchmark* _benchmark_##f __attribute__((unused)) = \
(new ::testing::Benchmark(#f, f))

View File

@@ -0,0 +1,169 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef BENCHMARKS_BENCHMARK_H_
#define BENCHMARKS_BENCHMARK_H_
#include <regex.h>
#include <stdint.h>
#include <string>
#include <vector>
namespace testing {
class Benchmark {
public:
Benchmark() {
List().push_back(this);
}
virtual ~Benchmark() {}
virtual std::string Name() = 0;
virtual size_t RunAllArgs(std::vector<regex_t*>&) = 0;
void SetBenchmarkBytesProcessed(uint64_t bytes) { bytes_processed_ += bytes; }
void StopBenchmarkTiming();
void StartBenchmarkTiming();
// Run all of the benchmarks that have registered.
static size_t RunAll(std::vector<regex_t*>&);
static std::vector<Benchmark*>& List();
static int MaxNameColumnWidth();
protected:
virtual size_t NameColumnWidth() = 0;
uint64_t bytes_processed_;
uint64_t total_time_ns_;
uint64_t start_time_ns_;
static bool header_printed_;
static void PrintHeader();
};
template <typename T>
class BenchmarkT : public Benchmark {
public:
BenchmarkT() {}
virtual ~BenchmarkT() {}
protected:
bool ShouldRun(std::vector<regex_t*>&, T arg);
void RunWithArg(T arg);
virtual void RunIterations(int, T) = 0;
virtual std::string GetNameStr(T) = 0;
};
class BenchmarkWithoutArg : public BenchmarkT<void*> {
public:
BenchmarkWithoutArg() {}
virtual ~BenchmarkWithoutArg() {}
protected:
virtual size_t RunAllArgs(std::vector<regex_t*>& regs) override {
size_t benchmarks_run = 0;
if (BenchmarkT<void*>::ShouldRun(regs, nullptr)) {
PrintHeader();
RunWithArg(nullptr);
benchmarks_run++;
}
return benchmarks_run;
}
virtual void RunIterations(int iters, void*) override {
Run(iters);
}
virtual void Run(int) = 0;
virtual size_t NameColumnWidth() override {
return Name().size();
}
virtual std::string GetNameStr(void *) override;
};
template<typename T>
class BenchmarkWithArg : public BenchmarkT<T> {
public:
BenchmarkWithArg() {}
virtual ~BenchmarkWithArg() {}
BenchmarkWithArg* Arg(T arg) {
args_.push_back(arg);
return this;
}
protected:
virtual size_t NameColumnWidth() override {
size_t max = 0;
for (const auto& arg : args_) {
max = std::max(max, GetNameStr(arg).size());
}
return max;
}
std::string GetNameStr(T arg) override;
virtual size_t RunAllArgs(std::vector<regex_t*>& regs) override {
size_t benchmarks_run = 0;
for (T& arg : args_) {
if (BenchmarkT<T>::ShouldRun(regs, arg)) {
Benchmark::PrintHeader();
BenchmarkT<T>::RunWithArg(arg);
benchmarks_run++;
}
}
return benchmarks_run;
}
virtual void RunIterations(int iters, T arg) override {
Run(iters, arg);
}
virtual void Run(int iters, T arg) = 0;
private:
std::vector<T> args_;
};
} // namespace testing
#define BENCHMARK_START(f, super_class) \
class f : public super_class { \
public: \
f() {} \
virtual ~f() {} \
virtual std::string Name() override { return #f; } \
#define BENCHMARK_NO_ARG(f) \
BENCHMARK_START(f, ::testing::BenchmarkWithoutArg) \
virtual void Run(int) override; \
}; \
static ::testing::Benchmark* __benchmark_##f = new f()
#define BENCHMARK_WITH_ARG(f, arg_type) \
BENCHMARK_START(f, ::testing::BenchmarkWithArg<arg_type>) \
virtual void Run(int, arg_type) override; \
}; \
static ::testing::BenchmarkWithArg<arg_type>* __benchmark_##f = (new f())
#endif // BENCHMARKS_BENCHMARK_H_

View File

@@ -1,227 +0,0 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include "benchmark.h"
#include <regex.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string>
#include <map>
#include <inttypes.h>
static int64_t g_bytes_processed;
static int64_t g_benchmark_total_time_ns;
static int64_t g_benchmark_start_time_ns;
typedef std::map<std::string, ::testing::Benchmark*> BenchmarkMap;
typedef BenchmarkMap::iterator BenchmarkMapIt;
static BenchmarkMap g_benchmarks;
static int g_name_column_width = 20;
static int Round(int n) {
int base = 1;
while (base*10 < n) {
base *= 10;
}
if (n < 2*base) {
return 2*base;
}
if (n < 5*base) {
return 5*base;
}
return 10*base;
}
static int64_t NanoTime() {
struct timespec t;
t.tv_sec = t.tv_nsec = 0;
clock_gettime(CLOCK_MONOTONIC, &t);
return static_cast<int64_t>(t.tv_sec) * 1000000000LL + t.tv_nsec;
}
namespace testing {
Benchmark* Benchmark::Arg(int arg) {
args_.push_back(arg);
return this;
}
const char* Benchmark::Name() {
return name_;
}
bool Benchmark::ShouldRun(int argc, char* argv[]) {
if (argc == 1) {
return true; // With no arguments, we run all benchmarks.
}
// Otherwise, we interpret each argument as a regular expression and
// see if any of our benchmarks match.
for (int i = 1; i < argc; i++) {
regex_t re;
if (regcomp(&re, argv[i], 0) != 0) {
fprintf(stderr, "couldn't compile \"%s\" as a regular expression!\n", argv[i]);
exit(EXIT_FAILURE);
}
int match = regexec(&re, name_, 0, NULL, 0);
regfree(&re);
if (match != REG_NOMATCH) {
return true;
}
}
return false;
}
void Benchmark::Register(const char* name, void (*fn)(int), void (*fn_range)(int, int)) {
name_ = name;
fn_ = fn;
fn_range_ = fn_range;
if (fn_ == NULL && fn_range_ == NULL) {
fprintf(stderr, "%s: missing function\n", name_);
exit(EXIT_FAILURE);
}
g_benchmarks.insert(std::make_pair(name, this));
}
void Benchmark::Run() {
if (fn_ != NULL) {
RunWithArg(0);
} else {
if (args_.empty()) {
fprintf(stderr, "%s: no args!\n", name_);
exit(EXIT_FAILURE);
}
for (size_t i = 0; i < args_.size(); ++i) {
RunWithArg(args_[i]);
}
}
}
void Benchmark::RunRepeatedlyWithArg(int iterations, int arg) {
g_bytes_processed = 0;
g_benchmark_total_time_ns = 0;
g_benchmark_start_time_ns = NanoTime();
if (fn_ != NULL) {
fn_(iterations);
} else {
fn_range_(iterations, arg);
}
if (g_benchmark_start_time_ns != 0) {
g_benchmark_total_time_ns += NanoTime() - g_benchmark_start_time_ns;
}
}
void Benchmark::RunWithArg(int arg) {
// run once in case it's expensive
int iterations = 1;
RunRepeatedlyWithArg(iterations, arg);
while (g_benchmark_total_time_ns < 1e9 && iterations < 1e9) {
int last = iterations;
if (g_benchmark_total_time_ns/iterations == 0) {
iterations = 1e9;
} else {
iterations = 1e9 / (g_benchmark_total_time_ns/iterations);
}
iterations = std::max(last + 1, std::min(iterations + iterations/2, 100*last));
iterations = Round(iterations);
RunRepeatedlyWithArg(iterations, arg);
}
char throughput[100];
throughput[0] = '\0';
if (g_benchmark_total_time_ns > 0 && g_bytes_processed > 0) {
double mib_processed = static_cast<double>(g_bytes_processed)/1e6;
double seconds = static_cast<double>(g_benchmark_total_time_ns)/1e9;
snprintf(throughput, sizeof(throughput), " %8.2f MiB/s", mib_processed/seconds);
}
char full_name[100];
if (fn_range_ != NULL) {
if (arg >= (1<<20)) {
snprintf(full_name, sizeof(full_name), "%s/%dM", name_, arg/(1<<20));
} else if (arg >= (1<<10)) {
snprintf(full_name, sizeof(full_name), "%s/%dK", name_, arg/(1<<10));
} else {
snprintf(full_name, sizeof(full_name), "%s/%d", name_, arg);
}
} else {
snprintf(full_name, sizeof(full_name), "%s", name_);
}
printf("%-*s %10d %10" PRId64 "%s\n", g_name_column_width, full_name,
iterations, g_benchmark_total_time_ns/iterations, throughput);
fflush(stdout);
}
} // namespace testing
void SetBenchmarkBytesProcessed(int64_t x) {
g_bytes_processed = x;
}
void StopBenchmarkTiming() {
if (g_benchmark_start_time_ns != 0) {
g_benchmark_total_time_ns += NanoTime() - g_benchmark_start_time_ns;
}
g_benchmark_start_time_ns = 0;
}
void StartBenchmarkTiming() {
if (g_benchmark_start_time_ns == 0) {
g_benchmark_start_time_ns = NanoTime();
}
}
int main(int argc, char* argv[]) {
if (g_benchmarks.empty()) {
fprintf(stderr, "No benchmarks registered!\n");
exit(EXIT_FAILURE);
}
for (BenchmarkMapIt it = g_benchmarks.begin(); it != g_benchmarks.end(); ++it) {
int name_width = static_cast<int>(strlen(it->second->Name()));
g_name_column_width = std::max(g_name_column_width, name_width);
}
bool need_header = true;
for (BenchmarkMapIt it = g_benchmarks.begin(); it != g_benchmarks.end(); ++it) {
::testing::Benchmark* b = it->second;
if (b->ShouldRun(argc, argv)) {
if (need_header) {
printf("%-*s %10s %10s\n", g_name_column_width, "", "iterations", "ns/op");
fflush(stdout);
need_header = false;
}
b->Run();
}
}
if (need_header) {
fprintf(stderr, "No matching benchmarks!\n");
fprintf(stderr, "Available benchmarks:\n");
for (BenchmarkMapIt it = g_benchmarks.begin(); it != g_benchmarks.end(); ++it) {
fprintf(stderr, " %s\n", it->second->Name());
}
exit(EXIT_FAILURE);
}
return 0;
}

61
benchmarks/main.cpp Normal file
View File

@@ -0,0 +1,61 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <regex.h>
#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include <benchmark/Benchmark.h>
int main(int argc, char* argv[]) {
if (::testing::Benchmark::List().empty()) {
fprintf(stderr, "No benchmarks registered!\n");
exit(EXIT_FAILURE);
}
std::vector<regex_t*> regs;
for (int i = 1; i < argc; i++) {
regex_t* re = new regex_t;
int errcode = regcomp(re, argv[i], 0);
if (errcode != 0) {
size_t errbuf_size = regerror(errcode, re, NULL, 0);
if (errbuf_size > 0) {
char* errbuf = new char[errbuf_size];
regerror(errcode, re, errbuf, errbuf_size);
fprintf(stderr, "Couldn't compile \"%s\" as a regular expression: %s\n",
argv[i], errbuf);
} else {
fprintf(stderr, "Unknown compile error for \"%s\" as a regular expression!\n", argv[i]);
}
exit(EXIT_FAILURE);
}
regs.push_back(re);
}
if (::testing::Benchmark::RunAll(regs) == 0) {
fprintf(stderr, "No matching benchmarks!\n");
fprintf(stderr, "Available benchmarks:\n");
for (const auto& benchmark : ::testing::Benchmark::List()) {
fprintf(stderr, " %s\n", benchmark->Name().c_str());
}
exit(EXIT_FAILURE);
}
return 0;
}

View File

@@ -14,16 +14,20 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <fenv.h>
#include <math.h>
#include <benchmark/Benchmark.h>
#define AT_COMMON_VALS \
Arg(1234.0)->Arg(nan(""))->Arg(HUGE_VAL)->Arg(0.0)
// Avoid optimization.
volatile double d;
volatile double v;
static void BM_math_sqrt(int iters) {
BENCHMARK_NO_ARG(BM_math_sqrt);
void BM_math_sqrt::Run(int iters) {
StartBenchmarkTiming();
d = 0.0;
@@ -34,9 +38,9 @@ static void BM_math_sqrt(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_math_sqrt);
static void BM_math_log10(int iters) {
BENCHMARK_NO_ARG(BM_math_log10);
void BM_math_log10::Run(int iters) {
StartBenchmarkTiming();
d = 0.0;
@@ -47,9 +51,9 @@ static void BM_math_log10(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_math_log10);
static void BM_math_logb(int iters) {
BENCHMARK_NO_ARG(BM_math_logb);
void BM_math_logb::Run(int iters) {
StartBenchmarkTiming();
d = 0.0;
@@ -60,61 +64,22 @@ static void BM_math_logb(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_math_logb);
static void BM_math_isinf_NORMAL(int iters) {
BENCHMARK_WITH_ARG(BM_math_isinf, double)->AT_COMMON_VALS;
void BM_math_isinf::Run(int iters, double value) {
StartBenchmarkTiming();
d = 0.0;
v = 1234.0; // FP_NORMAL
v = value;
for (int i = 0; i < iters; ++i) {
d += (isinf)(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_isinf_NORMAL);
static void BM_math_isinf_NAN(int iters) {
StartBenchmarkTiming();
d = 0.0;
v = nan(""); // FP_NAN
for (int i = 0; i < iters; ++i) {
d += (isinf)(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_isinf_NAN);
static void BM_math_isinf_INFINITE(int iters) {
StartBenchmarkTiming();
d = 0.0;
v = HUGE_VAL; // FP_INFINITE
for (int i = 0; i < iters; ++i) {
d += (isinf)(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_isinf_INFINITE);
static void BM_math_isinf_ZERO(int iters) {
StartBenchmarkTiming();
d = 0.0;
v = 0.0; // FP_ZERO
for (int i = 0; i < iters; ++i) {
d += (isinf)(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_isinf_ZERO);
static void BM_math_sin_fast(int iters) {
BENCHMARK_NO_ARG(BM_math_sin_fast);
void BM_math_sin_fast::Run(int iters) {
StartBenchmarkTiming();
d = 1.0;
@@ -124,9 +89,9 @@ static void BM_math_sin_fast(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_math_sin_fast);
static void BM_math_sin_feupdateenv(int iters) {
BENCHMARK_NO_ARG(BM_math_sin_feupdateenv);
void BM_math_sin_feupdateenv::Run(int iters) {
StartBenchmarkTiming();
d = 1.0;
@@ -140,9 +105,9 @@ static void BM_math_sin_feupdateenv(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_math_sin_feupdateenv);
static void BM_math_sin_fesetenv(int iters) {
BENCHMARK_NO_ARG(BM_math_sin_fesetenv);
void BM_math_sin_fesetenv::Run(int iters) {
StartBenchmarkTiming();
d = 1.0;
@@ -156,56 +121,16 @@ static void BM_math_sin_fesetenv(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_math_sin_fesetenv);
static void BM_math_fpclassify_NORMAL(int iters) {
BENCHMARK_WITH_ARG(BM_math_fpclassify, double)->AT_COMMON_VALS;
void BM_math_fpclassify::Run(int iters, double value) {
StartBenchmarkTiming();
d = 0.0;
v = 1234.0; // FP_NORMAL
v = value;
for (int i = 0; i < iters; ++i) {
d += fpclassify(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_fpclassify_NORMAL);
static void BM_math_fpclassify_NAN(int iters) {
StartBenchmarkTiming();
d = 0.0;
v = nan(""); // FP_NAN
for (int i = 0; i < iters; ++i) {
d += fpclassify(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_fpclassify_NAN);
static void BM_math_fpclassify_INFINITE(int iters) {
StartBenchmarkTiming();
d = 0.0;
v = HUGE_VAL; // FP_INFINITE
for (int i = 0; i < iters; ++i) {
d += fpclassify(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_fpclassify_INFINITE);
static void BM_math_fpclassify_ZERO(int iters) {
StartBenchmarkTiming();
d = 0.0;
v = 0.0; // FP_ZERO
for (int i = 0; i < iters; ++i) {
d += fpclassify(v);
}
StopBenchmarkTiming();
}
BENCHMARK(BM_math_fpclassify_ZERO);

View File

@@ -14,19 +14,21 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string>
#if defined(__BIONIC__)
#define _REALLY_INCLUDE_SYS__SYSTEM_PROPERTIES_H_
#include <sys/_system_properties.h>
#include <vector>
#include <string>
#include <benchmark/Benchmark.h>
extern void *__system_property_area__;
extern void* __system_property_area__;
// Do not exceed 512, that is about the largest number of properties
// that can be created with the current property area size.
@@ -44,7 +46,7 @@ struct LocalPropertyTestState {
}
char dir_template[PATH_MAX];
snprintf(dir_template, sizeof(dir_template), "%s/local/tmp/prop-XXXXXX", android_data);
char *dirname = mkdtemp(dir_template);
char* dirname = mkdtemp(dir_template);
if (!dirname) {
printf("making temp file for test state failed (is %s/local/tmp writable?): %s\n",
android_data, strerror(errno));
@@ -126,20 +128,20 @@ struct LocalPropertyTestState {
}
public:
const int nprops;
char **names;
int *name_lens;
char **values;
int *value_lens;
char** names;
int* name_lens;
char** values;
int* value_lens;
bool valid;
private:
std::string pa_dirname;
std::string pa_filename;
void *old_pa;
void* old_pa;
};
static void BM_property_get(int iters, int nprops)
{
BENCHMARK_WITH_ARG(BM_property_get, int)->TEST_NUM_PROPS;
void BM_property_get::Run(int iters, int nprops) {
StopBenchmarkTiming();
LocalPropertyTestState pa(nprops);
@@ -157,10 +159,9 @@ static void BM_property_get(int iters, int nprops)
}
StopBenchmarkTiming();
}
BENCHMARK(BM_property_get)->TEST_NUM_PROPS;
static void BM_property_find(int iters, int nprops)
{
BENCHMARK_WITH_ARG(BM_property_find, int)->TEST_NUM_PROPS;
void BM_property_find::Run(int iters, int nprops) {
StopBenchmarkTiming();
LocalPropertyTestState pa(nprops);
@@ -177,10 +178,9 @@ static void BM_property_find(int iters, int nprops)
}
StopBenchmarkTiming();
}
BENCHMARK(BM_property_find)->TEST_NUM_PROPS;
static void BM_property_read(int iters, int nprops)
{
BENCHMARK_WITH_ARG(BM_property_read, int)->TEST_NUM_PROPS;
void BM_property_read::Run(int iters, int nprops) {
StopBenchmarkTiming();
LocalPropertyTestState pa(nprops);
@@ -204,10 +204,9 @@ static void BM_property_read(int iters, int nprops)
delete[] pinfo;
}
BENCHMARK(BM_property_read)->TEST_NUM_PROPS;
static void BM_property_serial(int iters, int nprops)
{
BENCHMARK_WITH_ARG(BM_property_serial, int)->TEST_NUM_PROPS;
void BM_property_serial::Run(int iters, int nprops) {
StopBenchmarkTiming();
LocalPropertyTestState pa(nprops);
@@ -230,4 +229,5 @@ static void BM_property_serial(int iters, int nprops)
delete[] pinfo;
}
BENCHMARK(BM_property_serial)->TEST_NUM_PROPS;
#endif // __BIONIC__

View File

@@ -14,14 +14,15 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <pthread.h>
#include <benchmark/Benchmark.h>
// Stop GCC optimizing out our pure function.
/* Must not be static! */ pthread_t (*pthread_self_fp)() = pthread_self;
static void BM_pthread_self(int iters) {
BENCHMARK_NO_ARG(BM_pthread_self);
void BM_pthread_self::Run(int iters) {
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
@@ -30,9 +31,9 @@ static void BM_pthread_self(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_pthread_self);
static void BM_pthread_getspecific(int iters) {
BENCHMARK_NO_ARG(BM_pthread_getspecific);
void BM_pthread_getspecific::Run(int iters) {
StopBenchmarkTiming();
pthread_key_t key;
pthread_key_create(&key, NULL);
@@ -45,12 +46,27 @@ static void BM_pthread_getspecific(int iters) {
StopBenchmarkTiming();
pthread_key_delete(key);
}
BENCHMARK(BM_pthread_getspecific);
BENCHMARK_NO_ARG(BM_pthread_setspecific);
void BM_pthread_setspecific::Run(int iters) {
StopBenchmarkTiming();
pthread_key_t key;
pthread_key_create(&key, NULL);
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
pthread_setspecific(key, NULL);
}
StopBenchmarkTiming();
pthread_key_delete(key);
}
static void DummyPthreadOnceInitFunction() {
}
static void BM_pthread_once(int iters) {
BENCHMARK_NO_ARG(BM_pthread_once);
void BM_pthread_once::Run(int iters) {
StopBenchmarkTiming();
pthread_once_t once = PTHREAD_ONCE_INIT;
pthread_once(&once, DummyPthreadOnceInitFunction);
@@ -62,9 +78,9 @@ static void BM_pthread_once(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_pthread_once);
static void BM_pthread_mutex_lock(int iters) {
BENCHMARK_NO_ARG(BM_pthread_mutex_lock);
void BM_pthread_mutex_lock::Run(int iters) {
StopBenchmarkTiming();
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
StartBenchmarkTiming();
@@ -76,9 +92,9 @@ static void BM_pthread_mutex_lock(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_pthread_mutex_lock);
static void BM_pthread_mutex_lock_ERRORCHECK(int iters) {
BENCHMARK_NO_ARG(BM_pthread_mutex_lock_ERRORCHECK);
void BM_pthread_mutex_lock_ERRORCHECK::Run(int iters) {
StopBenchmarkTiming();
pthread_mutex_t mutex = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;
StartBenchmarkTiming();
@@ -90,9 +106,9 @@ static void BM_pthread_mutex_lock_ERRORCHECK(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_pthread_mutex_lock_ERRORCHECK);
static void BM_pthread_mutex_lock_RECURSIVE(int iters) {
BENCHMARK_NO_ARG(BM_pthread_mutex_lock_RECURSIVE);
void BM_pthread_mutex_lock_RECURSIVE::Run(int iters) {
StopBenchmarkTiming();
pthread_mutex_t mutex = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
StartBenchmarkTiming();
@@ -104,9 +120,9 @@ static void BM_pthread_mutex_lock_RECURSIVE(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_pthread_mutex_lock_RECURSIVE);
static void BM_pthread_rw_lock_read(int iters) {
BENCHMARK_NO_ARG(BM_pthread_rwlock_read);
void BM_pthread_rwlock_read::Run(int iters) {
StopBenchmarkTiming();
pthread_rwlock_t lock;
pthread_rwlock_init(&lock, NULL);
@@ -120,9 +136,9 @@ static void BM_pthread_rw_lock_read(int iters) {
StopBenchmarkTiming();
pthread_rwlock_destroy(&lock);
}
BENCHMARK(BM_pthread_rw_lock_read);
static void BM_pthread_rw_lock_write(int iters) {
BENCHMARK_NO_ARG(BM_pthread_rwlock_write);
void BM_pthread_rwlock_write::Run(int iters) {
StopBenchmarkTiming();
pthread_rwlock_t lock;
pthread_rwlock_init(&lock, NULL);
@@ -136,4 +152,82 @@ static void BM_pthread_rw_lock_write(int iters) {
StopBenchmarkTiming();
pthread_rwlock_destroy(&lock);
}
BENCHMARK(BM_pthread_rw_lock_write);
static void* IdleThread(void*) {
return NULL;
}
BENCHMARK_NO_ARG(BM_pthread_create);
void BM_pthread_create::Run(int iters) {
StopBenchmarkTiming();
pthread_t thread;
for (int i = 0; i < iters; ++i) {
StartBenchmarkTiming();
pthread_create(&thread, NULL, IdleThread, NULL);
StopBenchmarkTiming();
pthread_join(thread, NULL);
}
}
static void* RunThread(void* arg) {
::testing::Benchmark* benchmark = reinterpret_cast<::testing::Benchmark*>(arg);
benchmark->StopBenchmarkTiming();
return NULL;
}
BENCHMARK_NO_ARG(BM_pthread_create_and_run);
void BM_pthread_create_and_run::Run(int iters) {
StopBenchmarkTiming();
pthread_t thread;
for (int i = 0; i < iters; ++i) {
StartBenchmarkTiming();
pthread_create(&thread, NULL, RunThread, this);
pthread_join(thread, NULL);
}
}
static void* ExitThread(void* arg) {
::testing::Benchmark* benchmark = reinterpret_cast<::testing::Benchmark*>(arg);
benchmark->StartBenchmarkTiming();
pthread_exit(NULL);
}
BENCHMARK_NO_ARG(BM_pthread_exit_and_join);
void BM_pthread_exit_and_join::Run(int iters) {
StopBenchmarkTiming();
pthread_t thread;
for (int i = 0; i < iters; ++i) {
pthread_create(&thread, NULL, ExitThread, this);
pthread_join(thread, NULL);
StopBenchmarkTiming();
}
}
BENCHMARK_NO_ARG(BM_pthread_key_create);
void BM_pthread_key_create::Run(int iters) {
StopBenchmarkTiming();
pthread_key_t key;
for (int i = 0; i < iters; ++i) {
StartBenchmarkTiming();
pthread_key_create(&key, NULL);
StopBenchmarkTiming();
pthread_key_delete(key);
}
}
BENCHMARK_NO_ARG(BM_pthread_key_delete);
void BM_pthread_key_delete::Run(int iters) {
StopBenchmarkTiming();
pthread_key_t key;
for (int i = 0; i < iters; ++i) {
pthread_key_create(&key, NULL);
StartBenchmarkTiming();
pthread_key_delete(key);
StopBenchmarkTiming();
}
}

View File

@@ -14,11 +14,15 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <pthread.h>
#include <semaphore.h>
#include <stdatomic.h>
#include <stdio.h>
static void BM_semaphore_sem_getvalue(int iters) {
#include <benchmark/Benchmark.h>
BENCHMARK_NO_ARG(BM_semaphore_sem_getvalue);
void BM_semaphore_sem_getvalue::Run(int iters) {
StopBenchmarkTiming();
sem_t semaphore;
sem_init(&semaphore, 1, 1);
@@ -31,9 +35,9 @@ static void BM_semaphore_sem_getvalue(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_semaphore_sem_getvalue);
static void BM_semaphore_sem_wait_sem_post(int iters) {
BENCHMARK_NO_ARG(BM_semaphore_sem_wait_sem_post);
void BM_semaphore_sem_wait_sem_post::Run(int iters) {
StopBenchmarkTiming();
sem_t semaphore;
sem_init(&semaphore, 1, 1);
@@ -46,4 +50,94 @@ static void BM_semaphore_sem_wait_sem_post(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_semaphore_sem_wait_sem_post);
/*
* This test reports the overhead of the underlying futex wake syscall on
* the producer. It does not report the overhead from issuing the wake to the
* point where the posted consumer thread wakes up. It suffers from
* clock_gettime syscall overhead. Lock the CPU speed for consistent results
* as we may not reach >50% cpu utilization.
*
* We will run a background thread that catches the sem_post wakeup and
* loops immediately returning back to sleep in sem_wait for the next one. This
* thread is run with policy SCHED_OTHER (normal policy), a middle policy.
*
* The primary thread will run at SCHED_IDLE (lowest priority policy) when
* monitoring the background thread to detect when it hits sem_wait sleep. It
* will do so with no clock running. Once we are ready, we will switch to
* SCHED_FIFO (highest priority policy) to time the act of running sem_post
* with the benchmark clock running. This ensures nothing else in the system
* can preempt our timed activity, including the background thread. We are
* also protected with the scheduling policy of letting a process hit a
* resource limit rather than get hit with a context switch.
*
* The background thread will start executing either on another CPU, or
* after we back down from SCHED_FIFO, but certainly not in the context of
* the timing of the sem_post.
*/
static atomic_int BM_semaphore_sem_post_running;
static void *BM_semaphore_sem_post_start_thread(void *obj) {
sem_t *semaphore = reinterpret_cast<sem_t *>(obj);
while ((BM_semaphore_sem_post_running > 0) && !sem_wait(semaphore)) {
;
}
BM_semaphore_sem_post_running = -1;
return NULL;
}
BENCHMARK_NO_ARG(BM_semaphore_sem_post);
void BM_semaphore_sem_post::Run(int iters) {
StopBenchmarkTiming();
sem_t semaphore;
sem_init(&semaphore, 0, 0);
pthread_attr_t attr;
pthread_attr_init(&attr);
BM_semaphore_sem_post_running = 1;
struct sched_param param = { 0, };
pthread_attr_setschedparam(&attr, &param);
pthread_attr_setschedpolicy(&attr, SCHED_OTHER);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_t pthread;
pthread_create(&pthread, &attr, BM_semaphore_sem_post_start_thread, &semaphore);
pthread_attr_destroy(&attr);
sched_setscheduler((pid_t)0, SCHED_IDLE, &param);
for (int i = 0; i < iters; ++i) {
int trys = 3, dummy = 0;
do {
if (BM_semaphore_sem_post_running < 0) {
sched_setscheduler((pid_t)0, SCHED_OTHER, &param);
fprintf(stderr, "BM_semaphore_sem_post: start_thread died unexpectedly\n");
return;
}
sched_yield();
sem_getvalue(&semaphore, &dummy);
if (dummy < 0) { // POSIX.1-2001 possibility 1
break;
}
if (dummy == 0) { // POSIX.1-2001 possibility 2
--trys;
}
} while (trys);
param.sched_priority = 1;
sched_setscheduler((pid_t)0, SCHED_FIFO, &param);
StartBenchmarkTiming();
sem_post(&semaphore);
StopBenchmarkTiming(); // Remember to subtract clock syscall overhead
param.sched_priority = 0;
sched_setscheduler((pid_t)0, SCHED_IDLE, &param);
}
sched_setscheduler((pid_t)0, SCHED_OTHER, &param);
if (BM_semaphore_sem_post_running > 0) {
BM_semaphore_sem_post_running = 0;
}
do {
sem_post(&semaphore);
sched_yield();
} while (!BM_semaphore_sem_post_running);
}

View File

@@ -14,9 +14,10 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <stdio.h>
#include <stdio_ext.h>
#include <benchmark/Benchmark.h>
#define KB 1024
#define MB 1024*KB
@@ -26,11 +27,12 @@
Arg(1*KB)->Arg(4*KB)->Arg(8*KB)->Arg(16*KB)->Arg(64*KB)
template <typename Fn>
static void ReadWriteTest(int iters, int chunk_size, Fn f, bool buffered) {
StopBenchmarkTiming();
void ReadWriteTest(::testing::Benchmark* benchmark, int iters, int chunk_size, Fn f, bool buffered) {
benchmark->StopBenchmarkTiming();
FILE* fp = fopen("/dev/zero", "rw");
__fsetlocking(fp, FSETLOCKING_BYCALLER);
char* buf = new char[chunk_size];
StartBenchmarkTiming();
benchmark->StartBenchmarkTiming();
if (!buffered) {
setvbuf(fp, 0, _IONBF, 0);
@@ -40,28 +42,52 @@ static void ReadWriteTest(int iters, int chunk_size, Fn f, bool buffered) {
f(buf, chunk_size, 1, fp);
}
StopBenchmarkTiming();
SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(chunk_size));
benchmark->StopBenchmarkTiming();
benchmark->SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(chunk_size));
delete[] buf;
fclose(fp);
}
static void BM_stdio_fread(int iters, int chunk_size) {
ReadWriteTest(iters, chunk_size, fread, true);
BENCHMARK_WITH_ARG(BM_stdio_fread, int)->AT_COMMON_SIZES;
void BM_stdio_fread::Run(int iters, int chunk_size) {
ReadWriteTest(this, iters, chunk_size, fread, true);
}
BENCHMARK(BM_stdio_fread)->AT_COMMON_SIZES;
static void BM_stdio_fwrite(int iters, int chunk_size) {
ReadWriteTest(iters, chunk_size, fwrite, true);
BENCHMARK_WITH_ARG(BM_stdio_fwrite, int)->AT_COMMON_SIZES;
void BM_stdio_fwrite::Run(int iters, int chunk_size) {
ReadWriteTest(this, iters, chunk_size, fwrite, true);
}
BENCHMARK(BM_stdio_fwrite)->AT_COMMON_SIZES;
static void BM_stdio_fread_unbuffered(int iters, int chunk_size) {
ReadWriteTest(iters, chunk_size, fread, false);
BENCHMARK_WITH_ARG(BM_stdio_fread_unbuffered, int)->AT_COMMON_SIZES;
void BM_stdio_fread_unbuffered::Run(int iters, int chunk_size) {
ReadWriteTest(this, iters, chunk_size, fread, false);
}
BENCHMARK(BM_stdio_fread_unbuffered)->AT_COMMON_SIZES;
static void BM_stdio_fwrite_unbuffered(int iters, int chunk_size) {
ReadWriteTest(iters, chunk_size, fwrite, false);
BENCHMARK_WITH_ARG(BM_stdio_fwrite_unbuffered, int)->AT_COMMON_SIZES;
void BM_stdio_fwrite_unbuffered::Run(int iters, int chunk_size) {
ReadWriteTest(this, iters, chunk_size, fwrite, false);
}
static void FopenFgetsFclose(int iters, bool no_locking) {
char buf[1024];
for (int i = 0; i < iters; ++i) {
FILE* fp = fopen("/proc/version", "re");
if (no_locking) __fsetlocking(fp, FSETLOCKING_BYCALLER);
fgets(buf, sizeof(buf), fp);
fclose(fp);
}
}
BENCHMARK_NO_ARG(BM_stdio_fopen_fgets_fclose_locking);
void BM_stdio_fopen_fgets_fclose_locking::Run(int iters) {
StartBenchmarkTiming();
FopenFgetsFclose(iters, false);
StopBenchmarkTiming();
}
BENCHMARK_NO_ARG(BM_stdio_fopen_fgets_fclose_no_locking);
void BM_stdio_fopen_fgets_fclose_no_locking::Run(int iters) {
StartBenchmarkTiming();
FopenFgetsFclose(iters, true);
StopBenchmarkTiming();
}
BENCHMARK(BM_stdio_fwrite_unbuffered)->AT_COMMON_SIZES;

View File

@@ -14,10 +14,11 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <stdint.h>
#include <string.h>
#include <benchmark/Benchmark.h>
#define KB 1024
#define MB 1024*KB
@@ -26,7 +27,8 @@
// TODO: test unaligned operation too? (currently everything will be 8-byte aligned by malloc.)
static void BM_string_memcmp(int iters, int nbytes) {
BENCHMARK_WITH_ARG(BM_string_memcmp, int)->AT_COMMON_SIZES;
void BM_string_memcmp::Run(int iters, int nbytes) {
StopBenchmarkTiming();
char* src = new char[nbytes]; char* dst = new char[nbytes];
memset(src, 'x', nbytes);
@@ -39,13 +41,13 @@ static void BM_string_memcmp(int iters, int nbytes) {
}
StopBenchmarkTiming();
SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(nbytes));
SetBenchmarkBytesProcessed(uint64_t(iters) * uint64_t(nbytes));
delete[] src;
delete[] dst;
}
BENCHMARK(BM_string_memcmp)->AT_COMMON_SIZES;
static void BM_string_memcpy(int iters, int nbytes) {
BENCHMARK_WITH_ARG(BM_string_memcpy, int)->AT_COMMON_SIZES;
void BM_string_memcpy::Run(int iters, int nbytes) {
StopBenchmarkTiming();
char* src = new char[nbytes]; char* dst = new char[nbytes];
memset(src, 'x', nbytes);
@@ -56,13 +58,13 @@ static void BM_string_memcpy(int iters, int nbytes) {
}
StopBenchmarkTiming();
SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(nbytes));
SetBenchmarkBytesProcessed(uint64_t(iters) * uint64_t(nbytes));
delete[] src;
delete[] dst;
}
BENCHMARK(BM_string_memcpy)->AT_COMMON_SIZES;
static void BM_string_memmove(int iters, int nbytes) {
BENCHMARK_WITH_ARG(BM_string_memmove, int)->AT_COMMON_SIZES;
void BM_string_memmove::Run(int iters, int nbytes) {
StopBenchmarkTiming();
char* buf = new char[nbytes + 64];
memset(buf, 'x', nbytes + 64);
@@ -73,12 +75,12 @@ static void BM_string_memmove(int iters, int nbytes) {
}
StopBenchmarkTiming();
SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(nbytes));
SetBenchmarkBytesProcessed(uint64_t(iters) * uint64_t(nbytes));
delete[] buf;
}
BENCHMARK(BM_string_memmove)->AT_COMMON_SIZES;
static void BM_string_memset(int iters, int nbytes) {
BENCHMARK_WITH_ARG(BM_string_memset, int)->AT_COMMON_SIZES;
void BM_string_memset::Run(int iters, int nbytes) {
StopBenchmarkTiming();
char* dst = new char[nbytes];
StartBenchmarkTiming();
@@ -88,12 +90,12 @@ static void BM_string_memset(int iters, int nbytes) {
}
StopBenchmarkTiming();
SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(nbytes));
SetBenchmarkBytesProcessed(uint64_t(iters) * uint64_t(nbytes));
delete[] dst;
}
BENCHMARK(BM_string_memset)->AT_COMMON_SIZES;
static void BM_string_strlen(int iters, int nbytes) {
BENCHMARK_WITH_ARG(BM_string_strlen, int)->AT_COMMON_SIZES;
void BM_string_strlen::Run(int iters, int nbytes) {
StopBenchmarkTiming();
char* s = new char[nbytes];
memset(s, 'x', nbytes);
@@ -106,7 +108,6 @@ static void BM_string_strlen(int iters, int nbytes) {
}
StopBenchmarkTiming();
SetBenchmarkBytesProcessed(int64_t(iters) * int64_t(nbytes));
SetBenchmarkBytesProcessed(uint64_t(iters) * uint64_t(nbytes));
delete[] s;
}
BENCHMARK(BM_string_strlen)->AT_COMMON_SIZES;

View File

@@ -14,14 +14,14 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/time.h>
#include <time.h>
static void BM_time_clock_gettime(int iters) {
#include <benchmark/Benchmark.h>
BENCHMARK_NO_ARG(BM_time_clock_gettime);
void BM_time_clock_gettime::Run(int iters) {
StartBenchmarkTiming();
timespec t;
@@ -31,9 +31,9 @@ static void BM_time_clock_gettime(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_time_clock_gettime);
static void BM_time_clock_gettime_syscall(int iters) {
BENCHMARK_NO_ARG(BM_time_clock_gettime_syscall);
void BM_time_clock_gettime_syscall::Run(int iters) {
StartBenchmarkTiming();
timespec t;
@@ -43,9 +43,9 @@ static void BM_time_clock_gettime_syscall(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_time_clock_gettime_syscall);
static void BM_time_gettimeofday(int iters) {
BENCHMARK_NO_ARG(BM_time_gettimeofday);
void BM_time_gettimeofday::Run(int iters) {
StartBenchmarkTiming();
timeval tv;
@@ -55,9 +55,9 @@ static void BM_time_gettimeofday(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_time_gettimeofday);
static void BM_time_gettimeofday_syscall(int iters) {
BENCHMARK_NO_ARG(BM_time_gettimeofday_syscall);
void BM_time_gettimeofday_syscall::Run(int iters) {
StartBenchmarkTiming();
timeval tv;
@@ -67,9 +67,9 @@ static void BM_time_gettimeofday_syscall(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_time_gettimeofday_syscall);
static void BM_time_time(int iters) {
BENCHMARK_NO_ARG(BM_time_time);
void BM_time_time::Run(int iters) {
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
@@ -78,4 +78,3 @@ static void BM_time_time(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_time_time);

View File

@@ -14,12 +14,13 @@
* limitations under the License.
*/
#include "benchmark.h"
#include <sys/syscall.h>
#include <unistd.h>
static void BM_unistd_getpid(int iters) {
#include <benchmark/Benchmark.h>
BENCHMARK_NO_ARG(BM_unistd_getpid);
void BM_unistd_getpid::Run(int iters) {
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
@@ -28,9 +29,9 @@ static void BM_unistd_getpid(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_unistd_getpid);
static void BM_unistd_getpid_syscall(int iters) {
BENCHMARK_NO_ARG(BM_unistd_getpid_syscall);
void BM_unistd_getpid_syscall::Run(int iters) {
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
@@ -39,14 +40,14 @@ static void BM_unistd_getpid_syscall(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_unistd_getpid_syscall);
#if defined(__BIONIC__)
// Stop GCC optimizing out our pure function.
/* Must not be static! */ pid_t (*gettid_fp)() = gettid;
static void BM_unistd_gettid(int iters) {
BENCHMARK_NO_ARG(BM_unistd_gettid);
void BM_unistd_gettid::Run(int iters) {
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
@@ -55,11 +56,11 @@ static void BM_unistd_gettid(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_unistd_gettid);
#endif
static void BM_unistd_gettid_syscall(int iters) {
BENCHMARK_NO_ARG(BM_unistd_gettid_syscall);
void BM_unistd_gettid_syscall::Run(int iters) {
StartBenchmarkTiming();
for (int i = 0; i < iters; ++i) {
@@ -68,4 +69,3 @@ static void BM_unistd_gettid_syscall(int iters) {
StopBenchmarkTiming();
}
BENCHMARK(BM_unistd_gettid_syscall);

81
benchmarks/utils.cpp Normal file
View File

@@ -0,0 +1,81 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <inttypes.h>
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>
#include <string>
#include "utils.h"
int Round(int n) {
int base = 1;
while (base*10 < n) {
base *= 10;
}
if (n < 2*base) {
return 2*base;
}
if (n < 5*base) {
return 5*base;
}
return 10*base;
}
// Similar to the code in art, but supporting both binary and decimal prefixes.
std::string PrettyInt(long value, size_t base) {
if (base != 2 && base != 10) abort();
uint64_t count = static_cast<uint64_t>(value);
bool negative_number = false;
if (value < 0) {
negative_number = true;
count = static_cast<uint64_t>(-value);
}
// The byte thresholds at which we display amounts. A count is displayed
// in unit U when kUnitThresholds[U] <= bytes < kUnitThresholds[U+1].
static const uint64_t kUnitThresholds2[] = {
1024*1024*1024 /* Gi */, 2*1024*1024 /* Mi */, 3*1024 /* Ki */, 0,
};
static const uint64_t kUnitThresholds10[] = {
1000*1000*1000 /* G */, 2*1000*1000 /* M */, 3*1000 /* k */, 0,
};
static const uint64_t kAmountPerUnit2[] = { 1024*1024*1024, 1024*1024, 1024, 1 };
static const uint64_t kAmountPerUnit10[] = { 1000*1000*1000, 1000*1000, 1000, 1 };
static const char* const kUnitStrings2[] = { "Gi", "Mi", "Ki", "" };
static const char* const kUnitStrings10[] = { "G", "M", "k", "" };
// Which set are we using?
const uint64_t* kUnitThresholds = ((base == 2) ? kUnitThresholds2 : kUnitThresholds10);
const uint64_t* kAmountPerUnit = ((base == 2) ? kAmountPerUnit2 : kAmountPerUnit10);
const char* const* kUnitStrings = ((base == 2) ? kUnitStrings2 : kUnitStrings10);
size_t i = 0;
for (; kUnitThresholds[i] != 0; ++i) {
if (count >= kUnitThresholds[i]) {
break;
}
}
char* s = NULL;
asprintf(&s, "%s%" PRId64 "%s", (negative_number ? "-" : ""),
count / kAmountPerUnit[i], kUnitStrings[i]);
std::string result(s);
free(s);
return result;
}

26
benchmarks/utils.h Normal file
View File

@@ -0,0 +1,26 @@
/*
* Copyright (C) 2012 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef BENCHMARKS_UTILS_H
#define BENCHMARKS_UTILS_H
#include <stddef.h>
#include <string>
int Round(int n);
std::string PrettyInt(long value, size_t base);
#endif // BENCHMARKS_UTILS_H

View File

@@ -61,14 +61,24 @@ libc_common_src_files := \
stdio/fread.c \
stdio/snprintf.c\
stdio/sprintf.c \
stdio/stdio.c \
stdio/stdio_ext.cpp \
stdlib/atexit.c \
stdlib/exit.c \
# Fortify implementations of libc functions.
libc_common_src_files += \
bionic/__FD_chk.cpp \
bionic/__fgets_chk.cpp \
bionic/__memchr_chk.cpp \
bionic/__memmove_chk.cpp \
bionic/__memrchr_chk.cpp \
bionic/__poll_chk.cpp \
bionic/__pread64_chk.cpp \
bionic/__pread_chk.cpp \
bionic/__read_chk.cpp \
bionic/__readlink_chk.cpp \
bionic/__readlinkat_chk.cpp \
bionic/__recvfrom_chk.cpp \
bionic/__stpcpy_chk.cpp \
bionic/__stpncpy_chk.cpp \
@@ -83,7 +93,7 @@ libc_common_src_files += \
bionic/__vsnprintf_chk.cpp \
bionic/__vsprintf_chk.cpp \
libc_bionic_src_files := \
libc_bionic_ndk_src_files := \
bionic/abort.cpp \
bionic/accept.cpp \
bionic/accept4.cpp \
@@ -102,6 +112,7 @@ libc_bionic_src_files := \
bionic/clock_getcpuclockid.cpp \
bionic/clock_nanosleep.cpp \
bionic/clone.cpp \
bionic/close.cpp \
bionic/__cmsg_nxthdr.cpp \
bionic/connect.cpp \
bionic/ctype.cpp \
@@ -111,16 +122,20 @@ libc_bionic_src_files := \
bionic/epoll_pwait.cpp \
bionic/epoll_wait.cpp \
bionic/__errno.cpp \
bionic/error.cpp \
bionic/eventfd_read.cpp \
bionic/eventfd_write.cpp \
bionic/faccessat.cpp \
bionic/fchmod.cpp \
bionic/fchmodat.cpp \
bionic/ffs.cpp \
bionic/fgetxattr.cpp \
bionic/flockfile.cpp \
bionic/fork.cpp \
bionic/fpclassify.cpp \
bionic/fsetxattr.cpp \
bionic/ftruncate.cpp \
bionic/futimens.cpp \
bionic/getauxval.cpp \
bionic/getcwd.cpp \
bionic/getentropy_linux.c \
bionic/gethostname.cpp \
bionic/getpgrp.cpp \
bionic/getpid.cpp \
@@ -141,6 +156,7 @@ libc_bionic_src_files := \
bionic/mbrtoc16.cpp \
bionic/mbrtoc32.cpp \
bionic/mbstate.cpp \
bionic/mempcpy.cpp \
bionic/mkdir.cpp \
bionic/mkfifo.cpp \
bionic/mknod.cpp \
@@ -155,27 +171,6 @@ libc_bionic_src_files := \
bionic/posix_fallocate.cpp \
bionic/posix_madvise.cpp \
bionic/posix_timers.cpp \
bionic/pthread_atfork.cpp \
bionic/pthread_attr.cpp \
bionic/pthread_cond.cpp \
bionic/pthread_create.cpp \
bionic/pthread_detach.cpp \
bionic/pthread_equal.cpp \
bionic/pthread_exit.cpp \
bionic/pthread_getcpuclockid.cpp \
bionic/pthread_getschedparam.cpp \
bionic/pthread_gettid_np.cpp \
bionic/pthread_internals.cpp \
bionic/pthread_join.cpp \
bionic/pthread_key.cpp \
bionic/pthread_kill.cpp \
bionic/pthread_mutex.cpp \
bionic/pthread_once.cpp \
bionic/pthread_rwlock.cpp \
bionic/pthread_self.cpp \
bionic/pthread_setname_np.cpp \
bionic/pthread_setschedparam.cpp \
bionic/pthread_sigmask.cpp \
bionic/ptrace.cpp \
bionic/pty.cpp \
bionic/raise.cpp \
@@ -218,7 +213,6 @@ libc_bionic_src_files := \
bionic/strtold.cpp \
bionic/stubs.cpp \
bionic/symlink.cpp \
bionic/sysconf.cpp \
bionic/sysinfo.cpp \
bionic/syslog.cpp \
bionic/sys_siglist.c \
@@ -231,10 +225,27 @@ libc_bionic_src_files := \
bionic/umount.cpp \
bionic/unlink.cpp \
bionic/utimes.cpp \
bionic/vdso.cpp \
bionic/wait.cpp \
bionic/wchar.cpp \
bionic/wctype.cpp \
bionic/wmempcpy.cpp \
libc_bionic_src_files :=
# The fork implementation depends on pthread data, so we can't include it in
# libc_ndk.a.
libc_bionic_src_files += bionic/fork.cpp
# The data that backs getauxval is initialized in the libc init functions which
# are invoked by the linker. If this file is included in libc_ndk.a, only one of
# the copies of the global data will be initialized, resulting in nullptr
# dereferences.
libc_bionic_src_files += bionic/getauxval.cpp
# These three require getauxval, which isn't available on older platforms.
libc_bionic_src_files += bionic/getentropy_linux.c
libc_bionic_src_files += bionic/sysconf.cpp
libc_bionic_src_files += bionic/vdso.cpp
libc_cxa_src_files := \
bionic/__cxa_guard.cpp \
@@ -269,7 +280,6 @@ libc_upstream_freebsd_src_files := \
upstream-freebsd/lib/libc/string/wcsspn.c \
upstream-freebsd/lib/libc/string/wcstok.c \
upstream-freebsd/lib/libc/string/wmemchr.c \
upstream-freebsd/lib/libc/string/wmemcpy.c \
upstream-freebsd/lib/libc/string/wmemset.c \
libc_upstream_netbsd_src_files := \
@@ -333,10 +343,13 @@ libc_upstream_openbsd_gdtoa_src_files_64 := \
$(libc_upstream_openbsd_gdtoa_src_files) \
upstream-openbsd/lib/libc/gdtoa/strtorQ.c \
# These two depend on getentropy_linux.cpp, which isn't in libc_ndk.a.
libc_upstream_openbsd_src_files := \
upstream-openbsd/lib/libc/compat-43/killpg.c \
upstream-openbsd/lib/libc/crypt/arc4random.c \
upstream-openbsd/lib/libc/crypt/arc4random_uniform.c \
libc_upstream_openbsd_ndk_src_files := \
upstream-openbsd/lib/libc/compat-43/killpg.c \
upstream-openbsd/lib/libc/gen/alarm.c \
upstream-openbsd/lib/libc/gen/ctype_.c \
upstream-openbsd/lib/libc/gen/daemon.c \
@@ -450,7 +463,6 @@ libc_upstream_openbsd_src_files := \
upstream-openbsd/lib/libc/stdio/setbuffer.c \
upstream-openbsd/lib/libc/stdio/setvbuf.c \
upstream-openbsd/lib/libc/stdio/sscanf.c \
upstream-openbsd/lib/libc/stdio/stdio.c \
upstream-openbsd/lib/libc/stdio/swprintf.c \
upstream-openbsd/lib/libc/stdio/swscanf.c \
upstream-openbsd/lib/libc/stdio/tempnam.c \
@@ -476,11 +488,9 @@ libc_upstream_openbsd_src_files := \
upstream-openbsd/lib/libc/stdio/wprintf.c \
upstream-openbsd/lib/libc/stdio/wscanf.c \
upstream-openbsd/lib/libc/stdio/wsetup.c \
upstream-openbsd/lib/libc/stdlib/atexit.c \
upstream-openbsd/lib/libc/stdlib/atoi.c \
upstream-openbsd/lib/libc/stdlib/atol.c \
upstream-openbsd/lib/libc/stdlib/atoll.c \
upstream-openbsd/lib/libc/stdlib/exit.c \
upstream-openbsd/lib/libc/stdlib/getenv.c \
upstream-openbsd/lib/libc/stdlib/insque.c \
upstream-openbsd/lib/libc/stdlib/lsearch.c \
@@ -505,13 +515,59 @@ libc_upstream_openbsd_src_files := \
upstream-openbsd/lib/libc/string/strspn.c \
upstream-openbsd/lib/libc/string/strstr.c \
upstream-openbsd/lib/libc/string/strtok.c \
upstream-openbsd/lib/libc/string/wmemcpy.c \
upstream-openbsd/lib/libc/string/wcslcpy.c \
upstream-openbsd/lib/libc/string/wcsstr.c \
upstream-openbsd/lib/libc/string/wcswidth.c \
libc_pthread_src_files := \
bionic/pthread_atfork.cpp \
bionic/pthread_attr.cpp \
bionic/pthread_cond.cpp \
bionic/pthread_create.cpp \
bionic/pthread_detach.cpp \
bionic/pthread_equal.cpp \
bionic/pthread_exit.cpp \
bionic/pthread_getcpuclockid.cpp \
bionic/pthread_getschedparam.cpp \
bionic/pthread_gettid_np.cpp \
bionic/pthread_internal.cpp \
bionic/pthread_join.cpp \
bionic/pthread_key.cpp \
bionic/pthread_kill.cpp \
bionic/pthread_mutex.cpp \
bionic/pthread_once.cpp \
bionic/pthread_rwlock.cpp \
bionic/pthread_self.cpp \
bionic/pthread_setname_np.cpp \
bionic/pthread_setschedparam.cpp \
bionic/pthread_sigmask.cpp \
libc_thread_atexit_impl_src_files := \
bionic/__cxa_thread_atexit_impl.cpp \
libc_arch_static_src_files := \
bionic/dl_iterate_phdr_static.cpp \
# Various kinds of cruft.
# ========================================================
libc_common_src_files += \
bionic/ndk_cruft.cpp \
libc_bionic_ndk_src_files_32 += \
bionic/mmap.cpp \
libc_common_src_files_32 += \
bionic/legacy_32_bit_support.cpp \
bionic/time64.c \
libc_netbsd_src_files_32 += \
upstream-netbsd/common/lib/libc/hash/sha1/sha1.c \
libc_openbsd_src_files_32 += \
upstream-openbsd/lib/libc/stdio/putw.c \
# Define some common cflags
# ========================================================
libc_common_cflags := \
@@ -568,12 +624,13 @@ libc_common_c_includes += \
$(LOCAL_PATH)/stdio \
# ========================================================
# Add in the arch-specific flags.
# Add in the arch or 32-bit specific flags
# Must be called with $(eval).
# $(1): the LOCAL_ variable name
# $(2): the bionic variable name to pull in
define patch-up-arch-specific-flags
$(1)_$(TARGET_ARCH) += $($(2)_$(TARGET_ARCH))
$(1)_32 += $($(2)_32)
ifdef TARGET_2ND_ARCH
$(1)_$(TARGET_2ND_ARCH) += $($(2)_$(TARGET_2ND_ARCH))
endif
@@ -672,15 +729,16 @@ LOCAL_CFLAGS += \
-DINET6 \
-fvisibility=hidden \
-Wno-unused-parameter \
-I$(LOCAL_PATH)/dns/include \
-I$(LOCAL_PATH)/private \
-I$(LOCAL_PATH)/upstream-netbsd/lib/libc/include \
-I$(LOCAL_PATH)/upstream-netbsd/android/include \
-include netbsd-compat.h \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_C_INCLUDES := $(libc_common_c_includes) \
$(LOCAL_PATH)/dns/include \
$(LOCAL_PATH)/private \
$(LOCAL_PATH)/upstream-netbsd/lib/libc/include \
$(LOCAL_PATH)/upstream-netbsd/android/include \
LOCAL_MODULE := libc_dns
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
@@ -706,13 +764,14 @@ LOCAL_SRC_FILES := $(libc_upstream_freebsd_src_files)
LOCAL_CFLAGS := \
$(libc_common_cflags) \
-Wno-sign-compare -Wno-uninitialized \
-I$(LOCAL_PATH)/upstream-freebsd/android/include \
-I$(LOCAL_PATH)/upstream-freebsd/lib/libc/include \
-include freebsd-compat.h \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_C_INCLUDES := $(libc_common_c_includes) \
$(LOCAL_PATH)/upstream-freebsd/android/include \
$(LOCAL_PATH)/upstream-freebsd/lib/libc/include \
LOCAL_MODULE := libc_freebsd
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
@@ -740,13 +799,14 @@ LOCAL_CFLAGS := \
$(libc_common_cflags) \
-Wno-sign-compare -Wno-uninitialized \
-DPOSIX_MISTAKE \
-I$(LOCAL_PATH)/upstream-netbsd/android/include \
-I$(LOCAL_PATH)/upstream-netbsd/lib/libc/include \
-include netbsd-compat.h \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_C_INCLUDES := $(libc_common_c_includes) \
$(LOCAL_PATH)/upstream-netbsd/android/include \
$(LOCAL_PATH)/upstream-netbsd/lib/libc/include \
LOCAL_MODULE := libc_netbsd
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
@@ -760,6 +820,46 @@ $(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_netbsd_src_files
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_openbsd_ndk.a - upstream OpenBSD C library code
# that can be safely included in the libc_ndk.a (doesn't
# contain any troublesome global data or constructors).
# ========================================================
#
# These files are built with the openbsd-compat.h header file
# automatically included.
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(libc_upstream_openbsd_ndk_src_files)
LOCAL_CLANG := $(use_clang)
LOCAL_CFLAGS := \
$(libc_common_cflags) \
-Wno-sign-compare \
-Wno-uninitialized \
-Wno-unused-parameter \
-include openbsd-compat.h \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes) \
$(LOCAL_PATH)/private \
$(LOCAL_PATH)/upstream-openbsd/android/include \
$(LOCAL_PATH)/upstream-openbsd/lib/libc/include \
$(LOCAL_PATH)/upstream-openbsd/lib/libc/gdtoa/ \
LOCAL_MODULE := libc_openbsd_ndk
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
$(eval $(call patch-up-arch-specific-flags,LOCAL_CFLAGS,libc_common_cflags))
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_openbsd.a - upstream OpenBSD C library code
# ========================================================
@@ -770,27 +870,23 @@ include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(libc_upstream_openbsd_src_files)
ifneq (,$(filter $(TARGET_ARCH),x86 x86_64))
# Clang has wrong long double size or LDBL_MANT_DIG, http://b/17163651.
LOCAL_CLANG := false
else
LOCAL_CLANG := $(use_clang)
endif
LOCAL_CLANG := $(use_clang)
LOCAL_CFLAGS := \
$(libc_common_cflags) \
-Wno-sign-compare \
-Wno-uninitialized \
-Wno-unused-parameter \
-I$(LOCAL_PATH)/private \
-I$(LOCAL_PATH)/upstream-openbsd/android/include \
-I$(LOCAL_PATH)/upstream-openbsd/lib/libc/include \
-I$(LOCAL_PATH)/upstream-openbsd/lib/libc/gdtoa/ \
-include openbsd-compat.h \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_C_INCLUDES := $(libc_common_c_includes) \
$(LOCAL_PATH)/private \
$(LOCAL_PATH)/upstream-openbsd/android/include \
$(LOCAL_PATH)/upstream-openbsd/lib/libc/include \
$(LOCAL_PATH)/upstream-openbsd/lib/libc/gdtoa/ \
LOCAL_MODULE := libc_openbsd
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
@@ -814,25 +910,21 @@ include $(CLEAR_VARS)
LOCAL_SRC_FILES_32 := $(libc_upstream_openbsd_gdtoa_src_files_32)
LOCAL_SRC_FILES_64 := $(libc_upstream_openbsd_gdtoa_src_files_64)
ifneq (,$(filter $(TARGET_ARCH),x86 x86_64))
# Clang has wrong long double size or LDBL_MANT_DIG, http://b/17163651.
LOCAL_CLANG := false
else
LOCAL_CLANG := $(use_clang)
endif
LOCAL_CLANG := $(use_clang)
LOCAL_CFLAGS := \
$(libc_common_cflags) \
-Wno-sign-compare -Wno-uninitialized \
-fvisibility=hidden \
-I$(LOCAL_PATH)/private \
-I$(LOCAL_PATH)/upstream-openbsd/android/include \
-I$(LOCAL_PATH)/upstream-openbsd/lib/libc/include \
-include openbsd-compat.h \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_C_INCLUDES := $(libc_common_c_includes) \
$(LOCAL_PATH)/private \
$(LOCAL_PATH)/upstream-openbsd/android/include \
$(LOCAL_PATH)/upstream-openbsd/lib/libc/include \
LOCAL_MODULE := libc_gdtoa
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
@@ -854,15 +946,8 @@ LOCAL_SRC_FILES := $(libc_bionic_src_files)
LOCAL_CFLAGS := $(libc_common_cflags) \
-Wframe-larger-than=2048 \
# ssse3-strcmp-slm.S does not compile with Clang.
LOCAL_CLANG_ASFLAGS_x86_64 += -no-integrated-as
# memcpy.S, memchr.S, etc. do not compile with Clang.
LOCAL_CLANG_ASFLAGS_arm += -no-integrated-as
LOCAL_CLANG_ASFLAGS_arm64 += -no-integrated-as
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags) -Wold-style-cast
LOCAL_C_INCLUDES := $(libc_common_c_includes) bionic/libstdc++/include
LOCAL_MODULE := libc_bionic
LOCAL_CLANG := $(use_clang)
@@ -877,6 +962,80 @@ $(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_bionic_src_files
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_bionic_ndk.a - The portions of libc_bionic that can
# be safely used in libc_ndk.a (no troublesome global data
# or constructors).
# ========================================================
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(libc_bionic_ndk_src_files)
LOCAL_CFLAGS := $(libc_common_cflags) \
-Wframe-larger-than=2048 \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags) -Wold-style-cast
LOCAL_C_INCLUDES := $(libc_common_c_includes) bionic/libstdc++/include
LOCAL_MODULE := libc_bionic_ndk
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
$(eval $(call patch-up-arch-specific-flags,LOCAL_CFLAGS,libc_common_cflags))
$(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_bionic_ndk_src_files))
include $(BUILD_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(libc_thread_atexit_impl_src_files)
LOCAL_CFLAGS := $(libc_common_cflags) -Wframe-larger-than=2048
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags) -Wold-style-cast
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_MODULE := libc_thread_atexit_impl
# TODO: Clang tries to use __tls_get_addr which is not supported yet
# remove after it is implemented.
LOCAL_CLANG := false
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_pthread.a - pthreads parts that previously lived in
# libc_bionic.a. Relocated to their own library because
# they can't be included in libc_ndk.a (as they layout of
# pthread_t has changed over the years and has ABI
# compatibility issues).
# ========================================================
include $(CLEAR_VARS)
LOCAL_SRC_FILES := $(libc_pthread_src_files)
LOCAL_CFLAGS := $(libc_common_cflags) \
-Wframe-larger-than=2048 \
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags) -Wold-style-cast
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_MODULE := libc_pthread
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_cxa.a - Things traditionally in libstdc++
# ========================================================
@@ -896,7 +1055,14 @@ LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
# b/17574078: Need to disable coverage until we have a prebuilt libprofile_rt.
# Since this is a static library built with clang, it needs to link
# libprofile_rt when it is linked into the final binary. Since the final binary
# is built with GCC, it won't link libprofile_rt. We can't very easily just add
# libprofile_rt to all link lines the way we've done for libgcov because
# libprofile_rt isn't prebuilt, and it would be tricky to write a rule that
# would make sure libprofile_rt is built.
LOCAL_NATIVE_COVERAGE := false
include $(BUILD_STATIC_LIBRARY)
@@ -943,6 +1109,73 @@ LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_ndk.a
# Compatibility library for the NDK. This library contains
# all the parts of libc that are safe to statically link.
# We can't safely statically link things that can only run
# on a certain version of the OS. Examples include
# anything that talks to netd (a large portion of the DNS
# code) and anything that is dependent on the layout of a
# data structure that has changed across releases (such as
# pthread_t).
# ========================================================
include $(CLEAR_VARS)
LOCAL_MODULE := libc_ndk
LOCAL_CLANG := $(use_clang)
LOCAL_ASFLAGS := $(LOCAL_CFLAGS)
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CFLAGS := $(libc_common_cflags) -fvisibility=hidden -O0
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_SRC_FILES := \
$(libc_common_src_files) \
$(libc_arch_dynamic_src_files) \
$(libc_ndk_stub_src_files) \
bionic/malloc_debug_common.cpp \
LOCAL_SRC_FILES_arm += \
arch-common/bionic/crtbegin_so.c \
arch-arm/bionic/atexit_legacy.c \
arch-common/bionic/crtend_so.S \
LOCAL_CFLAGS := $(libc_common_cflags) \
-DLIBC_STATIC \
LOCAL_WHOLE_STATIC_LIBRARIES := \
libc_bionic_ndk \
libc_cxa \
libc_freebsd \
libc_gdtoa \
libc_malloc \
libc_netbsd \
libc_openbsd_ndk \
libc_stack_protector \
libc_syscalls \
libc_tzcode \
libm \
LOCAL_WHOLE_STATIC_LIBRARIES_arm := libc_aeabi
LOCAL_CXX_STL := none
ifneq ($(MALLOC_IMPL),dlmalloc)
LOCAL_WHOLE_STATIC_LIBRARIES += libjemalloc
endif
$(eval $(call patch-up-arch-specific-flags,LOCAL_CFLAGS,libc_common_cflags))
$(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_common_src_files))
$(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_arch_dynamic_src_files))
$(eval $(call patch-up-arch-specific-flags,LOCAL_ASFLAGS,LOCAL_CFLAGS))
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
include $(BUILD_STATIC_LIBRARY)
# ========================================================
# libc_common.a
# ========================================================
@@ -959,6 +1192,7 @@ LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_WHOLE_STATIC_LIBRARIES := \
libc_bionic \
libc_bionic_ndk \
libc_cxa \
libc_dns \
libc_freebsd \
@@ -966,16 +1200,15 @@ LOCAL_WHOLE_STATIC_LIBRARIES := \
libc_malloc \
libc_netbsd \
libc_openbsd \
libc_openbsd_ndk \
libc_pthread \
libc_stack_protector \
libc_syscalls \
libc_thread_atexit_impl \
libc_tzcode \
LOCAL_WHOLE_STATIC_LIBRARIES_arm := libc_aeabi
ifneq ($(MALLOC_IMPL),dlmalloc)
LOCAL_WHOLE_STATIC_LIBRARIES += libjemalloc
endif
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
@@ -1004,7 +1237,6 @@ include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
$(libc_arch_static_src_files) \
$(libc_static_common_src_files) \
bionic/libc_init_static.cpp
LOCAL_C_INCLUDES := $(libc_common_c_includes)
@@ -1056,7 +1288,6 @@ include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
$(libc_arch_static_src_files) \
$(libc_static_common_src_files) \
bionic/malloc_debug_common.cpp \
bionic/libc_init_static.cpp \
@@ -1070,6 +1301,11 @@ LOCAL_MODULE := libc
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_WHOLE_STATIC_LIBRARIES := libc_common
ifneq ($(MALLOC_IMPL),dlmalloc)
LOCAL_WHOLE_STATIC_LIBRARIES += libjemalloc
endif
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
LOCAL_ADDRESS_SANITIZER := false
@@ -1088,23 +1324,31 @@ include $(CLEAR_VARS)
LOCAL_CFLAGS := $(libc_common_cflags)
LOCAL_CONLYFLAGS := $(libc_common_conlyflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
LOCAL_C_INCLUDES := $(libc_common_c_includes)
LOCAL_SRC_FILES := \
arch-common/bionic/crtbegin_so.c \
arch-common/bionic/crtbrand.S \
$(libc_arch_dynamic_src_files) \
$(libc_static_common_src_files) \
bionic/malloc_debug_common.cpp \
bionic/libc_init_dynamic.cpp \
bionic/NetdClient.cpp \
arch-common/bionic/crtend_so.S \
LOCAL_MODULE := libc
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_REQUIRED_MODULES := tzdata
LOCAL_ADDITIONAL_DEPENDENCIES := \
$(libc_common_additional_dependencies) \
$(LOCAL_PATH)/libc.map \
# Leave the symbols in the shared library so that stack unwinders can produce
# meaningful name resolution.
LOCAL_STRIP_MODULE := keep_symbols
# Do not pack libc.so relocations; see http://b/20645321 for details.
LOCAL_PACK_MODULE_RELOCATIONS := false
# WARNING: The only library libc.so should depend on is libdl.so! If you add other libraries,
# make sure to add -Wl,--exclude-libs=libgcc.a to the LOCAL_LDFLAGS for those libraries. This
# ensures that symbols that are pulled into those new libraries from libgcc.a are not declared
@@ -1115,26 +1359,37 @@ LOCAL_STRIP_MODULE := keep_symbols
LOCAL_SHARED_LIBRARIES := libdl
LOCAL_WHOLE_STATIC_LIBRARIES := libc_common
ifneq ($(MALLOC_IMPL),dlmalloc)
LOCAL_WHOLE_STATIC_LIBRARIES += libjemalloc
endif
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
# Don't re-export new/delete and friends, even if the compiler really wants to.
LOCAL_LDFLAGS := -Wl,--version-script,$(LOCAL_PATH)/libc.map
# We'd really like to do this for all architectures, but since this wasn't done
# before, these symbols must continue to be exported on LP32 for binary
# compatibility.
LOCAL_LDFLAGS_arm64 := -Wl,--exclude-libs,libgcc.a
LOCAL_LDFLAGS_mips64 := -Wl,--exclude-libs,libgcc.a
LOCAL_LDFLAGS_x86_64 := -Wl,--exclude-libs,libgcc.a
LOCAL_LDFLAGS_64 := -Wl,--exclude-libs,libgcc.a
# TODO: This is to work around b/19059885. Remove after root cause is fixed
LOCAL_LDFLAGS_arm := -Wl,--hash-style=both
LOCAL_LDFLAGS_x86 := -Wl,--hash-style=both
$(eval $(call patch-up-arch-specific-flags,LOCAL_CFLAGS,libc_common_cflags))
$(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_arch_dynamic_src_files))
$(eval $(call patch-up-arch-specific-flags,LOCAL_SRC_FILES,libc_static_common_src_files))
LOCAL_NO_CRT := true
LOCAL_ASFLAGS += $(libc_crt_target_cflags)
# special for arm
LOCAL_NO_CRT_arm := true
LOCAL_CFLAGS_arm += -DCRT_LEGACY_WORKAROUND
LOCAL_SRC_FILES_arm += \
arch-common/bionic/crtbegin_so.c \
arch-arm/bionic/atexit_legacy.c \
arch-common/bionic/crtend_so.S
arch-arm/bionic/atexit_legacy.c
LOCAL_ADDRESS_SANITIZER := false
LOCAL_NATIVE_COVERAGE := $(bionic_coverage)
@@ -1171,16 +1426,22 @@ LOCAL_SRC_FILES := \
LOCAL_MODULE := libc_malloc_debug_leak
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_ADDITIONAL_DEPENDENCIES := \
$(libc_common_additional_dependencies) \
$(LOCAL_PATH)/version_script.txt \
LOCAL_SHARED_LIBRARIES := libc libdl
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
# Only need this for arm since libc++ uses its own unwind code that
# doesn't mix with the other default unwind code.
LOCAL_STATIC_LIBRARIES_arm := libunwind_llvm libc++abi
LOCAL_STATIC_LIBRARIES_arm := libunwind_llvm
LOCAL_STATIC_LIBRARIES += libc++abi
LOCAL_ALLOW_UNDEFINED_SYMBOLS := true
# Don't re-export new/delete and friends, even if the compiler really wants to.
LOCAL_LDFLAGS := -Wl,--version-script,$(LOCAL_PATH)/version_script.txt
# Don't install on release build
LOCAL_MODULE_TAGS := eng debug
LOCAL_ADDRESS_SANITIZER := false
@@ -1210,12 +1471,17 @@ LOCAL_SRC_FILES := \
LOCAL_MODULE := libc_malloc_debug_qemu
LOCAL_CLANG := $(use_clang)
LOCAL_ADDITIONAL_DEPENDENCIES := $(libc_common_additional_dependencies)
LOCAL_ADDITIONAL_DEPENDENCIES := \
$(libc_common_additional_dependencies) \
$(LOCAL_PATH)/version_script.txt \
LOCAL_SHARED_LIBRARIES := libc libdl
LOCAL_CXX_STL := none
LOCAL_SYSTEM_SHARED_LIBRARIES :=
# Don't re-export new/delete and friends, even if the compiler really wants to.
LOCAL_LDFLAGS := -Wl,--version-script,$(LOCAL_PATH)/version_script.txt
# Don't install on release build
LOCAL_MODULE_TAGS := eng debug
LOCAL_ADDRESS_SANITIZER := false
@@ -1239,6 +1505,11 @@ include $(CLEAR_VARS)
LOCAL_C_INCLUDES := $(libc_common_c_includes) bionic/libstdc++/include
LOCAL_CFLAGS := $(libc_common_cflags)
LOCAL_CPPFLAGS := $(libc_common_cppflags)
# TODO: This is to work around b/19059885. Remove after root cause is fixed
LOCAL_LDFLAGS_arm := -Wl,--hash-style=both
LOCAL_LDFLAGS_x86 := -Wl,--hash-style=both
LOCAL_SRC_FILES := $(libstdcxx_common_src_files)
LOCAL_MODULE:= libstdc++
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk

View File

@@ -307,34 +307,6 @@ SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (C) 2008-2010 The Android Open Source Project
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (C) 2009 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
@@ -454,22 +426,6 @@ Android adaptation and tweak by Jim Huang <jserv@0xlab.org>.
-------------------------------------------------------------------
Copyright (C) 2011 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-------------------------------------------------------------------
Copyright (C) 2011 The Android Open Source Project
All rights reserved.
@@ -688,6 +644,50 @@ SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (C) 2015 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-------------------------------------------------------------------
Copyright (C) 2015 The Android Open Source Project
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1980, 1983, 1988, 1993
The Regents of the University of California. All rights reserved.
@@ -1679,35 +1679,6 @@ SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1990 Regents of the University of California.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1990 The Regents of the University of California.
All rights reserved.
@@ -2539,33 +2510,6 @@ SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1993 Christopher G. Demetriou
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1993 Martin Birgmeier
All rights reserved.
@@ -2606,33 +2550,6 @@ ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1995, 1996 Carnegie-Mellon University.
All rights reserved.
Author: Chris G. Demetriou
Permission to use, copy, modify and distribute this software and
its documentation is hereby granted, provided that both the copyright
notice and this permission notice appear in all copies of the
software, derivative works or modified versions, and any portions
thereof, and that both notices appear in supporting documentation.
CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
Carnegie Mellon requests users of this software to return to
Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
School of Computer Science
Carnegie Mellon University
Pittsburgh PA 15213-3890
any improvements or extensions that they make and grant Carnegie the
rights to redistribute these changes.
-------------------------------------------------------------------
Copyright (c) 1996 by Internet Software Consortium.
Permission to use, copy, modify, and distribute this software for any
@@ -2685,63 +2602,6 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-------------------------------------------------------------------
Copyright (c) 1996-2004 Per Fogelstrom, Opsycon AB
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1997 Mark Brinicombe
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software
must display the following acknowledgement:
This product includes software developed by Mark Brinicombe
4. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 1997 Mark Brinicombe
Copyright (c) 2010 Android Open Source Project.
All rights reserved.
@@ -3365,34 +3225,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 2002 Opsycon AB (www.opsycon.se / www.opsycon.com)
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of Opsycon AB nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 2002 The NetBSD Foundation, Inc.
All rights reserved.
@@ -3936,6 +3768,22 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-------------------------------------------------------------------
Copyright (c) 2007 Todd C. Miller <Todd.Miller@courtesan.com>
Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-------------------------------------------------------------------
Copyright (c) 2007-2008 Michael G Schwern
This software originally derived from Paul Sheer's pivotal_gmtime_r.c.
@@ -4025,6 +3873,22 @@ SUCH DAMAGE.
-------------------------------------------------------------------
Copyright (c) 2008 Otto Moerbeek <otto@drijf.net>
Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-------------------------------------------------------------------
Copyright (c) 2008 Todd C. Miller <millert@openbsd.org>
Permission to use, copy, modify, and distribute this software for any
@@ -4611,35 +4475,32 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-------------------------------------------------------------------
Copyright (c) 2013, Linaro Limited
All rights reserved.
Copyright (c) 2013 The NetBSD Foundation, Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
This code is derived from software contributed to The NetBSD Foundation
by Christos Zoulas.
* Redistributions of source code must retain the above copyright
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of Linaro Limited nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------
@@ -4861,31 +4722,6 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------
Copyright 2000 David E. O'Brien, John D. Polstra.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------
Copyright 2008 Android Open Source Project (source port randomization)
Copyright (c) 1985, 1989, 1993
The Regents of the University of California. All rights reserved.

View File

@@ -95,7 +95,7 @@ ssize_t pread64(int, void*, size_t, off64_t) arm,mips,x86
ssize_t pread64|pread(int, void*, size_t, off_t) arm64,mips64,x86_64
ssize_t pwrite64(int, void*, size_t, off64_t) arm,mips,x86
ssize_t pwrite64|pwrite(int, void*, size_t, off_t) arm64,mips64,x86_64
int close(int) all
int ___close:close(int) all
pid_t __getpid:getpid() all
int munmap(void*, size_t) all
void* mremap(void*, size_t, size_t, unsigned long) all
@@ -113,7 +113,7 @@ int writev(int, const struct iovec*, int) all
int __fcntl64:fcntl64(int, int, void*) arm,mips,x86
int fcntl(int, int, void*) arm64,mips64,x86_64
int flock(int, int) all
int fchmod(int, mode_t) all
int ___fchmod:fchmod(int, mode_t) all
int dup(int) all
int pipe2(int*, int) all
int dup3(int, int, int) all
@@ -122,19 +122,19 @@ int fdatasync(int) all
int fchown:fchown32(int, uid_t, gid_t) arm,x86
int fchown:fchown(int, uid_t, gid_t) arm64,mips,mips64,x86_64
void sync(void) all
int fsetxattr(int, const char*, const void*, size_t, int) all
ssize_t fgetxattr(int, const char*, void*, size_t) all
int ___fsetxattr:fsetxattr(int, const char*, const void*, size_t, int) all
ssize_t ___fgetxattr:fgetxattr(int, const char*, void*, size_t) all
ssize_t flistxattr(int, char*, size_t) all
int fremovexattr(int, const char*) all
int __getdents64:getdents64(unsigned int, struct dirent*, unsigned int) arm,arm64,mips,mips64,x86,x86_64
int __openat:openat(int, const char*, int, mode_t) all
int faccessat(int, const char*, int, int) all
int fchmodat(int, const char*, mode_t, int) all
int ___faccessat:faccessat(int, const char*, int) all
int ___fchmodat:fchmodat(int, const char*, mode_t) all
int fchownat(int, const char*, uid_t, gid_t, int) all
int fstatat64|fstatat:fstatat64(int, const char*, struct stat*, int) arm,mips,x86
int fstatat64|fstatat:newfstatat(int, const char*, struct stat*, int) arm64,mips64,x86_64
int fstatat64|fstatat:newfstatat(int, const char*, struct stat*, int) arm64,x86_64
int linkat(int, const char*, int, const char*, int) all
int mkdirat(int, const char*, mode_t) all
int mknodat(int, const char*, mode_t, dev_t) all
@@ -151,7 +151,6 @@ int utimensat(int, const char*, const struct timespec times[2], int) all
off_t lseek(int, off_t, int) arm,mips,x86
int __llseek:_llseek(int, unsigned long, unsigned long, off64_t*, int) arm,mips,x86
off_t lseek|lseek64(int, off_t, int) arm64,mips64,x86_64
int ftruncate(int, off_t) arm,mips,x86
int ftruncate64(int, off64_t) arm,mips,x86
int ftruncate|ftruncate64(int, off_t) arm64,mips64,x86_64
ssize_t sendfile(int out_fd, int in_fd, off_t* offset, size_t count) arm,mips,x86
@@ -174,12 +173,12 @@ int __fadvise64:fadvise64_64(int, off64_t, off64_t, int) x86
int __fadvise64:fadvise64(int, off64_t, off64_t, int) arm64,mips,mips64,x86_64
int __fstatfs64:fstatfs64(int, size_t, struct statfs*) arm,mips,x86
int fstatfs64|fstatfs:fstatfs(int, struct statfs*) arm64,mips64,x86_64
int __fstatfs:fstatfs(int, struct statfs*) arm64,mips64,x86_64
int __statfs64:statfs64(const char*, size_t, struct statfs*) arm,mips,x86
int statfs64|statfs:statfs(const char*, struct statfs*) arm64,mips64,x86_64
int __statfs:statfs(const char*, struct statfs*) arm64,mips64,x86_64
int fstat64|fstat:fstat64(int, struct stat*) arm,mips,x86
int fstat64|fstat:fstat(int, struct stat*) arm64,mips64,x86_64
int fstat64|fstat:fstat(int, struct stat*) arm64,x86_64
# file system
int chdir(const char*) all
@@ -204,7 +203,7 @@ clock_t times(struct tms*) all
int nanosleep(const struct timespec*, struct timespec*) all
int clock_settime(clockid_t, const struct timespec*) all
int clock_getres(clockid_t, struct timespec*) all
int __clock_nanosleep:clock_nanosleep(clockid_t, int, const struct timespec*, struct timespec*) all
int ___clock_nanosleep:clock_nanosleep(clockid_t, int, const struct timespec*, struct timespec*) all
int getitimer(int, const struct itimerval*) all
int setitimer(int, const struct itimerval*, struct itimerval*) all
int __timer_create:timer_create(clockid_t clockid, struct sigevent* evp, __kernel_timer_t* timerid) all
@@ -223,7 +222,7 @@ int __rt_sigpending:rt_sigpending(sigset_t*, size_t) all
int __rt_sigprocmask:rt_sigprocmask(int, const sigset_t*, sigset_t*, size_t) all
int __rt_sigsuspend:rt_sigsuspend(const sigset_t*, size_t) all
int __rt_sigtimedwait:rt_sigtimedwait(const sigset_t*, struct siginfo_t*, struct timespec_t*, size_t) all
int __rt_sigqueueinfo:rt_sigqueueinfo(pid_t, int, siginfo_t*) all
int ___rt_sigqueueinfo:rt_sigqueueinfo(pid_t, int, siginfo_t*) all
int __signalfd4:signalfd4(int, const sigset_t*, size_t, int) all
# sockets
@@ -309,6 +308,9 @@ int inotify_rm_watch(int, unsigned int) all
int __pselect6:pselect6(int, fd_set*, fd_set*, fd_set*, timespec*, void*) all
int __ppoll:ppoll(pollfd*, unsigned int, timespec*, const sigset_t*, size_t) all
ssize_t process_vm_readv(pid_t, const struct iovec*, unsigned long, const struct iovec*, unsigned long, unsigned long) all
ssize_t process_vm_writev(pid_t, const struct iovec*, unsigned long, const struct iovec*, unsigned long, unsigned long) all
int __set_tid_address:set_tid_address(int*) all
int setfsgid(gid_t) all

View File

@@ -1,30 +1,10 @@
# 32-bit arm.
#
# Various kinds of LP32 cruft.
#
libc_bionic_src_files_arm += \
bionic/mmap.cpp \
libc_common_src_files_arm += \
bionic/legacy_32_bit_support.cpp \
bionic/ndk_cruft.cpp \
bionic/time64.c \
libc_netbsd_src_files_arm += \
upstream-netbsd/common/lib/libc/hash/sha1/sha1.c \
libc_openbsd_src_files_arm += \
upstream-openbsd/lib/libc/stdio/putw.c \
#
# Default implementations of functions that are commonly optimized.
#
libc_bionic_src_files_arm += \
bionic/memchr.c \
bionic/memrchr.c \
bionic/strchr.cpp \
bionic/strnlen.c \
bionic/strrchr.cpp \
@@ -40,7 +20,8 @@ libc_freebsd_src_files_arm += \
upstream-freebsd/lib/libc/string/wmemmove.c \
libc_openbsd_src_files_arm += \
upstream-openbsd/lib/libc/string/bcopy.c \
upstream-openbsd/lib/libc/string/memchr.c \
upstream-openbsd/lib/libc/string/memrchr.c \
upstream-openbsd/lib/libc/string/stpncpy.c \
upstream-openbsd/lib/libc/string/strlcat.c \
upstream-openbsd/lib/libc/string/strlcpy.c \
@@ -58,7 +39,6 @@ libc_bionic_src_files_arm += \
arch-arm/bionic/__bionic_clone.S \
arch-arm/bionic/_exit_with_stack_teardown.S \
arch-arm/bionic/libgcc_compat.c \
arch-arm/bionic/memcmp.S \
arch-arm/bionic/__restore.S \
arch-arm/bionic/setjmp.S \
arch-arm/bionic/syscall.S \

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2008-2010 The Android Open Source Project
* Copyright (C) 2008 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without

View File

@@ -1,686 +0,0 @@
/*
* Copyright (C) 2008 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#include <machine/cpu-features.h>
#include <private/bionic_asm.h>
#if defined(__ARM_NEON__) && !defined(ARCH_ARM_USE_NON_NEON_MEMCPY)
.text
.fpu neon
#ifdef HAVE_32_BYTE_CACHE_LINE
/* a prefetch distance of 2 cache-lines */
#define CACHE_LINE_SIZE 32
#else
/* a prefetch distance of 4 cache-lines works best experimentally */
#define CACHE_LINE_SIZE 64
#endif
ENTRY(memcpy)
.save {r0, lr}
/* start preloading as early as possible */
pld [r1, #(CACHE_LINE_SIZE * 0)]
stmfd sp!, {r0, lr}
pld [r1, #(CACHE_LINE_SIZE * 1)]
/* If Neon supports unaligned access then remove the align code,
* unless a size limit has been specified.
*/
#ifndef NEON_UNALIGNED_ACCESS
/* do we have at least 16-bytes to copy (needed for alignment below) */
cmp r2, #16
blo 5f
/* check if buffers are aligned. If so, run arm-only version */
eor r3, r0, r1
ands r3, r3, #0x3
beq 11f
/* align destination to cache-line for the write-buffer */
rsb r3, r0, #0
ands r3, r3, #0xF
beq 2f
/* copy up to 15-bytes (count in r3) */
sub r2, r2, r3
movs ip, r3, lsl #31
ldrmib lr, [r1], #1
strmib lr, [r0], #1
ldrcsb ip, [r1], #1
ldrcsb lr, [r1], #1
strcsb ip, [r0], #1
strcsb lr, [r0], #1
movs ip, r3, lsl #29
bge 1f
// copies 4 bytes, destination 32-bits aligned
vld4.8 {d0[0], d1[0], d2[0], d3[0]}, [r1]!
vst4.8 {d0[0], d1[0], d2[0], d3[0]}, [r0, :32]!
1: bcc 2f
// copies 8 bytes, destination 64-bits aligned
vld1.8 {d0}, [r1]!
vst1.8 {d0}, [r0, :64]!
2:
/* preload immediately the next cache line, which we may need */
pld [r1, #(CACHE_LINE_SIZE * 0)]
pld [r1, #(CACHE_LINE_SIZE * 1)]
#ifdef HAVE_32_BYTE_CACHE_LINE
/* make sure we have at least 32 bytes to copy */
subs r2, r2, #32
blo 4f
/* preload all the cache lines we need.
* NOTE: the number of pld below depends on PREFETCH_DISTANCE,
* ideally would would increase the distance in the main loop to
* avoid the goofy code below. In practice this doesn't seem to make
* a big difference.
*/
pld [r1, #(PREFETCH_DISTANCE)]
1: /* The main loop copies 32 bytes at a time */
vld1.8 {d0 - d3}, [r1]!
pld [r1, #(PREFETCH_DISTANCE)]
subs r2, r2, #32
vst1.8 {d0 - d3}, [r0, :128]!
bhs 1b
#else
/* make sure we have at least 64 bytes to copy */
subs r2, r2, #64
blo 2f
/* preload all the cache lines we need. */
pld [r1, #(CACHE_LINE_SIZE * 2)]
pld [r1, #(CACHE_LINE_SIZE * 3)]
1: /* The main loop copies 64 bytes at a time */
vld1.8 {d0 - d3}, [r1]!
vld1.8 {d4 - d7}, [r1]!
#ifdef HAVE_32_BYTE_CACHE_LINE
pld [r1, #(CACHE_LINE_SIZE * 2)]
pld [r1, #(CACHE_LINE_SIZE * 3)]
#else
pld [r1, #(CACHE_LINE_SIZE * 3)]
#endif
subs r2, r2, #64
vst1.8 {d0 - d3}, [r0, :128]!
vst1.8 {d4 - d7}, [r0, :128]!
bhs 1b
2: /* fix-up the remaining count and make sure we have >= 32 bytes left */
add r2, r2, #64
subs r2, r2, #32
blo 4f
3: /* 32 bytes at a time. These cache lines were already preloaded */
vld1.8 {d0 - d3}, [r1]!
subs r2, r2, #32
vst1.8 {d0 - d3}, [r0, :128]!
bhs 3b
#endif
4: /* less than 32 left */
add r2, r2, #32
tst r2, #0x10
beq 5f
// copies 16 bytes, 128-bits aligned
vld1.8 {d0, d1}, [r1]!
vst1.8 {d0, d1}, [r0, :128]!
5: /* copy up to 15-bytes (count in r2) */
movs ip, r2, lsl #29
bcc 1f
vld1.8 {d0}, [r1]!
vst1.8 {d0}, [r0]!
1: bge 2f
vld4.8 {d0[0], d1[0], d2[0], d3[0]}, [r1]!
vst4.8 {d0[0], d1[0], d2[0], d3[0]}, [r0]!
2: movs ip, r2, lsl #31
ldrmib r3, [r1], #1
ldrcsb ip, [r1], #1
ldrcsb lr, [r1], #1
strmib r3, [r0], #1
strcsb ip, [r0], #1
strcsb lr, [r0], #1
ldmfd sp!, {r0, lr}
bx lr
#else /* NEON_UNALIGNED_ACCESS */
// Check so divider is at least 16 bytes, needed for alignment code.
cmp r2, #16
blo 5f
#ifdef NEON_MEMCPY_ALIGNMENT_DIVIDER
/* Check the upper size limit for Neon unaligned memory access in memcpy */
#if NEON_MEMCPY_ALIGNMENT_DIVIDER >= 16
cmp r2, #NEON_MEMCPY_ALIGNMENT_DIVIDER
blo 3f
#endif
/* check if buffers are aligned. If so, run arm-only version */
eor r3, r0, r1
ands r3, r3, #0x3
beq 11f
/* align destination to 16 bytes for the write-buffer */
rsb r3, r0, #0
ands r3, r3, #0xF
beq 3f
/* copy up to 15-bytes (count in r3) */
sub r2, r2, r3
movs ip, r3, lsl #31
ldrmib lr, [r1], #1
strmib lr, [r0], #1
ldrcsb ip, [r1], #1
ldrcsb lr, [r1], #1
strcsb ip, [r0], #1
strcsb lr, [r0], #1
movs ip, r3, lsl #29
bge 1f
// copies 4 bytes, destination 32-bits aligned
vld1.32 {d0[0]}, [r1]!
vst1.32 {d0[0]}, [r0, :32]!
1: bcc 2f
// copies 8 bytes, destination 64-bits aligned
vld1.8 {d0}, [r1]!
vst1.8 {d0}, [r0, :64]!
2:
/* preload immediately the next cache line, which we may need */
pld [r1, #(CACHE_LINE_SIZE * 0)]
pld [r1, #(CACHE_LINE_SIZE * 1)]
3:
#endif
/* make sure we have at least 64 bytes to copy */
subs r2, r2, #64
blo 2f
/* preload all the cache lines we need */
pld [r1, #(CACHE_LINE_SIZE * 2)]
pld [r1, #(CACHE_LINE_SIZE * 3)]
1: /* The main loop copies 64 bytes at a time */
vld1.8 {d0 - d3}, [r1]!
vld1.8 {d4 - d7}, [r1]!
#ifdef HAVE_32_BYTE_CACHE_LINE
pld [r1, #(CACHE_LINE_SIZE * 2)]
pld [r1, #(CACHE_LINE_SIZE * 3)]
#else
pld [r1, #(CACHE_LINE_SIZE * 3)]
#endif
subs r2, r2, #64
vst1.8 {d0 - d3}, [r0]!
vst1.8 {d4 - d7}, [r0]!
bhs 1b
2: /* fix-up the remaining count and make sure we have >= 32 bytes left */
add r2, r2, #64
subs r2, r2, #32
blo 4f
3: /* 32 bytes at a time. These cache lines were already preloaded */
vld1.8 {d0 - d3}, [r1]!
subs r2, r2, #32
vst1.8 {d0 - d3}, [r0]!
bhs 3b
4: /* less than 32 left */
add r2, r2, #32
tst r2, #0x10
beq 5f
// copies 16 bytes, 128-bits aligned
vld1.8 {d0, d1}, [r1]!
vst1.8 {d0, d1}, [r0]!
5: /* copy up to 15-bytes (count in r2) */
movs ip, r2, lsl #29
bcc 1f
vld1.8 {d0}, [r1]!
vst1.8 {d0}, [r0]!
1: bge 2f
vld1.32 {d0[0]}, [r1]!
vst1.32 {d0[0]}, [r0]!
2: movs ip, r2, lsl #31
ldrmib r3, [r1], #1
ldrcsb ip, [r1], #1
ldrcsb lr, [r1], #1
strmib r3, [r0], #1
strcsb ip, [r0], #1
strcsb lr, [r0], #1
ldmfd sp!, {r0, lr}
bx lr
#endif /* NEON_UNALIGNED_ACCESS */
11:
/* Simple arm-only copy loop to handle aligned copy operations */
stmfd sp!, {r4, r5, r6, r7, r8}
pld [r1, #(CACHE_LINE_SIZE * 2)]
/* Check alignment */
rsb r3, r1, #0
ands r3, #3
beq 2f
/* align source to 32 bits. We need to insert 2 instructions between
* a ldr[b|h] and str[b|h] because byte and half-word instructions
* stall 2 cycles.
*/
movs r12, r3, lsl #31
sub r2, r2, r3 /* we know that r3 <= r2 because r2 >= 4 */
ldrmib r3, [r1], #1
ldrcsb r4, [r1], #1
ldrcsb r5, [r1], #1
strmib r3, [r0], #1
strcsb r4, [r0], #1
strcsb r5, [r0], #1
2:
subs r2, #32
blt 5f
pld [r1, #(CACHE_LINE_SIZE * 3)]
3: /* Main copy loop, copying 32 bytes at a time */
pld [r1, #(CACHE_LINE_SIZE * 4)]
ldmia r1!, {r3, r4, r5, r6, r7, r8, r12, lr}
subs r2, r2, #32
stmia r0!, {r3, r4, r5, r6, r7, r8, r12, lr}
bge 3b
5: /* Handle any remaining bytes */
adds r2, #32
beq 6f
movs r12, r2, lsl #28
ldmcsia r1!, {r3, r4, r5, r6} /* 16 bytes */
ldmmiia r1!, {r7, r8} /* 8 bytes */
stmcsia r0!, {r3, r4, r5, r6}
stmmiia r0!, {r7, r8}
movs r12, r2, lsl #30
ldrcs r3, [r1], #4 /* 4 bytes */
ldrmih r4, [r1], #2 /* 2 bytes */
strcs r3, [r0], #4
strmih r4, [r0], #2
tst r2, #0x1
ldrneb r3, [r1] /* last byte */
strneb r3, [r0]
6:
ldmfd sp!, {r4, r5, r6, r7, r8}
ldmfd sp!, {r0, pc}
END(memcpy)
#else /* __ARM_ARCH__ < 7 */
/*
* Optimized memcpy() for ARM.
*
* note that memcpy() always returns the destination pointer,
* so we have to preserve R0.
*/
ENTRY(memcpy)
/* The stack must always be 64-bits aligned to be compliant with the
* ARM ABI. Since we have to save R0, we might as well save R4
* which we can use for better pipelining of the reads below
*/
.save {r0, r4, lr}
stmfd sp!, {r0, r4, lr}
/* Making room for r5-r11 which will be spilled later */
.pad #28
sub sp, sp, #28
// preload the destination because we'll align it to a cache line
// with small writes. Also start the source "pump".
pld [r0, #0]
pld [r1, #0]
pld [r1, #32]
/* it simplifies things to take care of len<4 early */
cmp r2, #4
blo copy_last_3_and_return
/* compute the offset to align the source
* offset = (4-(src&3))&3 = -src & 3
*/
rsb r3, r1, #0
ands r3, r3, #3
beq src_aligned
/* align source to 32 bits. We need to insert 2 instructions between
* a ldr[b|h] and str[b|h] because byte and half-word instructions
* stall 2 cycles.
*/
movs r12, r3, lsl #31
sub r2, r2, r3 /* we know that r3 <= r2 because r2 >= 4 */
ldrmib r3, [r1], #1
ldrcsb r4, [r1], #1
ldrcsb r12,[r1], #1
strmib r3, [r0], #1
strcsb r4, [r0], #1
strcsb r12,[r0], #1
src_aligned:
/* see if src and dst are aligned together (congruent) */
eor r12, r0, r1
tst r12, #3
bne non_congruent
/* Use post-incriment mode for stm to spill r5-r11 to reserved stack
* frame. Don't update sp.
*/
stmea sp, {r5-r11}
/* align the destination to a cache-line */
rsb r3, r0, #0
ands r3, r3, #0x1C
beq congruent_aligned32
cmp r3, r2
andhi r3, r2, #0x1C
/* conditionnaly copies 0 to 7 words (length in r3) */
movs r12, r3, lsl #28
ldmcsia r1!, {r4, r5, r6, r7} /* 16 bytes */
ldmmiia r1!, {r8, r9} /* 8 bytes */
stmcsia r0!, {r4, r5, r6, r7}
stmmiia r0!, {r8, r9}
tst r3, #0x4
ldrne r10,[r1], #4 /* 4 bytes */
strne r10,[r0], #4
sub r2, r2, r3
congruent_aligned32:
/*
* here source is aligned to 32 bytes.
*/
cached_aligned32:
subs r2, r2, #32
blo less_than_32_left
/*
* We preload a cache-line up to 64 bytes ahead. On the 926, this will
* stall only until the requested world is fetched, but the linefill
* continues in the the background.
* While the linefill is going, we write our previous cache-line
* into the write-buffer (which should have some free space).
* When the linefill is done, the writebuffer will
* start dumping its content into memory
*
* While all this is going, we then load a full cache line into
* 8 registers, this cache line should be in the cache by now
* (or partly in the cache).
*
* This code should work well regardless of the source/dest alignment.
*
*/
// Align the preload register to a cache-line because the cpu does
// "critical word first" (the first word requested is loaded first).
bic r12, r1, #0x1F
add r12, r12, #64
1: ldmia r1!, { r4-r11 }
pld [r12, #64]
subs r2, r2, #32
// NOTE: if r12 is more than 64 ahead of r1, the following ldrhi
// for ARM9 preload will not be safely guarded by the preceding subs.
// When it is safely guarded the only possibility to have SIGSEGV here
// is because the caller overstates the length.
ldrhi r3, [r12], #32 /* cheap ARM9 preload */
stmia r0!, { r4-r11 }
bhs 1b
add r2, r2, #32
less_than_32_left:
/*
* less than 32 bytes left at this point (length in r2)
*/
/* skip all this if there is nothing to do, which should
* be a common case (if not executed the code below takes
* about 16 cycles)
*/
tst r2, #0x1F
beq 1f
/* conditionnaly copies 0 to 31 bytes */
movs r12, r2, lsl #28
ldmcsia r1!, {r4, r5, r6, r7} /* 16 bytes */
ldmmiia r1!, {r8, r9} /* 8 bytes */
stmcsia r0!, {r4, r5, r6, r7}
stmmiia r0!, {r8, r9}
movs r12, r2, lsl #30
ldrcs r3, [r1], #4 /* 4 bytes */
ldrmih r4, [r1], #2 /* 2 bytes */
strcs r3, [r0], #4
strmih r4, [r0], #2
tst r2, #0x1
ldrneb r3, [r1] /* last byte */
strneb r3, [r0]
/* we're done! restore everything and return */
1: ldmfd sp!, {r5-r11}
ldmfd sp!, {r0, r4, lr}
bx lr
/********************************************************************/
non_congruent:
/*
* here source is aligned to 4 bytes
* but destination is not.
*
* in the code below r2 is the number of bytes read
* (the number of bytes written is always smaller, because we have
* partial words in the shift queue)
*/
cmp r2, #4
blo copy_last_3_and_return
/* Use post-incriment mode for stm to spill r5-r11 to reserved stack
* frame. Don't update sp.
*/
stmea sp, {r5-r11}
/* compute shifts needed to align src to dest */
rsb r5, r0, #0
and r5, r5, #3 /* r5 = # bytes in partial words */
mov r12, r5, lsl #3 /* r12 = right */
rsb lr, r12, #32 /* lr = left */
/* read the first word */
ldr r3, [r1], #4
sub r2, r2, #4
/* write a partial word (0 to 3 bytes), such that destination
* becomes aligned to 32 bits (r5 = nb of words to copy for alignment)
*/
movs r5, r5, lsl #31
strmib r3, [r0], #1
movmi r3, r3, lsr #8
strcsb r3, [r0], #1
movcs r3, r3, lsr #8
strcsb r3, [r0], #1
movcs r3, r3, lsr #8
cmp r2, #4
blo partial_word_tail
/* Align destination to 32 bytes (cache line boundary) */
1: tst r0, #0x1c
beq 2f
ldr r5, [r1], #4
sub r2, r2, #4
orr r4, r3, r5, lsl lr
mov r3, r5, lsr r12
str r4, [r0], #4
cmp r2, #4
bhs 1b
blo partial_word_tail
/* copy 32 bytes at a time */
2: subs r2, r2, #32
blo less_than_thirtytwo
/* Use immediate mode for the shifts, because there is an extra cycle
* for register shifts, which could account for up to 50% of
* performance hit.
*/
cmp r12, #24
beq loop24
cmp r12, #8
beq loop8
loop16:
ldr r12, [r1], #4
1: mov r4, r12
ldmia r1!, { r5,r6,r7, r8,r9,r10,r11}
pld [r1, #64]
subs r2, r2, #32
ldrhs r12, [r1], #4
orr r3, r3, r4, lsl #16
mov r4, r4, lsr #16
orr r4, r4, r5, lsl #16
mov r5, r5, lsr #16
orr r5, r5, r6, lsl #16
mov r6, r6, lsr #16
orr r6, r6, r7, lsl #16
mov r7, r7, lsr #16
orr r7, r7, r8, lsl #16
mov r8, r8, lsr #16
orr r8, r8, r9, lsl #16
mov r9, r9, lsr #16
orr r9, r9, r10, lsl #16
mov r10, r10, lsr #16
orr r10, r10, r11, lsl #16
stmia r0!, {r3,r4,r5,r6, r7,r8,r9,r10}
mov r3, r11, lsr #16
bhs 1b
b less_than_thirtytwo
loop8:
ldr r12, [r1], #4
1: mov r4, r12
ldmia r1!, { r5,r6,r7, r8,r9,r10,r11}
pld [r1, #64]
subs r2, r2, #32
ldrhs r12, [r1], #4
orr r3, r3, r4, lsl #24
mov r4, r4, lsr #8
orr r4, r4, r5, lsl #24
mov r5, r5, lsr #8
orr r5, r5, r6, lsl #24
mov r6, r6, lsr #8
orr r6, r6, r7, lsl #24
mov r7, r7, lsr #8
orr r7, r7, r8, lsl #24
mov r8, r8, lsr #8
orr r8, r8, r9, lsl #24
mov r9, r9, lsr #8
orr r9, r9, r10, lsl #24
mov r10, r10, lsr #8
orr r10, r10, r11, lsl #24
stmia r0!, {r3,r4,r5,r6, r7,r8,r9,r10}
mov r3, r11, lsr #8
bhs 1b
b less_than_thirtytwo
loop24:
ldr r12, [r1], #4
1: mov r4, r12
ldmia r1!, { r5,r6,r7, r8,r9,r10,r11}
pld [r1, #64]
subs r2, r2, #32
ldrhs r12, [r1], #4
orr r3, r3, r4, lsl #8
mov r4, r4, lsr #24
orr r4, r4, r5, lsl #8
mov r5, r5, lsr #24
orr r5, r5, r6, lsl #8
mov r6, r6, lsr #24
orr r6, r6, r7, lsl #8
mov r7, r7, lsr #24
orr r7, r7, r8, lsl #8
mov r8, r8, lsr #24
orr r8, r8, r9, lsl #8
mov r9, r9, lsr #24
orr r9, r9, r10, lsl #8
mov r10, r10, lsr #24
orr r10, r10, r11, lsl #8
stmia r0!, {r3,r4,r5,r6, r7,r8,r9,r10}
mov r3, r11, lsr #24
bhs 1b
less_than_thirtytwo:
/* copy the last 0 to 31 bytes of the source */
rsb r12, lr, #32 /* we corrupted r12, recompute it */
add r2, r2, #32
cmp r2, #4
blo partial_word_tail
1: ldr r5, [r1], #4
sub r2, r2, #4
orr r4, r3, r5, lsl lr
mov r3, r5, lsr r12
str r4, [r0], #4
cmp r2, #4
bhs 1b
partial_word_tail:
/* we have a partial word in the input buffer */
movs r5, lr, lsl #(31-3)
strmib r3, [r0], #1
movmi r3, r3, lsr #8
strcsb r3, [r0], #1
movcs r3, r3, lsr #8
strcsb r3, [r0], #1
/* Refill spilled registers from the stack. Don't update sp. */
ldmfd sp, {r5-r11}
copy_last_3_and_return:
movs r2, r2, lsl #31 /* copy remaining 0, 1, 2 or 3 bytes */
ldrmib r2, [r1], #1
ldrcsb r3, [r1], #1
ldrcsb r12,[r1]
strmib r2, [r0], #1
strcsb r3, [r0], #1
strcsb r12,[r0]
/* we're done! restore sp and spilled registers and return */
add sp, sp, #28
ldmfd sp!, {r0, r4, lr}
bx lr
END(memcpy)
#endif /* __ARM_ARCH__ < 7 */

View File

@@ -1,614 +0,0 @@
/* Copyright (c) 2013, Linaro Limited
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of Linaro Limited nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
This memcpy routine is optimised for Cortex-A15 cores and takes advantage
of VFP or NEON when built with the appropriate flags.
Assumptions:
ARMv6 (ARMv7-a if using Neon)
ARM state
Unaligned accesses
LDRD/STRD support unaligned word accesses
*/
#include <machine/cpu-features.h>
#include <private/bionic_asm.h>
.syntax unified
/* This implementation requires ARM state. */
.arm
#ifdef __ARM_NEON__
.fpu neon
.arch armv7-a
# define FRAME_SIZE 4
# define USE_VFP
# define USE_NEON
#elif !defined (__SOFTFP__)
.arch armv6
.fpu vfpv2
# define FRAME_SIZE 32
# define USE_VFP
#else
.arch armv6
# define FRAME_SIZE 32
#endif
/* Old versions of GAS incorrectly implement the NEON align semantics. */
#ifdef BROKEN_ASM_NEON_ALIGN
#define ALIGN(addr, align) addr,:align
#else
#define ALIGN(addr, align) addr:align
#endif
#define PC_OFFSET 8 /* PC pipeline compensation. */
#define INSN_SIZE 4
/* Call parameters. */
#define dstin r0
#define src r1
#define count r2
/* Locals. */
#define tmp1 r3
#define dst ip
#define tmp2 r10
#ifndef USE_NEON
/* For bulk copies using GP registers. */
#define A_l r2 /* Call-clobbered. */
#define A_h r3 /* Call-clobbered. */
#define B_l r4
#define B_h r5
#define C_l r6
#define C_h r7
#define D_l r8
#define D_h r9
#endif
/* Number of lines ahead to pre-fetch data. If you change this the code
below will need adjustment to compensate. */
#define prefetch_lines 5
#ifdef USE_VFP
.macro cpy_line_vfp vreg, base
vstr \vreg, [dst, #\base]
vldr \vreg, [src, #\base]
vstr d0, [dst, #\base + 8]
vldr d0, [src, #\base + 8]
vstr d1, [dst, #\base + 16]
vldr d1, [src, #\base + 16]
vstr d2, [dst, #\base + 24]
vldr d2, [src, #\base + 24]
vstr \vreg, [dst, #\base + 32]
vldr \vreg, [src, #\base + prefetch_lines * 64 - 32]
vstr d0, [dst, #\base + 40]
vldr d0, [src, #\base + 40]
vstr d1, [dst, #\base + 48]
vldr d1, [src, #\base + 48]
vstr d2, [dst, #\base + 56]
vldr d2, [src, #\base + 56]
.endm
.macro cpy_tail_vfp vreg, base
vstr \vreg, [dst, #\base]
vldr \vreg, [src, #\base]
vstr d0, [dst, #\base + 8]
vldr d0, [src, #\base + 8]
vstr d1, [dst, #\base + 16]
vldr d1, [src, #\base + 16]
vstr d2, [dst, #\base + 24]
vldr d2, [src, #\base + 24]
vstr \vreg, [dst, #\base + 32]
vstr d0, [dst, #\base + 40]
vldr d0, [src, #\base + 40]
vstr d1, [dst, #\base + 48]
vldr d1, [src, #\base + 48]
vstr d2, [dst, #\base + 56]
vldr d2, [src, #\base + 56]
.endm
#endif
.p2align 6
ENTRY(memcpy)
mov dst, dstin /* Preserve dstin, we need to return it. */
cmp count, #64
bge .Lcpy_not_short
/* Deal with small copies quickly by dropping straight into the
exit block. */
.Ltail63unaligned:
#ifdef USE_NEON
and tmp1, count, #0x38
rsb tmp1, tmp1, #(56 - PC_OFFSET + INSN_SIZE)
add pc, pc, tmp1
vld1.8 {d0}, [src]! /* 14 words to go. */
vst1.8 {d0}, [dst]!
vld1.8 {d0}, [src]! /* 12 words to go. */
vst1.8 {d0}, [dst]!
vld1.8 {d0}, [src]! /* 10 words to go. */
vst1.8 {d0}, [dst]!
vld1.8 {d0}, [src]! /* 8 words to go. */
vst1.8 {d0}, [dst]!
vld1.8 {d0}, [src]! /* 6 words to go. */
vst1.8 {d0}, [dst]!
vld1.8 {d0}, [src]! /* 4 words to go. */
vst1.8 {d0}, [dst]!
vld1.8 {d0}, [src]! /* 2 words to go. */
vst1.8 {d0}, [dst]!
tst count, #4
ldrne tmp1, [src], #4
strne tmp1, [dst], #4
#else
/* Copy up to 15 full words of data. May not be aligned. */
/* Cannot use VFP for unaligned data. */
and tmp1, count, #0x3c
add dst, dst, tmp1
add src, src, tmp1
rsb tmp1, tmp1, #(60 - PC_OFFSET/2 + INSN_SIZE/2)
/* Jump directly into the sequence below at the correct offset. */
add pc, pc, tmp1, lsl #1
ldr tmp1, [src, #-60] /* 15 words to go. */
str tmp1, [dst, #-60]
ldr tmp1, [src, #-56] /* 14 words to go. */
str tmp1, [dst, #-56]
ldr tmp1, [src, #-52]
str tmp1, [dst, #-52]
ldr tmp1, [src, #-48] /* 12 words to go. */
str tmp1, [dst, #-48]
ldr tmp1, [src, #-44]
str tmp1, [dst, #-44]
ldr tmp1, [src, #-40] /* 10 words to go. */
str tmp1, [dst, #-40]
ldr tmp1, [src, #-36]
str tmp1, [dst, #-36]
ldr tmp1, [src, #-32] /* 8 words to go. */
str tmp1, [dst, #-32]
ldr tmp1, [src, #-28]
str tmp1, [dst, #-28]
ldr tmp1, [src, #-24] /* 6 words to go. */
str tmp1, [dst, #-24]
ldr tmp1, [src, #-20]
str tmp1, [dst, #-20]
ldr tmp1, [src, #-16] /* 4 words to go. */
str tmp1, [dst, #-16]
ldr tmp1, [src, #-12]
str tmp1, [dst, #-12]
ldr tmp1, [src, #-8] /* 2 words to go. */
str tmp1, [dst, #-8]
ldr tmp1, [src, #-4]
str tmp1, [dst, #-4]
#endif
lsls count, count, #31
ldrhcs tmp1, [src], #2
ldrbne src, [src] /* Src is dead, use as a scratch. */
strhcs tmp1, [dst], #2
strbne src, [dst]
bx lr
.Lcpy_not_short:
/* At least 64 bytes to copy, but don't know the alignment yet. */
str tmp2, [sp, #-FRAME_SIZE]!
and tmp2, src, #7
and tmp1, dst, #7
cmp tmp1, tmp2
bne .Lcpy_notaligned
#ifdef USE_VFP
/* Magic dust alert! Force VFP on Cortex-A9. Experiments show
that the FP pipeline is much better at streaming loads and
stores. This is outside the critical loop. */
vmov.f32 s0, s0
#endif
/* SRC and DST have the same mutual 32-bit alignment, but we may
still need to pre-copy some bytes to get to natural alignment.
We bring DST into full 64-bit alignment. */
lsls tmp2, dst, #29
beq 1f
rsbs tmp2, tmp2, #0
sub count, count, tmp2, lsr #29
ldrmi tmp1, [src], #4
strmi tmp1, [dst], #4
lsls tmp2, tmp2, #2
ldrhcs tmp1, [src], #2
ldrbne tmp2, [src], #1
strhcs tmp1, [dst], #2
strbne tmp2, [dst], #1
1:
subs tmp2, count, #64 /* Use tmp2 for count. */
blt .Ltail63aligned
cmp tmp2, #512
bge .Lcpy_body_long
.Lcpy_body_medium: /* Count in tmp2. */
#ifdef USE_VFP
1:
vldr d0, [src, #0]
subs tmp2, tmp2, #64
vldr d1, [src, #8]
vstr d0, [dst, #0]
vldr d0, [src, #16]
vstr d1, [dst, #8]
vldr d1, [src, #24]
vstr d0, [dst, #16]
vldr d0, [src, #32]
vstr d1, [dst, #24]
vldr d1, [src, #40]
vstr d0, [dst, #32]
vldr d0, [src, #48]
vstr d1, [dst, #40]
vldr d1, [src, #56]
vstr d0, [dst, #48]
add src, src, #64
vstr d1, [dst, #56]
add dst, dst, #64
bge 1b
tst tmp2, #0x3f
beq .Ldone
.Ltail63aligned: /* Count in tmp2. */
and tmp1, tmp2, #0x38
add dst, dst, tmp1
add src, src, tmp1
rsb tmp1, tmp1, #(56 - PC_OFFSET + INSN_SIZE)
add pc, pc, tmp1
vldr d0, [src, #-56] /* 14 words to go. */
vstr d0, [dst, #-56]
vldr d0, [src, #-48] /* 12 words to go. */
vstr d0, [dst, #-48]
vldr d0, [src, #-40] /* 10 words to go. */
vstr d0, [dst, #-40]
vldr d0, [src, #-32] /* 8 words to go. */
vstr d0, [dst, #-32]
vldr d0, [src, #-24] /* 6 words to go. */
vstr d0, [dst, #-24]
vldr d0, [src, #-16] /* 4 words to go. */
vstr d0, [dst, #-16]
vldr d0, [src, #-8] /* 2 words to go. */
vstr d0, [dst, #-8]
#else
sub src, src, #8
sub dst, dst, #8
1:
ldrd A_l, A_h, [src, #8]
strd A_l, A_h, [dst, #8]
ldrd A_l, A_h, [src, #16]
strd A_l, A_h, [dst, #16]
ldrd A_l, A_h, [src, #24]
strd A_l, A_h, [dst, #24]
ldrd A_l, A_h, [src, #32]
strd A_l, A_h, [dst, #32]
ldrd A_l, A_h, [src, #40]
strd A_l, A_h, [dst, #40]
ldrd A_l, A_h, [src, #48]
strd A_l, A_h, [dst, #48]
ldrd A_l, A_h, [src, #56]
strd A_l, A_h, [dst, #56]
ldrd A_l, A_h, [src, #64]!
strd A_l, A_h, [dst, #64]!
subs tmp2, tmp2, #64
bge 1b
tst tmp2, #0x3f
bne 1f
ldr tmp2,[sp], #FRAME_SIZE
bx lr
1:
add src, src, #8
add dst, dst, #8
.Ltail63aligned: /* Count in tmp2. */
/* Copy up to 7 d-words of data. Similar to Ltail63unaligned, but
we know that the src and dest are 32-bit aligned so we can use
LDRD/STRD to improve efficiency. */
/* TMP2 is now negative, but we don't care about that. The bottom
six bits still tell us how many bytes are left to copy. */
and tmp1, tmp2, #0x38
add dst, dst, tmp1
add src, src, tmp1
rsb tmp1, tmp1, #(56 - PC_OFFSET + INSN_SIZE)
add pc, pc, tmp1
ldrd A_l, A_h, [src, #-56] /* 14 words to go. */
strd A_l, A_h, [dst, #-56]
ldrd A_l, A_h, [src, #-48] /* 12 words to go. */
strd A_l, A_h, [dst, #-48]
ldrd A_l, A_h, [src, #-40] /* 10 words to go. */
strd A_l, A_h, [dst, #-40]
ldrd A_l, A_h, [src, #-32] /* 8 words to go. */
strd A_l, A_h, [dst, #-32]
ldrd A_l, A_h, [src, #-24] /* 6 words to go. */
strd A_l, A_h, [dst, #-24]
ldrd A_l, A_h, [src, #-16] /* 4 words to go. */
strd A_l, A_h, [dst, #-16]
ldrd A_l, A_h, [src, #-8] /* 2 words to go. */
strd A_l, A_h, [dst, #-8]
#endif
tst tmp2, #4
ldrne tmp1, [src], #4
strne tmp1, [dst], #4
lsls tmp2, tmp2, #31 /* Count (tmp2) now dead. */
ldrhcs tmp1, [src], #2
ldrbne tmp2, [src]
strhcs tmp1, [dst], #2
strbne tmp2, [dst]
.Ldone:
ldr tmp2, [sp], #FRAME_SIZE
bx lr
.Lcpy_body_long: /* Count in tmp2. */
/* Long copy. We know that there's at least (prefetch_lines * 64)
bytes to go. */
#ifdef USE_VFP
/* Don't use PLD. Instead, read some data in advance of the current
copy position into a register. This should act like a PLD
operation but we won't have to repeat the transfer. */
vldr d3, [src, #0]
vldr d4, [src, #64]
vldr d5, [src, #128]
vldr d6, [src, #192]
vldr d7, [src, #256]
vldr d0, [src, #8]
vldr d1, [src, #16]
vldr d2, [src, #24]
add src, src, #32
subs tmp2, tmp2, #prefetch_lines * 64 * 2
blt 2f
1:
cpy_line_vfp d3, 0
cpy_line_vfp d4, 64
cpy_line_vfp d5, 128
add dst, dst, #3 * 64
add src, src, #3 * 64
cpy_line_vfp d6, 0
cpy_line_vfp d7, 64
add dst, dst, #2 * 64
add src, src, #2 * 64
subs tmp2, tmp2, #prefetch_lines * 64
bge 1b
2:
cpy_tail_vfp d3, 0
cpy_tail_vfp d4, 64
cpy_tail_vfp d5, 128
add src, src, #3 * 64
add dst, dst, #3 * 64
cpy_tail_vfp d6, 0
vstr d7, [dst, #64]
vldr d7, [src, #64]
vstr d0, [dst, #64 + 8]
vldr d0, [src, #64 + 8]
vstr d1, [dst, #64 + 16]
vldr d1, [src, #64 + 16]
vstr d2, [dst, #64 + 24]
vldr d2, [src, #64 + 24]
vstr d7, [dst, #64 + 32]
add src, src, #96
vstr d0, [dst, #64 + 40]
vstr d1, [dst, #64 + 48]
vstr d2, [dst, #64 + 56]
add dst, dst, #128
add tmp2, tmp2, #prefetch_lines * 64
b .Lcpy_body_medium
#else
/* Long copy. Use an SMS style loop to maximize the I/O
bandwidth of the core. We don't have enough spare registers
to synthesise prefetching, so use PLD operations. */
/* Pre-bias src and dst. */
sub src, src, #8
sub dst, dst, #8
pld [src, #8]
pld [src, #72]
subs tmp2, tmp2, #64
pld [src, #136]
ldrd A_l, A_h, [src, #8]
strd B_l, B_h, [sp, #8]
ldrd B_l, B_h, [src, #16]
strd C_l, C_h, [sp, #16]
ldrd C_l, C_h, [src, #24]
strd D_l, D_h, [sp, #24]
pld [src, #200]
ldrd D_l, D_h, [src, #32]!
b 1f
.p2align 6
2:
pld [src, #232]
strd A_l, A_h, [dst, #40]
ldrd A_l, A_h, [src, #40]
strd B_l, B_h, [dst, #48]
ldrd B_l, B_h, [src, #48]
strd C_l, C_h, [dst, #56]
ldrd C_l, C_h, [src, #56]
strd D_l, D_h, [dst, #64]!
ldrd D_l, D_h, [src, #64]!
subs tmp2, tmp2, #64
1:
strd A_l, A_h, [dst, #8]
ldrd A_l, A_h, [src, #8]
strd B_l, B_h, [dst, #16]
ldrd B_l, B_h, [src, #16]
strd C_l, C_h, [dst, #24]
ldrd C_l, C_h, [src, #24]
strd D_l, D_h, [dst, #32]
ldrd D_l, D_h, [src, #32]
bcs 2b
/* Save the remaining bytes and restore the callee-saved regs. */
strd A_l, A_h, [dst, #40]
add src, src, #40
strd B_l, B_h, [dst, #48]
ldrd B_l, B_h, [sp, #8]
strd C_l, C_h, [dst, #56]
ldrd C_l, C_h, [sp, #16]
strd D_l, D_h, [dst, #64]
ldrd D_l, D_h, [sp, #24]
add dst, dst, #72
tst tmp2, #0x3f
bne .Ltail63aligned
ldr tmp2, [sp], #FRAME_SIZE
bx lr
#endif
.Lcpy_notaligned:
pld [src]
pld [src, #64]
/* There's at least 64 bytes to copy, but there is no mutual
alignment. */
/* Bring DST to 64-bit alignment. */
lsls tmp2, dst, #29
pld [src, #(2 * 64)]
beq 1f
rsbs tmp2, tmp2, #0
sub count, count, tmp2, lsr #29
ldrmi tmp1, [src], #4
strmi tmp1, [dst], #4
lsls tmp2, tmp2, #2
ldrbne tmp1, [src], #1
ldrhcs tmp2, [src], #2
strbne tmp1, [dst], #1
strhcs tmp2, [dst], #2
1:
pld [src, #(3 * 64)]
subs count, count, #64
ldrmi tmp2, [sp], #FRAME_SIZE
bmi .Ltail63unaligned
pld [src, #(4 * 64)]
#ifdef USE_NEON
vld1.8 {d0-d3}, [src]!
vld1.8 {d4-d7}, [src]!
subs count, count, #64
bmi 2f
1:
pld [src, #(4 * 64)]
vst1.8 {d0-d3}, [ALIGN (dst, 64)]!
vld1.8 {d0-d3}, [src]!
vst1.8 {d4-d7}, [ALIGN (dst, 64)]!
vld1.8 {d4-d7}, [src]!
subs count, count, #64
bpl 1b
2:
vst1.8 {d0-d3}, [ALIGN (dst, 64)]!
vst1.8 {d4-d7}, [ALIGN (dst, 64)]!
ands count, count, #0x3f
#else
/* Use an SMS style loop to maximize the I/O bandwidth. */
sub src, src, #4
sub dst, dst, #8
subs tmp2, count, #64 /* Use tmp2 for count. */
ldr A_l, [src, #4]
ldr A_h, [src, #8]
strd B_l, B_h, [sp, #8]
ldr B_l, [src, #12]
ldr B_h, [src, #16]
strd C_l, C_h, [sp, #16]
ldr C_l, [src, #20]
ldr C_h, [src, #24]
strd D_l, D_h, [sp, #24]
ldr D_l, [src, #28]
ldr D_h, [src, #32]!
b 1f
.p2align 6
2:
pld [src, #(5 * 64) - (32 - 4)]
strd A_l, A_h, [dst, #40]
ldr A_l, [src, #36]
ldr A_h, [src, #40]
strd B_l, B_h, [dst, #48]
ldr B_l, [src, #44]
ldr B_h, [src, #48]
strd C_l, C_h, [dst, #56]
ldr C_l, [src, #52]
ldr C_h, [src, #56]
strd D_l, D_h, [dst, #64]!
ldr D_l, [src, #60]
ldr D_h, [src, #64]!
subs tmp2, tmp2, #64
1:
strd A_l, A_h, [dst, #8]
ldr A_l, [src, #4]
ldr A_h, [src, #8]
strd B_l, B_h, [dst, #16]
ldr B_l, [src, #12]
ldr B_h, [src, #16]
strd C_l, C_h, [dst, #24]
ldr C_l, [src, #20]
ldr C_h, [src, #24]
strd D_l, D_h, [dst, #32]
ldr D_l, [src, #28]
ldr D_h, [src, #32]
bcs 2b
/* Save the remaining bytes and restore the callee-saved regs. */
strd A_l, A_h, [dst, #40]
add src, src, #36
strd B_l, B_h, [dst, #48]
ldrd B_l, B_h, [sp, #8]
strd C_l, C_h, [dst, #56]
ldrd C_l, C_h, [sp, #16]
strd D_l, D_h, [dst, #64]
ldrd D_l, D_h, [sp, #24]
add dst, dst, #72
ands count, tmp2, #0x3f
#endif
ldr tmp2, [sp], #FRAME_SIZE
bne .Ltail63unaligned
bx lr
END(memcpy)

View File

@@ -169,7 +169,5 @@ ENTRY(siglongjmp)
bx lr
END(siglongjmp)
.globl longjmp
.equ longjmp, siglongjmp
.globl _longjmp
.equ _longjmp, siglongjmp
ALIAS_SYMBOL(longjmp, siglongjmp)
ALIAS_SYMBOL(_longjmp, siglongjmp)

View File

@@ -1,317 +0,0 @@
/*
* Copyright (c) 2011 The Android Open Source Project
* Copyright (c) 2008 ARM Ltd
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. The name of the company may not be used to endorse or promote
* products derived from this software without specific prior written
* permission.
*
* THIS SOFTWARE IS PROVIDED BY ARM LTD ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL ARM LTD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <machine/cpu-features.h>
#include <private/bionic_asm.h>
.text
#ifdef __ARMEB__
#define SHFT2LSB lsl
#define SHFT2LSBEQ lsleq
#define SHFT2MSB lsr
#define SHFT2MSBEQ lsreq
#define MSB 0x000000ff
#define LSB 0xff000000
#else
#define SHFT2LSB lsr
#define SHFT2LSBEQ lsreq
#define SHFT2MSB lsl
#define SHFT2MSBEQ lsleq
#define MSB 0xff000000
#define LSB 0x000000ff
#endif
#define magic1(REG) REG
#define magic2(REG) REG, lsl #7
ENTRY(strcmp)
pld [r0, #0]
pld [r1, #0]
eor r2, r0, r1
tst r2, #3
/* Strings not at same byte offset from a word boundary. */
bne .Lstrcmp_unaligned
ands r2, r0, #3
bic r0, r0, #3
bic r1, r1, #3
ldr ip, [r0], #4
it eq
ldreq r3, [r1], #4
beq 1f
/* Although s1 and s2 have identical initial alignment, they are
* not currently word aligned. Rather than comparing bytes,
* make sure that any bytes fetched from before the addressed
* bytes are forced to 0xff. Then they will always compare
* equal.
*/
eor r2, r2, #3
lsl r2, r2, #3
mvn r3, #MSB
SHFT2LSB r2, r3, r2
ldr r3, [r1], #4
orr ip, ip, r2
orr r3, r3, r2
1:
/* Load the 'magic' constant 0x01010101. */
str r4, [sp, #-4]!
mov r4, #1
orr r4, r4, r4, lsl #8
orr r4, r4, r4, lsl #16
.p2align 2
4:
pld [r0, #8]
pld [r1, #8]
sub r2, ip, magic1(r4)
cmp ip, r3
itttt eq
/* check for any zero bytes in first word */
biceq r2, r2, ip
tsteq r2, magic2(r4)
ldreq ip, [r0], #4
ldreq r3, [r1], #4
beq 4b
2:
/* There's a zero or a different byte in the word */
SHFT2MSB r0, ip, #24
SHFT2LSB ip, ip, #8
cmp r0, #1
it cs
cmpcs r0, r3, SHFT2MSB #24
it eq
SHFT2LSBEQ r3, r3, #8
beq 2b
/* On a big-endian machine, r0 contains the desired byte in bits
* 0-7; on a little-endian machine they are in bits 24-31. In
* both cases the other bits in r0 are all zero. For r3 the
* interesting byte is at the other end of the word, but the
* other bits are not necessarily zero. We need a signed result
* representing the differnece in the unsigned bytes, so for the
* little-endian case we can't just shift the interesting bits up.
*/
#ifdef __ARMEB__
sub r0, r0, r3, lsr #24
#else
and r3, r3, #255
/* No RSB instruction in Thumb2 */
#ifdef __thumb2__
lsr r0, r0, #24
sub r0, r0, r3
#else
rsb r0, r3, r0, lsr #24
#endif
#endif
ldr r4, [sp], #4
bx lr
.Lstrcmp_unaligned:
wp1 .req r0
wp2 .req r1
b1 .req r2
w1 .req r4
w2 .req r5
t1 .req ip
@ r3 is scratch
/* First of all, compare bytes until wp1(sp1) is word-aligned. */
1:
tst wp1, #3
beq 2f
ldrb r2, [wp1], #1
ldrb r3, [wp2], #1
cmp r2, #1
it cs
cmpcs r2, r3
beq 1b
sub r0, r2, r3
bx lr
2:
str r5, [sp, #-4]!
str r4, [sp, #-4]!
mov b1, #1
orr b1, b1, b1, lsl #8
orr b1, b1, b1, lsl #16
and t1, wp2, #3
bic wp2, wp2, #3
ldr w1, [wp1], #4
ldr w2, [wp2], #4
cmp t1, #2
beq 2f
bhi 3f
/* Critical inner Loop: Block with 3 bytes initial overlap */
.p2align 2
1:
bic t1, w1, #MSB
cmp t1, w2, SHFT2LSB #8
sub r3, w1, b1
bic r3, r3, w1
bne 4f
ands r3, r3, b1, lsl #7
it eq
ldreq w2, [wp2], #4
bne 5f
eor t1, t1, w1
cmp t1, w2, SHFT2MSB #24
bne 6f
ldr w1, [wp1], #4
b 1b
4:
SHFT2LSB w2, w2, #8
b 8f
5:
#ifdef __ARMEB__
/* The syndrome value may contain false ones if the string ends
* with the bytes 0x01 0x00
*/
tst w1, #0xff000000
itt ne
tstne w1, #0x00ff0000
tstne w1, #0x0000ff00
beq 7f
#else
bics r3, r3, #0xff000000
bne 7f
#endif
ldrb w2, [wp2]
SHFT2LSB t1, w1, #24
#ifdef __ARMEB__
lsl w2, w2, #24
#endif
b 8f
6:
SHFT2LSB t1, w1, #24
and w2, w2, #LSB
b 8f
/* Critical inner Loop: Block with 2 bytes initial overlap */
.p2align 2
2:
SHFT2MSB t1, w1, #16
sub r3, w1, b1
SHFT2LSB t1, t1, #16
bic r3, r3, w1
cmp t1, w2, SHFT2LSB #16
bne 4f
ands r3, r3, b1, lsl #7
it eq
ldreq w2, [wp2], #4
bne 5f
eor t1, t1, w1
cmp t1, w2, SHFT2MSB #16
bne 6f
ldr w1, [wp1], #4
b 2b
5:
#ifdef __ARMEB__
/* The syndrome value may contain false ones if the string ends
* with the bytes 0x01 0x00
*/
tst w1, #0xff000000
it ne
tstne w1, #0x00ff0000
beq 7f
#else
lsls r3, r3, #16
bne 7f
#endif
ldrh w2, [wp2]
SHFT2LSB t1, w1, #16
#ifdef __ARMEB__
lsl w2, w2, #16
#endif
b 8f
6:
SHFT2MSB w2, w2, #16
SHFT2LSB t1, w1, #16
4:
SHFT2LSB w2, w2, #16
b 8f
/* Critical inner Loop: Block with 1 byte initial overlap */
.p2align 2
3:
and t1, w1, #LSB
cmp t1, w2, SHFT2LSB #24
sub r3, w1, b1
bic r3, r3, w1
bne 4f
ands r3, r3, b1, lsl #7
it eq
ldreq w2, [wp2], #4
bne 5f
eor t1, t1, w1
cmp t1, w2, SHFT2MSB #8
bne 6f
ldr w1, [wp1], #4
b 3b
4:
SHFT2LSB w2, w2, #24
b 8f
5:
/* The syndrome value may contain false ones if the string ends
* with the bytes 0x01 0x00
*/
tst w1, #LSB
beq 7f
ldr w2, [wp2], #4
6:
SHFT2LSB t1, w1, #8
bic w2, w2, #MSB
b 8f
7:
mov r0, #0
ldr r4, [sp], #4
ldr r5, [sp], #4
bx lr
8:
and r2, t1, #LSB
and r0, w2, #LSB
cmp r0, #1
it cs
cmpcs r0, r2
itt eq
SHFT2LSBEQ t1, t1, #8
SHFT2LSBEQ w2, w2, #8
beq 8b
sub r0, r2, r0
ldr r4, [sp], #4
ldr r5, [sp], #4
bx lr
END(strcmp)

View File

@@ -8,4 +8,9 @@ libc_bionic_src_files_arm += \
arch-arm/cortex-a15/bionic/strcpy.S \
arch-arm/cortex-a15/bionic/__strcpy_chk.S \
arch-arm/cortex-a15/bionic/strlen.S \
bionic/memmove.c \
libc_bionic_src_files_arm += \
arch-arm/generic/bionic/memcmp.S \
libc_bionic_src_files_arm += \
arch-arm/denver/bionic/memmove.S \

View File

@@ -0,0 +1 @@
include bionic/libc/arch-arm/cortex-a7/cortex-a7.mk

View File

@@ -35,6 +35,7 @@
*/
.fpu neon
.syntax unified
ENTRY(__memset_chk)
cmp r2, r3
@@ -100,9 +101,9 @@ ENTRY(memset)
1: bge 2f
vst1.32 {d0[0]}, [r0]!
2: movs ip, r2, lsl #31
strmib r1, [r0], #1
strcsb r1, [r0], #1
strcsb r1, [r0], #1
strbmi r1, [r0], #1
strbcs r1, [r0], #1
strbcs r1, [r0], #1
ldmfd sp!, {r0}
bx lr
END(memset)
@@ -131,11 +132,11 @@ ENTRY_PRIVATE(__memset_large_copy)
orr r1, r1, r1, lsr #16
movs r12, r3, lsl #31
strcsb r1, [r0], #1 /* can't use strh (alignment unknown) */
strcsb r1, [r0], #1
strmib r1, [r0], #1
strbcs r1, [r0], #1 /* can't use strh (alignment unknown) */
strbcs r1, [r0], #1
strbmi r1, [r0], #1
subs r2, r2, r3
ldmlsfd sp!, {r0, r4-r7, lr} /* return */
popls {r0, r4-r7, lr} /* return */
bxls lr
/* align the destination to a cache-line */
@@ -155,9 +156,9 @@ ENTRY_PRIVATE(__memset_large_copy)
/* conditionally writes 0 to 7 words (length in r3) */
movs r3, r3, lsl #28
stmcsia r0!, {r1, lr}
stmcsia r0!, {r1, lr}
stmmiia r0!, {r1, lr}
stmcs r0!, {r1, lr}
stmcs r0!, {r1, lr}
stmmi r0!, {r1, lr}
movs r3, r3, lsl #2
strcs r1, [r0], #4
@@ -172,13 +173,13 @@ ENTRY_PRIVATE(__memset_large_copy)
/* conditionally stores 0 to 31 bytes */
movs r2, r2, lsl #28
stmcsia r0!, {r1,r3,r12,lr}
stmmiia r0!, {r1, lr}
stmcs r0!, {r1,r3,r12,lr}
stmmi r0!, {r1, lr}
movs r2, r2, lsl #2
strcs r1, [r0], #4
strmih r1, [r0], #2
strhmi r1, [r0], #2
movs r2, r2, lsl #2
strcsb r1, [r0]
strbcs r1, [r0]
ldmfd sp!, {r0, r4-r7, lr}
bx lr
END(__memset_large_copy)

View File

@@ -8,4 +8,9 @@ libc_bionic_src_files_arm += \
arch-arm/cortex-a9/bionic/strcpy.S \
arch-arm/cortex-a9/bionic/__strcpy_chk.S \
arch-arm/cortex-a9/bionic/strlen.S \
bionic/memmove.c \
libc_bionic_src_files_arm += \
arch-arm/generic/bionic/memcmp.S \
libc_bionic_src_files_arm += \
arch-arm/denver/bionic/memmove.S \

View File

@@ -1,4 +1,5 @@
libc_bionic_src_files_arm += \
arch-arm/generic/bionic/memcmp.S \
arch-arm/denver/bionic/memcpy.S \
arch-arm/denver/bionic/memmove.S \
arch-arm/denver/bionic/memset.S \

View File

@@ -40,6 +40,8 @@
* Optimized memcmp() for Cortex-A9.
*/
.syntax unified
ENTRY(memcmp)
pld [r0, #(CACHE_LINE_SIZE * 0)]
pld [r0, #(CACHE_LINE_SIZE * 1)]
@@ -161,25 +163,25 @@ ENTRY(memcmp)
eors r0, r0, ip
ldreq r0, [r4], #4
ldreq ip, [r1, #4]!
eoreqs r0, r0, lr
eorseq r0, r0, lr
ldreq r0, [r4], #4
ldreq lr, [r1, #4]!
eoreqs r0, r0, ip
eorseq r0, r0, ip
ldreq r0, [r4], #4
ldreq ip, [r1, #4]!
eoreqs r0, r0, lr
eorseq r0, r0, lr
ldreq r0, [r4], #4
ldreq lr, [r1, #4]!
eoreqs r0, r0, ip
eorseq r0, r0, ip
ldreq r0, [r4], #4
ldreq ip, [r1, #4]!
eoreqs r0, r0, lr
eorseq r0, r0, lr
ldreq r0, [r4], #4
ldreq lr, [r1, #4]!
eoreqs r0, r0, ip
eorseq r0, r0, ip
ldreq r0, [r4], #4
ldreq ip, [r1, #4]!
eoreqs r0, r0, lr
eorseq r0, r0, lr
bne 2f
subs r2, r2, #32
bhs 0b
@@ -263,17 +265,17 @@ ENTRY(memcmp)
ldreq lr, [r1], #4
ldreq r0, [r4], #4
orreq ip, ip, lr, lsl #16
eoreqs r0, r0, ip
eorseq r0, r0, ip
moveq ip, lr, lsr #16
ldreq lr, [r1], #4
ldreq r0, [r4], #4
orreq ip, ip, lr, lsl #16
eoreqs r0, r0, ip
eorseq r0, r0, ip
moveq ip, lr, lsr #16
ldreq lr, [r1], #4
ldreq r0, [r4], #4
orreq ip, ip, lr, lsl #16
eoreqs r0, r0, ip
eorseq r0, r0, ip
bne 7f
subs r2, r2, #16
bhs 6b
@@ -317,7 +319,7 @@ ENTRY(memcmp)
ldreq r7, [r1], #4
ldreq r0, [r4], #4
orreq ip, ip, r7, lsl r6
eoreqs r0, r0, ip
eorseq r0, r0, ip
bne 7f
subs r2, r2, #8
bhs 6b

View File

@@ -37,6 +37,8 @@
* so we have to preserve R0.
*/
.syntax unified
ENTRY(__memcpy_chk)
cmp r2, r3
bhi __memcpy_chk_fail
@@ -81,12 +83,12 @@ ENTRY(memcpy)
*/
movs r12, r3, lsl #31
sub r2, r2, r3 /* we know that r3 <= r2 because r2 >= 4 */
ldrmib r3, [r1], #1
ldrcsb r4, [r1], #1
ldrcsb r12,[r1], #1
strmib r3, [r0], #1
strcsb r4, [r0], #1
strcsb r12,[r0], #1
ldrbmi r3, [r1], #1
ldrbcs r4, [r1], #1
ldrbcs r12,[r1], #1
strbmi r3, [r0], #1
strbcs r4, [r0], #1
strbcs r12,[r0], #1
.Lsrc_aligned:
@@ -109,10 +111,10 @@ ENTRY(memcpy)
/* conditionally copies 0 to 7 words (length in r3) */
movs r12, r3, lsl #28
ldmcsia r1!, {r4, r5, r6, r7} /* 16 bytes */
ldmmiia r1!, {r8, r9} /* 8 bytes */
stmcsia r0!, {r4, r5, r6, r7}
stmmiia r0!, {r8, r9}
ldmcs r1!, {r4, r5, r6, r7} /* 16 bytes */
ldmmi r1!, {r8, r9} /* 8 bytes */
stmcs r0!, {r4, r5, r6, r7}
stmmi r0!, {r8, r9}
tst r3, #0x4
ldrne r10,[r1], #4 /* 4 bytes */
strne r10,[r0], #4
@@ -177,18 +179,18 @@ ENTRY(memcpy)
/* conditionnaly copies 0 to 31 bytes */
movs r12, r2, lsl #28
ldmcsia r1!, {r4, r5, r6, r7} /* 16 bytes */
ldmmiia r1!, {r8, r9} /* 8 bytes */
stmcsia r0!, {r4, r5, r6, r7}
stmmiia r0!, {r8, r9}
ldmcs r1!, {r4, r5, r6, r7} /* 16 bytes */
ldmmi r1!, {r8, r9} /* 8 bytes */
stmcs r0!, {r4, r5, r6, r7}
stmmi r0!, {r8, r9}
movs r12, r2, lsl #30
ldrcs r3, [r1], #4 /* 4 bytes */
ldrmih r4, [r1], #2 /* 2 bytes */
ldrhmi r4, [r1], #2 /* 2 bytes */
strcs r3, [r0], #4
strmih r4, [r0], #2
strhmi r4, [r0], #2
tst r2, #0x1
ldrneb r3, [r1] /* last byte */
strneb r3, [r0]
ldrbne r3, [r1] /* last byte */
strbne r3, [r0]
/* we're done! restore everything and return */
1: ldmfd sp!, {r5-r11}
@@ -228,11 +230,11 @@ ENTRY(memcpy)
* becomes aligned to 32 bits (r5 = nb of words to copy for alignment)
*/
movs r5, r5, lsl #31
strmib r3, [r0], #1
strbmi r3, [r0], #1
movmi r3, r3, lsr #8
strcsb r3, [r0], #1
strbcs r3, [r0], #1
movcs r3, r3, lsr #8
strcsb r3, [r0], #1
strbcs r3, [r0], #1
movcs r3, r3, lsr #8
cmp r2, #4
@@ -363,23 +365,23 @@ ENTRY(memcpy)
.Lpartial_word_tail:
/* we have a partial word in the input buffer */
movs r5, lr, lsl #(31-3)
strmib r3, [r0], #1
strbmi r3, [r0], #1
movmi r3, r3, lsr #8
strcsb r3, [r0], #1
strbcs r3, [r0], #1
movcs r3, r3, lsr #8
strcsb r3, [r0], #1
strbcs r3, [r0], #1
/* Refill spilled registers from the stack. Don't update sp. */
ldmfd sp, {r5-r11}
.Lcopy_last_3_and_return:
movs r2, r2, lsl #31 /* copy remaining 0, 1, 2 or 3 bytes */
ldrmib r2, [r1], #1
ldrcsb r3, [r1], #1
ldrcsb r12,[r1]
strmib r2, [r0], #1
strcsb r3, [r0], #1
strcsb r12,[r0]
ldrbmi r2, [r1], #1
ldrbcs r3, [r1], #1
ldrbcs r12,[r1]
strbmi r2, [r0], #1
strbcs r3, [r0], #1
strbcs r12,[r0]
/* we're done! restore sp and spilled registers and return */
add sp, sp, #28

View File

@@ -35,6 +35,8 @@
* memset() returns its first argument.
*/
.syntax unified
ENTRY(__memset_chk)
cmp r2, r3
bls done
@@ -76,11 +78,11 @@ ENTRY(memset)
orr r1, r1, r1, lsr #16
movs r12, r3, lsl #31
strcsb r1, [r0], #1 /* can't use strh (alignment unknown) */
strcsb r1, [r0], #1
strmib r1, [r0], #1
strbcs r1, [r0], #1 /* can't use strh (alignment unknown) */
strbcs r1, [r0], #1
strbmi r1, [r0], #1
subs r2, r2, r3
ldmlsfd sp!, {r0, r4-r7, lr} /* return */
popls {r0, r4-r7, lr} /* return */
bxls lr
/* align the destination to a cache-line */
@@ -100,9 +102,9 @@ ENTRY(memset)
/* conditionally writes 0 to 7 words (length in r3) */
movs r3, r3, lsl #28
stmcsia r0!, {r1, lr}
stmcsia r0!, {r1, lr}
stmmiia r0!, {r1, lr}
stmcs r0!, {r1, lr}
stmcs r0!, {r1, lr}
stmmi r0!, {r1, lr}
movs r3, r3, lsl #2
strcs r1, [r0], #4
@@ -117,13 +119,13 @@ ENTRY(memset)
/* conditionally stores 0 to 31 bytes */
movs r2, r2, lsl #28
stmcsia r0!, {r1,r3,r12,lr}
stmmiia r0!, {r1, lr}
stmcs r0!, {r1,r3,r12,lr}
stmmi r0!, {r1, lr}
movs r2, r2, lsl #2
strcs r1, [r0], #4
strmih r1, [r0], #2
strhmi r1, [r0], #2
movs r2, r2, lsl #2
strcsb r1, [r0]
strbcs r1, [r0]
ldmfd sp!, {r0, r4-r7, lr}
bx lr
END(memset)

View File

@@ -32,6 +32,8 @@
#include <machine/cpu-features.h>
#include <private/bionic_asm.h>
.syntax unified
ENTRY(strcpy)
pld [r1, #0]
eor r2, r0, r1
@@ -108,15 +110,15 @@ ENTRY(strcpy)
#ifdef __ARMEB__
tst r2, #0xff00
iteet ne
strneh r2, [ip], #2
strhne r2, [ip], #2
lsreq r2, r2, #8
streqb r2, [ip]
strbeq r2, [ip]
tstne r2, #0xff
#else
tst r2, #0xff
itet ne
strneh r2, [ip], #2
streqb r2, [ip]
strhne r2, [ip], #2
strbeq r2, [ip]
tstne r2, #0xff00
#endif
bne 5b

View File

@@ -1,11 +1,14 @@
libc_bionic_src_files_arm += \
arch-arm/generic/bionic/memcmp.S \
arch-arm/generic/bionic/memcpy.S \
arch-arm/generic/bionic/memset.S \
arch-arm/generic/bionic/strcmp.S \
arch-arm/generic/bionic/strcpy.S \
arch-arm/generic/bionic/strlen.c \
bionic/memmove.c \
bionic/__strcat_chk.cpp \
bionic/__strcpy_chk.cpp \
libc_openbsd_src_files_arm += \
upstream-openbsd/lib/libc/string/memmove.c \
upstream-openbsd/lib/libc/string/stpcpy.c \
upstream-openbsd/lib/libc/string/strcat.c \

View File

@@ -102,6 +102,8 @@
/* 112-127 are reserved for private experiments. */
#define R_ARM_IRELATIVE 160
#define R_ARM_RXPC25 249
#define R_ARM_RSBREL32 250
#define R_ARM_THM_RPC22 251

View File

@@ -37,6 +37,7 @@
*/
.fpu neon
.syntax unified
ENTRY(__memset_chk)
cmp r2, r3
@@ -98,9 +99,9 @@ ENTRY(memset)
1: bge 2f
vst1.32 {d0[0]}, [r0]!
2: movs ip, r2, lsl #31
strmib r1, [r0], #1
strcsb r1, [r0], #1
strcsb r1, [r0], #1
strbmi r1, [r0], #1
strbcs r1, [r0], #1
strbcs r1, [r0], #1
ldmfd sp!, {r0}
bx lr
END(memset)

View File

@@ -11,4 +11,9 @@ libc_bionic_src_files_arm += \
arch-arm/cortex-a15/bionic/strcat.S \
arch-arm/cortex-a15/bionic/strcpy.S \
arch-arm/cortex-a15/bionic/strlen.S \
bionic/memmove.c \
libc_bionic_src_files_arm += \
arch-arm/generic/bionic/memcmp.S \
libc_bionic_src_files_arm += \
arch-arm/denver/bionic/memmove.S \

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(__clock_nanosleep)
ENTRY(___clock_nanosleep)
mov ip, r7
ldr r7, =__NR_clock_nanosleep
swi #0
@@ -11,4 +11,5 @@ ENTRY(__clock_nanosleep)
bxls lr
neg r0, r0
b __set_errno_internal
END(__clock_nanosleep)
END(___clock_nanosleep)
.hidden ___clock_nanosleep

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(close)
ENTRY(___close)
mov ip, r7
ldr r7, =__NR_close
swi #0
@@ -11,4 +11,5 @@ ENTRY(close)
bxls lr
neg r0, r0
b __set_errno_internal
END(close)
END(___close)
.hidden ___close

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(faccessat)
ENTRY(___faccessat)
mov ip, r7
ldr r7, =__NR_faccessat
swi #0
@@ -11,4 +11,5 @@ ENTRY(faccessat)
bxls lr
neg r0, r0
b __set_errno_internal
END(faccessat)
END(___faccessat)
.hidden ___faccessat

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fchmod)
ENTRY(___fchmod)
mov ip, r7
ldr r7, =__NR_fchmod
swi #0
@@ -11,4 +11,5 @@ ENTRY(fchmod)
bxls lr
neg r0, r0
b __set_errno_internal
END(fchmod)
END(___fchmod)
.hidden ___fchmod

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fchmodat)
ENTRY(___fchmodat)
mov ip, r7
ldr r7, =__NR_fchmodat
swi #0
@@ -11,4 +11,5 @@ ENTRY(fchmodat)
bxls lr
neg r0, r0
b __set_errno_internal
END(fchmodat)
END(___fchmodat)
.hidden ___fchmodat

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fgetxattr)
ENTRY(___fgetxattr)
mov ip, r7
ldr r7, =__NR_fgetxattr
swi #0
@@ -11,4 +11,5 @@ ENTRY(fgetxattr)
bxls lr
neg r0, r0
b __set_errno_internal
END(fgetxattr)
END(___fgetxattr)
.hidden ___fgetxattr

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fsetxattr)
ENTRY(___fsetxattr)
mov ip, sp
stmfd sp!, {r4, r5, r6, r7}
.cfi_def_cfa_offset 16
@@ -19,4 +19,5 @@ ENTRY(fsetxattr)
bxls lr
neg r0, r0
b __set_errno_internal
END(fsetxattr)
END(___fsetxattr)
.hidden ___fsetxattr

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(__rt_sigqueueinfo)
ENTRY(___rt_sigqueueinfo)
mov ip, r7
ldr r7, =__NR_rt_sigqueueinfo
swi #0
@@ -11,4 +11,5 @@ ENTRY(__rt_sigqueueinfo)
bxls lr
neg r0, r0
b __set_errno_internal
END(__rt_sigqueueinfo)
END(___rt_sigqueueinfo)
.hidden ___rt_sigqueueinfo

View File

@@ -13,5 +13,4 @@ ENTRY(_exit)
b __set_errno_internal
END(_exit)
.globl _Exit
.equ _Exit, _exit
ALIAS_SYMBOL(_Exit, _exit)

View File

@@ -13,5 +13,4 @@ ENTRY(fstat64)
b __set_errno_internal
END(fstat64)
.globl fstat
.equ fstat, fstat64
ALIAS_SYMBOL(fstat, fstat64)

View File

@@ -13,5 +13,4 @@ ENTRY(fstatat64)
b __set_errno_internal
END(fstatat64)
.globl fstatat
.equ fstatat, fstatat64
ALIAS_SYMBOL(fstatat, fstatat64)

View File

@@ -1,14 +0,0 @@
/* Generated by gensyscalls.py. Do not edit. */
#include <private/bionic_asm.h>
ENTRY(ftruncate)
mov ip, r7
ldr r7, =__NR_ftruncate
swi #0
mov r7, ip
cmn r0, #(MAX_ERRNO + 1)
bxls lr
neg r0, r0
b __set_errno_internal
END(ftruncate)

View File

@@ -0,0 +1,22 @@
/* Generated by gensyscalls.py. Do not edit. */
#include <private/bionic_asm.h>
ENTRY(process_vm_readv)
mov ip, sp
stmfd sp!, {r4, r5, r6, r7}
.cfi_def_cfa_offset 16
.cfi_rel_offset r4, 0
.cfi_rel_offset r5, 4
.cfi_rel_offset r6, 8
.cfi_rel_offset r7, 12
ldmfd ip, {r4, r5, r6}
ldr r7, =__NR_process_vm_readv
swi #0
ldmfd sp!, {r4, r5, r6, r7}
.cfi_def_cfa_offset 0
cmn r0, #(MAX_ERRNO + 1)
bxls lr
neg r0, r0
b __set_errno_internal
END(process_vm_readv)

View File

@@ -0,0 +1,22 @@
/* Generated by gensyscalls.py. Do not edit. */
#include <private/bionic_asm.h>
ENTRY(process_vm_writev)
mov ip, sp
stmfd sp!, {r4, r5, r6, r7}
.cfi_def_cfa_offset 16
.cfi_rel_offset r4, 0
.cfi_rel_offset r5, 4
.cfi_rel_offset r6, 8
.cfi_rel_offset r7, 12
ldmfd ip, {r4, r5, r6}
ldr r7, =__NR_process_vm_writev
swi #0
ldmfd sp!, {r4, r5, r6, r7}
.cfi_def_cfa_offset 0
cmn r0, #(MAX_ERRNO + 1)
bxls lr
neg r0, r0
b __set_errno_internal
END(process_vm_writev)

View File

@@ -8,7 +8,6 @@ libc_bionic_src_files_arm64 += \
bionic/__memset_chk.cpp \
bionic/__strcpy_chk.cpp \
bionic/__strcat_chk.cpp \
bionic/memrchr.c \
bionic/strrchr.cpp \
libc_freebsd_src_files_arm64 += \
@@ -21,6 +20,7 @@ libc_freebsd_src_files_arm64 += \
upstream-freebsd/lib/libc/string/wmemcmp.c \
libc_openbsd_src_files_arm64 += \
upstream-openbsd/lib/libc/string/memrchr.c \
upstream-openbsd/lib/libc/string/stpncpy.c \
upstream-openbsd/lib/libc/string/strcat.c \
upstream-openbsd/lib/libc/string/strlcat.c \
@@ -59,6 +59,6 @@ ifeq ($(wildcard $(cpu_variant_mk)),)
$(error "TARGET_CPU_VARIANT not set or set to an unknown value. Possible values are generic, denver64. Use generic for devices that do not have a CPU similar to any of the supported cpu variants.")
endif
include $(cpu_variant_mk)
libc_common_additional_dependencies += $(cpu_variank_mk)
libc_common_additional_dependencies += $(cpu_variant_mk)
cpu_variant_mk :=

View File

@@ -67,3 +67,4 @@ __asm__ (
#include "../../arch-common/bionic/__dso_handle.h"
#include "../../arch-common/bionic/atexit.h"
#include "../../arch-common/bionic/pthread_atfork.h"

View File

@@ -49,8 +49,8 @@
#define _JB_X19 (_JB_X20_X21 + 2)
#define _JB_D14_D15 (_JB_X19 + 1)
#define _JB_D12_D13 (_JB_D14_D15 + 2)
#define _JB_D10_D11 (_JB_D12_D13 + 1)
#define _JB_D8_D9 (_JB_D10_D11 + 1)
#define _JB_D10_D11 (_JB_D12_D13 + 2)
#define _JB_D8_D9 (_JB_D10_D11 + 2)
ENTRY(setjmp)
mov w1, #1
@@ -146,7 +146,5 @@ ENTRY(siglongjmp)
ret
END(siglongjmp)
.globl longjmp
.equ longjmp, siglongjmp
.globl _longjmp
.equ _longjmp, siglongjmp
ALIAS_SYMBOL(longjmp, siglongjmp)
ALIAS_SYMBOL(_longjmp, siglongjmp)

View File

@@ -0,0 +1 @@
include bionic/libc/arch-arm64/generic/generic.mk

View File

@@ -101,7 +101,7 @@ ENTRY(memchr)
and vhas_chr2.16b, vhas_chr2.16b, vrepmask.16b
addp vend.16b, vhas_chr1.16b, vhas_chr2.16b /* 256->128 */
addp vend.16b, vend.16b, vend.16b /* 128->64 */
mov synd, vend.2d[0]
mov synd, vend.d[0]
/* Clear the soff*2 lower bits */
lsl tmp, soff, #1
lsr synd, synd, tmp
@@ -121,7 +121,7 @@ ENTRY(memchr)
/* Use a fast check for the termination condition */
orr vend.16b, vhas_chr1.16b, vhas_chr2.16b
addp vend.2d, vend.2d, vend.2d
mov synd, vend.2d[0]
mov synd, vend.d[0]
/* We're not out of data, loop if we haven't found the character */
cbz synd, .Lloop
@@ -131,7 +131,7 @@ ENTRY(memchr)
and vhas_chr2.16b, vhas_chr2.16b, vrepmask.16b
addp vend.16b, vhas_chr1.16b, vhas_chr2.16b /* 256->128 */
addp vend.16b, vend.16b, vend.16b /* 128->64 */
mov synd, vend.2d[0]
mov synd, vend.d[0]
/* Only do the clear for the last possible block */
b.hi .Ltail

View File

@@ -109,7 +109,7 @@ ENTRY(strchr)
addp vend1.16b, vend1.16b, vend2.16b // 128->64
lsr tmp1, tmp3, tmp1
mov tmp3, vend1.2d[0]
mov tmp3, vend1.d[0]
bic tmp1, tmp3, tmp1 // Mask padding bits.
cbnz tmp1, .Ltail
@@ -124,7 +124,7 @@ ENTRY(strchr)
orr vend2.16b, vhas_nul2.16b, vhas_chr2.16b
orr vend1.16b, vend1.16b, vend2.16b
addp vend1.2d, vend1.2d, vend1.2d
mov tmp1, vend1.2d[0]
mov tmp1, vend1.d[0]
cbz tmp1, .Lloop
/* Termination condition found. Now need to establish exactly why
@@ -138,7 +138,7 @@ ENTRY(strchr)
addp vend1.16b, vend1.16b, vend2.16b // 256->128
addp vend1.16b, vend1.16b, vend2.16b // 128->64
mov tmp1, vend1.2d[0]
mov tmp1, vend1.d[0]
.Ltail:
/* Count the trailing zeros, by bit reversing... */
rbit tmp1, tmp1

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(__clock_nanosleep)
ENTRY(___clock_nanosleep)
mov x8, __NR_clock_nanosleep
svc #0
@@ -11,5 +11,5 @@ ENTRY(__clock_nanosleep)
b.hi __set_errno_internal
ret
END(__clock_nanosleep)
.hidden __clock_nanosleep
END(___clock_nanosleep)
.hidden ___clock_nanosleep

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(close)
ENTRY(___close)
mov x8, __NR_close
svc #0
@@ -11,4 +11,5 @@ ENTRY(close)
b.hi __set_errno_internal
ret
END(close)
END(___close)
.hidden ___close

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(faccessat)
ENTRY(___faccessat)
mov x8, __NR_faccessat
svc #0
@@ -11,4 +11,5 @@ ENTRY(faccessat)
b.hi __set_errno_internal
ret
END(faccessat)
END(___faccessat)
.hidden ___faccessat

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fchmod)
ENTRY(___fchmod)
mov x8, __NR_fchmod
svc #0
@@ -11,4 +11,5 @@ ENTRY(fchmod)
b.hi __set_errno_internal
ret
END(fchmod)
END(___fchmod)
.hidden ___fchmod

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fchmodat)
ENTRY(___fchmodat)
mov x8, __NR_fchmodat
svc #0
@@ -11,4 +11,5 @@ ENTRY(fchmodat)
b.hi __set_errno_internal
ret
END(fchmodat)
END(___fchmodat)
.hidden ___fchmodat

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fgetxattr)
ENTRY(___fgetxattr)
mov x8, __NR_fgetxattr
svc #0
@@ -11,4 +11,5 @@ ENTRY(fgetxattr)
b.hi __set_errno_internal
ret
END(fgetxattr)
END(___fgetxattr)
.hidden ___fgetxattr

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fsetxattr)
ENTRY(___fsetxattr)
mov x8, __NR_fsetxattr
svc #0
@@ -11,4 +11,5 @@ ENTRY(fsetxattr)
b.hi __set_errno_internal
ret
END(fsetxattr)
END(___fsetxattr)
.hidden ___fsetxattr

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(__rt_sigqueueinfo)
ENTRY(___rt_sigqueueinfo)
mov x8, __NR_rt_sigqueueinfo
svc #0
@@ -11,5 +11,5 @@ ENTRY(__rt_sigqueueinfo)
b.hi __set_errno_internal
ret
END(__rt_sigqueueinfo)
.hidden __rt_sigqueueinfo
END(___rt_sigqueueinfo)
.hidden ___rt_sigqueueinfo

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(fstatfs64)
ENTRY(__fstatfs)
mov x8, __NR_fstatfs
svc #0
@@ -11,7 +11,5 @@ ENTRY(fstatfs64)
b.hi __set_errno_internal
ret
END(fstatfs64)
.globl fstatfs
.equ fstatfs, fstatfs64
END(__fstatfs)
.hidden __fstatfs

View File

@@ -2,7 +2,7 @@
#include <private/bionic_asm.h>
ENTRY(statfs64)
ENTRY(__statfs)
mov x8, __NR_statfs
svc #0
@@ -11,7 +11,5 @@ ENTRY(statfs64)
b.hi __set_errno_internal
ret
END(statfs64)
.globl statfs
.equ statfs, statfs64
END(__statfs)
.hidden __statfs

View File

@@ -13,5 +13,4 @@ ENTRY(_exit)
ret
END(_exit)
.globl _Exit
.equ _Exit, _exit
ALIAS_SYMBOL(_Exit, _exit)

View File

@@ -13,5 +13,4 @@ ENTRY(fallocate)
ret
END(fallocate)
.globl fallocate64
.equ fallocate64, fallocate
ALIAS_SYMBOL(fallocate64, fallocate)

View File

@@ -13,5 +13,4 @@ ENTRY(fstat64)
ret
END(fstat64)
.globl fstat
.equ fstat, fstat64
ALIAS_SYMBOL(fstat, fstat64)

View File

@@ -13,5 +13,4 @@ ENTRY(fstatat64)
ret
END(fstatat64)
.globl fstatat
.equ fstatat, fstatat64
ALIAS_SYMBOL(fstatat, fstatat64)

View File

@@ -13,5 +13,4 @@ ENTRY(ftruncate)
ret
END(ftruncate)
.globl ftruncate64
.equ ftruncate64, ftruncate
ALIAS_SYMBOL(ftruncate64, ftruncate)

View File

@@ -13,5 +13,4 @@ ENTRY(getrlimit)
ret
END(getrlimit)
.globl getrlimit64
.equ getrlimit64, getrlimit
ALIAS_SYMBOL(getrlimit64, getrlimit)

View File

@@ -13,5 +13,4 @@ ENTRY(lseek)
ret
END(lseek)
.globl lseek64
.equ lseek64, lseek
ALIAS_SYMBOL(lseek64, lseek)

View File

@@ -13,5 +13,4 @@ ENTRY(mmap)
ret
END(mmap)
.globl mmap64
.equ mmap64, mmap
ALIAS_SYMBOL(mmap64, mmap)

View File

@@ -13,5 +13,4 @@ ENTRY(pread64)
ret
END(pread64)
.globl pread
.equ pread, pread64
ALIAS_SYMBOL(pread, pread64)

View File

@@ -13,5 +13,4 @@ ENTRY(prlimit64)
ret
END(prlimit64)
.globl prlimit
.equ prlimit, prlimit64
ALIAS_SYMBOL(prlimit, prlimit64)

View File

@@ -0,0 +1,14 @@
/* Generated by gensyscalls.py. Do not edit. */
#include <private/bionic_asm.h>
ENTRY(process_vm_readv)
mov x8, __NR_process_vm_readv
svc #0
cmn x0, #(MAX_ERRNO + 1)
cneg x0, x0, hi
b.hi __set_errno_internal
ret
END(process_vm_readv)

View File

@@ -0,0 +1,14 @@
/* Generated by gensyscalls.py. Do not edit. */
#include <private/bionic_asm.h>
ENTRY(process_vm_writev)
mov x8, __NR_process_vm_writev
svc #0
cmn x0, #(MAX_ERRNO + 1)
cneg x0, x0, hi
b.hi __set_errno_internal
ret
END(process_vm_writev)

View File

@@ -13,5 +13,4 @@ ENTRY(pwrite64)
ret
END(pwrite64)
.globl pwrite
.equ pwrite, pwrite64
ALIAS_SYMBOL(pwrite, pwrite64)

View File

@@ -13,5 +13,4 @@ ENTRY(sendfile)
ret
END(sendfile)
.globl sendfile64
.equ sendfile64, sendfile
ALIAS_SYMBOL(sendfile64, sendfile)

View File

@@ -13,5 +13,4 @@ ENTRY(setrlimit)
ret
END(setrlimit)
.globl setrlimit64
.equ setrlimit64, setrlimit
ALIAS_SYMBOL(setrlimit64, setrlimit)

View File

@@ -13,5 +13,4 @@ ENTRY(truncate)
ret
END(truncate)
.globl truncate64
.equ truncate64, truncate
ALIAS_SYMBOL(truncate64, truncate)

View File

@@ -28,9 +28,9 @@
#ifdef __LP64__
# define ASM_PTR_SIZE(x) .quad x
# define ASM_ALIGN(x)
# define ASM_ALIGN_TO_PTR_SIZE .balign 8
#else
# define ASM_PTR_SIZE(x) .long x
# define ASM_ALIGN(x) .align x
# define ASM_ALIGN_TO_PTR_SIZE .balign 4
#endif

View File

@@ -59,6 +59,7 @@ void _start() {
#include "__dso_handle.h"
#include "atexit.h"
#include "pthread_atfork.h"
#ifdef __i386__
# include "../../arch-x86/bionic/__stack_chk_fail_local.h"
#endif

View File

@@ -56,6 +56,7 @@ void __on_dlclose() {
# include "__dso_handle_so.h"
# include "atexit.h"
#endif
#include "pthread_atfork.h"
#ifdef __i386__
# include "../../arch-x86/bionic/__stack_chk_fail_local.h"
#endif

View File

@@ -0,0 +1,39 @@
/*
* Copyright (C) 2015 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
.section .note.android.ident,"a",%note
.align 2
.type abitag, %object
abitag:
.long 2f-1f /* int32_t namesz */
.long 3f-2f /* int32_t descsz */
.long 1 /* int32_t type */
1: .ascii "Android\0" /* char name[] */
2: .long PLATFORM_SDK_VERSION /* int32_t android_api */
3:
.size abitag, .-abitag

View File

@@ -29,12 +29,15 @@
#include "asm_multiarch.h"
.section .preinit_array, "aw"
ASM_ALIGN_TO_PTR_SIZE
ASM_PTR_SIZE(0)
.section .init_array, "aw"
ASM_ALIGN_TO_PTR_SIZE
ASM_PTR_SIZE(0)
.section .fini_array, "aw"
ASM_ALIGN_TO_PTR_SIZE
ASM_PTR_SIZE(0)
#if defined(__linux__) && defined(__ELF__)
@@ -42,7 +45,9 @@
#endif
#if defined(__i386__) || defined(__x86_64__)
.section .eh_frame,"a",@progbits
ASM_ALIGN(4)
#if defined(__i386__)
.balign 4
#endif
.type __FRAME_END__, @object
.size __FRAME_END__, 4
__FRAME_END__:

View File

@@ -26,22 +26,14 @@
* SUCH DAMAGE.
*/
#include "asm_multiarch.h"
#ifndef __arm__
.section .init_array, "aw"
ASM_PTR_SIZE(0)
.section .fini_array, "aw"
ASM_PTR_SIZE(0)
#endif
#if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif
#if defined(__i386__) || defined(__x86_64__)
.section .eh_frame,"a",@progbits
ASM_ALIGN(4)
#if defined(__i386__)
.balign 4
#endif
.type __FRAME_END__, @object
.size __FRAME_END__, 4
__FRAME_END__:

View File

@@ -0,0 +1,29 @@
/*
* Copyright (C) 2015 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
extern void* __dso_handle;
extern int __register_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void), void* dso);
#ifndef _LIBC
// Libc used to export this in previous versions, therefore it needs
// to remain global for binary compatibility.
__attribute__ ((visibility ("hidden")))
#endif
int pthread_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void)) {
return __register_atfork(prepare, parent, child, &__dso_handle);
}

View File

@@ -92,3 +92,4 @@ __asm__ (
#include "../../arch-common/bionic/__dso_handle.h"
#include "../../arch-common/bionic/atexit.h"
#include "../../arch-common/bionic/pthread_atfork.h"

View File

@@ -1,3 +1,30 @@
/*
* Copyright (C) 2014 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
/*
* Copyright (c) 2001-2002 Opsycon AB (www.opsycon.se / www.opsycon.com)
*
@@ -94,23 +121,31 @@
#include <private/bionic_asm.h>
#include <machine/setjmp.h>
/* On Mips32, jmpbuf begins with optional 4-byte filler so that
* all saved FP regs are aligned on 8-byte boundary, despite this whole
* struct being mis-declared to users as an array of (4-byte) longs.
* All the following offsets are then from the rounded-up base addr
/* jmpbuf is declared to users as an array of longs, which is only
* 4-byte aligned in 32-bit builds. The Mips jmpbuf begins with a
* dynamically-sized 0- or 4-byte unused filler so that double-prec FP regs
* are saved to 8-byte-aligned mem cells.
* All the following jmpbuf offsets are from the rounded-DOWN base addr.
*/
/* Fields of same size on all MIPS abis: */
#define SC_MAGIC (0*4) /* 4 bytes, identify jmpbuf */
#define SC_MASK (1*4) /* 4 bytes, saved signal mask */
#define SC_FPSR (2*4) /* 4 bytes, floating point control/status reg */
/* filler2 (3*4) 4 bytes, pad to 8-byte boundary */
/* field: byte offset: size: */
/* dynam filler (0*4) 0-4 bytes of rounddown filler, DON'T TOUCH!!
often overlays user storage!! */
#define SC_MAGIC_OFFSET (1*4) /* 4 bytes, identify jmpbuf, first actual field */
#define SC_FLAG_OFFSET (2*4) /* 4 bytes, savesigs flag */
#define SC_FPSR_OFFSET (3*4) /* 4 bytes, floating point control/status reg */
/* following fields are 8-byte aligned */
#define SC_MASK_OFFSET (4*4) /* 16 bytes, mips32/mips64 version of sigset_t */
#define SC_SPARE_OFFSET (8*4) /* 8 bytes, reserved for future uses */
/* Registers that are 4-byte on mips32 o32, and 8-byte on mips64 n64 abi */
#define SC_REGS_SAVED 12 /* ra,gp,sp,s0-s8 */
#define SC_REGS (4*4) /* SC_REGS_SAVED*REGSZ bytes */
#define SC_REGS_OFFSET (10*4) /* SC_REGS_BYTES */
#define SC_REGS_SAVED 12 /*regs*/ /* ra,s0-s8,gp,sp */
#define SC_REGS_BYTES (SC_REGS_SAVED*REGSZ)
#define SC_REGS SC_REGS_OFFSET
/* Floating pt registers are 8-bytes on all abis,
/* Double floating pt registers are 8-bytes on all abis,
* but the number of saved fp regs varies for o32/n32 versus n64 abis:
*/
@@ -120,22 +155,20 @@
#define SC_FPREGS_SAVED 6 /* even fp regs f20,f22,f24,f26,f28,f30 */
#endif
#define SC_FPREGS (SC_REGS + SC_REGS_SAVED*REGSZ) /* SC_FPREGS_SAVED*REGSZ_FP bytes */
#define SC_FPREGS_OFFSET (SC_REGS_OFFSET + SC_REGS_BYTES) /* SC_FPREGS_BYTES */
#define SC_FPREGS_BYTES (SC_FPREGS_SAVED*REGSZ_FP)
#define SC_FPREGS SC_FPREGS_OFFSET
#define SC_BYTES (SC_FPREGS + SC_FPREGS_SAVED*REGSZ_FP)
#define SC_LONGS (SC_BYTES/REGSZ)
#define SC_TOTAL_BYTES (SC_FPREGS_OFFSET + SC_FPREGS_BYTES)
#define SC_TOTAL_LONGS (SC_TOTAL_BYTES/REGSZ)
#ifdef __LP64__
/* SC_LONGS is 22, so _JBLEN should be 22 or larger */
#else
/* SC_LONGS is 28, but must also allocate dynamic-roundup filler.
so _JBLEN should be 29 or larger */
#if SC_TOTAL_LONGS > _JBLEN
#error _JBLEN is too small
#endif
/*
* _setjmp, _longjmp (restoring signal state)
*
* GPOFF and FRAMESIZE must be the same for both _setjmp and _longjmp!
* GPOFF and FRAMESIZE must be the same for all setjmp/longjmp routines
*
*/
@@ -145,30 +178,33 @@ A0OFF= FRAMESZ-3*REGSZ
GPOFF= FRAMESZ-2*REGSZ
RAOFF= FRAMESZ-1*REGSZ
NON_LEAF(setjmp, FRAMESZ, ra)
NON_LEAF(sigsetjmp, FRAMESZ, ra)
.mask 0x80000000, RAOFF
PTR_SUBU sp, FRAMESZ # allocate stack frame
SETUP_GP64(GPOFF, setjmp)
SETUP_GP64(GPOFF, sigsetjmp)
SAVE_GP(GPOFF)
.set reorder
setjmp_common:
#ifndef __LP64__
addiu a0, 7 # roundup jmpbuf addr to 8-byte boundary
li t0, ~7
and a0, t0
and a0, t0 # round jmpbuf addr DOWN to 8-byte boundary
#endif
sw a1, SC_FLAG_OFFSET(a0) # save savesigs flag
beqz a1, 1f # do saving of signal mask?
REG_S ra, RAOFF(sp) # save state
REG_S ra, RAOFF(sp) # spill state
REG_S a0, A0OFF(sp)
move a0, zero # get current signal mask
jal sigblock
# call sigprocmask(int how ignored, sigset_t* null, sigset_t* SC_MASK(a0)):
LA a2, SC_MASK_OFFSET(a0) # gets current signal mask
li a0, 0 # how; ignored when new mask is null
li a1, 0 # null new mask
jal sigprocmask # get current signal mask
REG_L a0, A0OFF(sp)
REG_L ra, RAOFF(sp)
REG_S v0, SC_MASK(a0) # save sc_mask = sigblock(0)
1:
li v0, 0xACEDBADE # sigcontext magic number
sw v0, SC_MAGIC(a0)
sw v0, SC_MAGIC_OFFSET(a0)
# callee-saved long-sized regs:
REG_S ra, SC_REGS+0*REGSZ(a0)
REG_S s0, SC_REGS+1*REGSZ(a0)
@@ -181,9 +217,9 @@ NON_LEAF(setjmp, FRAMESZ, ra)
REG_S s7, SC_REGS+8*REGSZ(a0)
REG_S s8, SC_REGS+9*REGSZ(a0)
REG_L v0, GPOFF(sp)
REG_S v0, SC_REGS+10*REGSZ(a0)
REG_S v0, SC_REGS+10*REGSZ(a0) # save gp
PTR_ADDU v0, sp, FRAMESZ
REG_S v0, SC_REGS+11*REGSZ(a0)
REG_S v0, SC_REGS+11*REGSZ(a0) # save orig sp
cfc1 v0, $31
@@ -199,7 +235,7 @@ NON_LEAF(setjmp, FRAMESZ, ra)
s.d $f31, SC_FPREGS+7*REGSZ_FP(a0)
#else
# callee-saved fp regs on mips o32 ABI are
# the even-numbered fp regs $f20,$f22,...$f30
# the even-numbered double fp regs $f20,$f22,...$f30
s.d $f20, SC_FPREGS+0*REGSZ_FP(a0)
s.d $f22, SC_FPREGS+1*REGSZ_FP(a0)
s.d $f24, SC_FPREGS+2*REGSZ_FP(a0)
@@ -207,37 +243,68 @@ NON_LEAF(setjmp, FRAMESZ, ra)
s.d $f28, SC_FPREGS+4*REGSZ_FP(a0)
s.d $f30, SC_FPREGS+5*REGSZ_FP(a0)
#endif
sw v0, SC_FPSR(a0)
sw v0, SC_FPSR_OFFSET(a0)
move v0, zero
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
j ra
END(setjmp)
END(sigsetjmp)
NON_LEAF(longjmp, FRAMESZ, ra)
# Alternate entry points:
NON_LEAF(setjmp, FRAMESZ, ra)
.mask 0x80000000, RAOFF
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, longjmp)
SETUP_GP64(GPOFF, setjmp) # can't share sigsetjmp's gp code
SAVE_GP(GPOFF)
.set reorder
li a1, 1 # save/restore signals state
b setjmp_common # tail call
END(setjmp)
NON_LEAF(_setjmp, FRAMESZ, ra)
.mask 0x80000000, RAOFF
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, _setjmp) # can't share sigsetjmp's gp code
SAVE_GP(GPOFF)
.set reorder
li a1, 0 # don't save/restore signals
b setjmp_common # tail call
END(_setjmp)
NON_LEAF(siglongjmp, FRAMESZ, ra)
.mask 0x80000000, RAOFF
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, siglongjmp)
SAVE_GP(GPOFF)
.set reorder
#ifndef __LP64__
addiu a0, 7 # roundup jmpbuf addr to 8-byte boundary
li t0, ~7
and a0, t0
and a0, t0 # round jmpbuf addr DOWN to 8-byte boundary
#endif
REG_S a1, A1OFF(sp)
REG_S a0, A0OFF(sp)
lw a0, SC_MASK(a0)
jal sigsetmask
REG_L a0, A0OFF(sp)
REG_L a1, A1OFF(sp)
lw v0, SC_MAGIC(a0)
lw v0, SC_MAGIC_OFFSET(a0)
li t0, 0xACEDBADE
bne v0, t0, longjmp_botch # jump if error
lw t0, SC_FLAG_OFFSET(a0) # get savesigs flag
beqz t0, 1f # restore signal mask?
REG_S a1, A1OFF(sp) # temp spill
REG_S a0, A0OFF(sp)
# call sigprocmask(int how SIG_SETMASK, sigset_t* SC_MASK(a0), sigset_t* null):
LA a1, SC_MASK_OFFSET(a0) # signals being restored
li a0, 3 # mips SIG_SETMASK
li a2, 0 # null
jal sigprocmask # restore signal mask
REG_L a0, A0OFF(sp)
REG_L a1, A1OFF(sp)
1:
# callee-saved long-sized regs:
REG_L ra, SC_REGS+0*REGSZ(a0)
REG_L s0, SC_REGS+1*REGSZ(a0)
@@ -252,8 +319,8 @@ NON_LEAF(longjmp, FRAMESZ, ra)
REG_L gp, SC_REGS+10*REGSZ(a0)
REG_L sp, SC_REGS+11*REGSZ(a0)
lw v0, SC_FPSR(a0)
ctc1 v0, $31
lw v0, SC_FPSR_OFFSET(a0)
ctc1 v0, $31 # restore old fr mode before fp values
#ifdef __LP64__
# callee-saved fp regs on mips n64 ABI are $f24..$f31
l.d $f24, SC_FPREGS+0*REGSZ_FP(a0)
@@ -266,7 +333,7 @@ NON_LEAF(longjmp, FRAMESZ, ra)
l.d $f31, SC_FPREGS+7*REGSZ_FP(a0)
#else
# callee-saved fp regs on mips o32 ABI are
# the even-numbered fp regs $f20,$f22,...$f30
# the even-numbered double fp regs $f20,$f22,...$f30
l.d $f20, SC_FPREGS+0*REGSZ_FP(a0)
l.d $f22, SC_FPREGS+1*REGSZ_FP(a0)
l.d $f24, SC_FPREGS+2*REGSZ_FP(a0)
@@ -278,192 +345,12 @@ NON_LEAF(longjmp, FRAMESZ, ra)
li a1, 1 # never return 0!
1:
move v0, a1
j ra
j ra # return to setjmp call site
longjmp_botch:
jal longjmperror
jal abort
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
END(longjmp)
/*
* _setjmp, _longjmp (not restoring signal state)
*
* GPOFF and FRAMESIZE must be the same for both _setjmp and _longjmp!
*
*/
FRAMESZ= MKFSIZ(0,4)
GPOFF= FRAMESZ-2*REGSZ
LEAF(_setjmp, FRAMESZ)
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, _setjmp)
SAVE_GP(GPOFF)
.set reorder
#ifndef __LP64__
addiu a0, 7 # roundup jmpbuf addr to 8-byte boundary
li t0, ~7
and a0, t0
#endif
# SC_MASK is unused here
li v0, 0xACEDBADE # sigcontext magic number
sw v0, SC_MAGIC(a0)
# callee-saved long-sized regs:
REG_S ra, SC_REGS+0*REGSZ(a0)
REG_S s0, SC_REGS+1*REGSZ(a0)
REG_S s1, SC_REGS+2*REGSZ(a0)
REG_S s2, SC_REGS+3*REGSZ(a0)
REG_S s3, SC_REGS+4*REGSZ(a0)
REG_S s4, SC_REGS+5*REGSZ(a0)
REG_S s5, SC_REGS+6*REGSZ(a0)
REG_S s6, SC_REGS+7*REGSZ(a0)
REG_S s7, SC_REGS+8*REGSZ(a0)
REG_S s8, SC_REGS+9*REGSZ(a0)
REG_L v0, GPOFF(sp)
REG_S v0, SC_REGS+10*REGSZ(a0)
PTR_ADDU v0, sp, FRAMESZ
REG_S v0, SC_REGS+11*REGSZ(a0)
cfc1 v0, $31
#ifdef __LP64__
# callee-saved fp regs on mips n64 ABI are $f24..$f31
s.d $f24, SC_FPREGS+0*REGSZ_FP(a0)
s.d $f25, SC_FPREGS+1*REGSZ_FP(a0)
s.d $f26, SC_FPREGS+2*REGSZ_FP(a0)
s.d $f27, SC_FPREGS+3*REGSZ_FP(a0)
s.d $f28, SC_FPREGS+4*REGSZ_FP(a0)
s.d $f29, SC_FPREGS+5*REGSZ_FP(a0)
s.d $f30, SC_FPREGS+6*REGSZ_FP(a0)
s.d $f31, SC_FPREGS+7*REGSZ_FP(a0)
#else
# callee-saved fp regs on mips o32 ABI are
# the even-numbered fp regs $f20,$f22,...$f30
s.d $f20, SC_FPREGS+0*REGSZ_FP(a0)
s.d $f22, SC_FPREGS+1*REGSZ_FP(a0)
s.d $f24, SC_FPREGS+2*REGSZ_FP(a0)
s.d $f26, SC_FPREGS+3*REGSZ_FP(a0)
s.d $f28, SC_FPREGS+4*REGSZ_FP(a0)
s.d $f30, SC_FPREGS+5*REGSZ_FP(a0)
#endif
sw v0, SC_FPSR(a0)
move v0, zero
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
j ra
END(_setjmp)
LEAF(_longjmp, FRAMESZ)
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, _longjmp)
SAVE_GP(GPOFF)
.set reorder
#ifndef __LP64__
addiu a0, 7 # roundup jmpbuf addr to 8-byte boundary
li t0, ~7
and a0, t0
#endif
# SC_MASK is unused here
lw v0, SC_MAGIC(a0)
li t0, 0xACEDBADE
bne v0, t0, _longjmp_botch # jump if error
# callee-saved long-sized regs:
REG_L ra, SC_REGS+0*REGSZ(a0)
REG_L s0, SC_REGS+1*REGSZ(a0)
REG_L s1, SC_REGS+2*REGSZ(a0)
REG_L s2, SC_REGS+3*REGSZ(a0)
REG_L s3, SC_REGS+4*REGSZ(a0)
REG_L s4, SC_REGS+5*REGSZ(a0)
REG_L s5, SC_REGS+6*REGSZ(a0)
REG_L s6, SC_REGS+7*REGSZ(a0)
REG_L s7, SC_REGS+8*REGSZ(a0)
REG_L s8, SC_REGS+9*REGSZ(a0)
REG_L gp, SC_REGS+10*REGSZ(a0)
REG_L sp, SC_REGS+11*REGSZ(a0)
lw v0, SC_FPSR(a0)
ctc1 v0, $31
#ifdef __LP64__
# callee-saved fp regs on mips n64 ABI are $f24..$f31
l.d $f24, SC_FPREGS+0*REGSZ_FP(a0)
l.d $f25, SC_FPREGS+1*REGSZ_FP(a0)
l.d $f26, SC_FPREGS+2*REGSZ_FP(a0)
l.d $f27, SC_FPREGS+3*REGSZ_FP(a0)
l.d $f28, SC_FPREGS+4*REGSZ_FP(a0)
l.d $f29, SC_FPREGS+5*REGSZ_FP(a0)
l.d $f30, SC_FPREGS+6*REGSZ_FP(a0)
l.d $f31, SC_FPREGS+7*REGSZ_FP(a0)
#else
# callee-saved fp regs on mips o32 ABI are
# the even-numbered fp regs $f20,$f22,...$f30
l.d $f20, SC_FPREGS+0*REGSZ_FP(a0)
l.d $f22, SC_FPREGS+1*REGSZ_FP(a0)
l.d $f24, SC_FPREGS+2*REGSZ_FP(a0)
l.d $f26, SC_FPREGS+3*REGSZ_FP(a0)
l.d $f28, SC_FPREGS+4*REGSZ_FP(a0)
l.d $f30, SC_FPREGS+5*REGSZ_FP(a0)
#endif
bne a1, zero, 1f
li a1, 1 # never return 0!
1:
move v0, a1
j ra
_longjmp_botch:
jal longjmperror
jal abort
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
END(_longjmp)
/*
* trampolines for sigsetjmp and siglongjmp save and restore mask.
*
*/
FRAMESZ= MKFSIZ(1,1)
GPOFF= FRAMESZ-2*REGSZ
LEAF(sigsetjmp, FRAMESZ)
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, sigsetjmp)
.set reorder
sw a1, _JBLEN*REGSZ(a0) # save "savemask"
bne a1, 0x0, 1f # do saving of signal mask?
LA t9, _setjmp
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
jr t9
1: LA t9, setjmp
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
jr t9
END(sigsetjmp)
LEAF(siglongjmp, FRAMESZ)
PTR_SUBU sp, FRAMESZ
SETUP_GP64(GPOFF, siglongjmp)
.set reorder
lw t0, _JBLEN*REGSZ(a0) # get "savemask"
bne t0, 0x0, 1f # restore signal mask?
LA t9, _longjmp
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
jr t9
1:
LA t9, longjmp
RESTORE_GP64
PTR_ADDU sp, FRAMESZ
jr t9
END(siglongjmp)
ALIAS_SYMBOL(longjmp, siglongjmp)
ALIAS_SYMBOL(_longjmp, siglongjmp)

View File

@@ -121,6 +121,7 @@
#define DT_MIPS_GOTSYM 0x70000013 /* first dynamic sym in got */
#define DT_MIPS_HIPAGENO 0x70000014
#define DT_MIPS_RLD_MAP 0x70000016 /* address of loader map */
#define DT_MIPS_RLD_MAP2 0x70000035 /* offset of loader map, used for PIE */
/*
* ELF Flags

View File

@@ -6,9 +6,10 @@
#define _MIPS_SETJMP_H_
#ifdef __LP64__
#define _JBLEN 22 /* size, in 8-byte longs, of a mips64 jmp_buf */
#define _JBLEN 25 /* size, in 8-byte longs, of a mips64 jmp_buf/sigjmp_buf */
#else
#define _JBLEN 29 /* size, in 4-byte longs, of a mips32 jmp_buf */
#define _JBLEN 157 /* historical size, in 4-byte longs, of a mips32 jmp_buf */
/* actual used size is 34 */
#endif
#endif /* !_MIPS_SETJMP_H_ */

View File

@@ -1,36 +1,18 @@
# 32-bit mips.
#
# Various kinds of LP32 cruft.
#
libc_bionic_src_files_mips += \
bionic/mmap.cpp \
libc_common_src_files_mips += \
bionic/legacy_32_bit_support.cpp \
bionic/ndk_cruft.cpp \
bionic/time64.c \
libc_netbsd_src_files_mips += \
upstream-netbsd/common/lib/libc/hash/sha1/sha1.c \
libc_openbsd_src_files_mips += \
upstream-openbsd/lib/libc/stdio/putw.c \
#
# Default implementations of functions that are commonly optimized.
#
libc_bionic_src_files_mips += \
arch-mips/string/memcmp.c \
arch-mips/string/memcpy.S \
arch-mips/string/memset.S \
arch-mips/string/strcmp.S \
bionic/__memcpy_chk.cpp \
bionic/__memset_chk.cpp \
bionic/__strcpy_chk.cpp \
bionic/__strcat_chk.cpp \
bionic/memchr.c \
bionic/memcmp.c \
bionic/memmove.c \
bionic/memrchr.c \
bionic/strchr.cpp \
bionic/strnlen.c \
bionic/strrchr.cpp \
@@ -46,11 +28,12 @@ libc_freebsd_src_files_mips += \
upstream-freebsd/lib/libc/string/wmemmove.c \
libc_openbsd_src_files_mips += \
upstream-openbsd/lib/libc/string/bcopy.c \
upstream-openbsd/lib/libc/string/memchr.c \
upstream-openbsd/lib/libc/string/memmove.c \
upstream-openbsd/lib/libc/string/memrchr.c \
upstream-openbsd/lib/libc/string/stpcpy.c \
upstream-openbsd/lib/libc/string/stpncpy.c \
upstream-openbsd/lib/libc/string/strcat.c \
upstream-openbsd/lib/libc/string/strcmp.c \
upstream-openbsd/lib/libc/string/strcpy.c \
upstream-openbsd/lib/libc/string/strlcat.c \
upstream-openbsd/lib/libc/string/strlcpy.c \
@@ -73,17 +56,11 @@ libc_bionic_src_files_mips += \
ifndef ARCH_MIPS_REV6
libc_bionic_src_files_mips += \
arch-mips/string/memcpy.S \
arch-mips/string/memset.S \
arch-mips/string/mips_strlen.c \
else
libc_bionic_src_files_mips += \
bionic/memcpy.cpp \
bionic/memset.c \
libc_openbsd_src_files_mips += \
upstream-openbsd/lib/libc/string/strlen.c \
arch-mips/string/strlen.c \
endif

Some files were not shown because too many files have changed in this diff Show More