Dimitry Ivanov
19acb698e8
[MIPS] Add __popcountsi2 to libgcc_compat.c
...
Also removed outdated genlibgcc_compat.py script
and references to it.
Bug: http://b/27340856
Change-Id: I7eef362364078867c60a27e72abba515f08b6651
2016-02-25 14:28:45 -08:00
Stephen Hines
e0959b4b16
Merge "Remove unused libm_clang variable."
2016-02-23 22:05:25 +00:00
Christopher Ferris
0a84f1a5eb
Merge "Fix wrong guard values for 64 bit."
2016-02-23 19:15:57 +00:00
Christopher Ferris
0e2a026579
Fix wrong guard values for 64 bit.
...
I added the code to force alignments of 8 for 32 bit and 16 for 64 bit,
but I missed a couple of tests that failed due to this change. Fix the
failing tests.
Bug: 26739265
Change-Id: Ice9932d1419e59c07483c4c9fcdb84970844f0a6
2016-02-22 19:14:26 -08:00
Christopher Ferris
f2d516b3f9
Merge "Fix incorrect size of array."
2016-02-22 18:46:35 +00:00
Christopher Ferris
f499dc91e7
Fix incorrect size of array.
...
When using sscanf and "%4s", the array passed in must include space for
a nul terminator.
Bug: 26739265
Change-Id: I0140a6100ca370666ae61689087ba41b4914789d
2016-02-19 18:13:29 -08:00
Stephen Hines
64955c84c0
Remove unused libm_clang variable.
...
Bug: http://b/21899249
As part of the cleanup here, this unset/unused variable was missed.
Change-Id: I0e0f2640e2e975f3e154f68509aa791fd22053a9
2016-02-19 01:17:18 -08:00
Dimitry Ivanov
b539baab39
Merge "Improvements to dynamic linker messages"
2016-02-19 02:43:48 +00:00
Dimitry Ivanov
9f0a6954c6
Improvements to dynamic linker messages
...
Error messages now include executable name,
also linker doesn't abort if called on itself.
Change-Id: Ia17dd540919544b28062ed71751a1d79ee865206
2016-02-18 18:28:08 -08:00
Colin Cross
c95a4c8196
Merge changes Iac8109b3,I5ad67001,Ic1adb4df,I08a50349
...
* changes:
malloc_debug: reread /proc/pid/maps when entry is missing
Add backtrace_string and export to libmemunreachable
Export malloc_backtrace
Export malloc_iterate and friends
2016-02-19 01:55:10 +00:00
Colin Cross
d75d4bea54
malloc_debug: reread /proc/pid/maps when entry is missing
...
Reread /proc/pid/maps on demand in case a new library has been loaded.
Change-Id: Iac8109b3e6a07bf02c38300b21eecabf4bcd54df
2016-02-18 16:09:17 -08:00
Colin Cross
2c75991359
Add backtrace_string and export to libmemunreachable
...
Add backtrace_string to convert a malloc_debug backtrace to a string.
Also move the backtrace functions to libc_malloc_debug_backtrace so that
libmemunreachable can reuse them.
Change-Id: I5ad67001c0b4d184903c762863a8588181d4873b
2016-02-18 16:09:17 -08:00
Colin Cross
2d4721c0c5
Export malloc_backtrace
...
Change-Id: Ic1adb4dfd86b9ca698443a36263a3df2c91edda3
2016-02-18 16:09:16 -08:00
Colin Cross
869691c6f7
Export malloc_iterate and friends
...
Export malloc_iterate, malloc_enable, and malloc_disable to be used by
libmemunreachable.
Change-Id: I08a50349af82a95d096b6b4cbac37ababe4b9b06
2016-02-18 15:05:38 -08:00
Dimitry Ivanov
aca201358b
Merge "Move gdb support functions to a separate file"
2016-02-18 22:12:26 +00:00
Dimitry Ivanov
6b788eeff2
Move gdb support functions to a separate file
...
Move gdb support functions and variables to
linker_gdb_support.h/cpp
Change-Id: I96c6592a7055715b18f1137367470fe80987263f
2016-02-18 12:32:56 -08:00
Christopher Ferris
4327ae07b9
Merge "Fix cfi directives for memmove/strlcpy."
2016-02-18 18:46:28 +00:00
Elliott Hughes
90ea63a862
Merge "Fix scope ids for link-local IPv6 addresses from getifaddrs(3)."
2016-02-18 18:35:00 +00:00
Nicolas Geoffray
be7a1eaf3a
Merge "Revert "Move gdb support functions to a separate file""
2016-02-18 09:31:41 +00:00
Nicolas Geoffray
0fa5410b0f
Revert "Move gdb support functions to a separate file"
...
Was reverted on internal master already.
This reverts commit f8d051c81b
.
Change-Id: Ia432f83bcce91366fb23f1bb87603a093b7f074d
2016-02-18 09:31:24 +00:00
Christopher Ferris
97b6e131fd
Fix cfi directives for memmove/strlcpy.
...
Bug: 27227225
Change-Id: I47ca82daaadb3ec24cefc3c9aa4df7ed1798aced
2016-02-17 19:17:02 -08:00
Dimitry Ivanov
4dd56ac9a5
Merge changes Id6e60861,I0eacb3f0
...
* changes:
Move gdb support functions to a separate file
Use insert_link_map_into_debug_map for executable
2016-02-18 01:25:49 +00:00
Christopher Ferris
e73b27a1d3
Merge "Fix cfi directives in small strncmp case."
2016-02-18 01:18:26 +00:00
Christopher Ferris
de84e51f8c
Fix cfi directives in small strncmp case.
...
Bug: 27227225
Change-Id: Id4f88fe288109a82822ad1b2291858c1c85b0ca7
2016-02-17 16:34:02 -08:00
Dimitry Ivanov
f8d051c81b
Move gdb support functions to a separate file
...
Move gdb support functions and variables to
linker_gdb_support.h/cpp
Change-Id: Id6e608617016383b68283760361c567e58e574bc
2016-02-17 16:09:35 -08:00
Dimitry Ivanov
f3064e4bc7
Use insert_link_map_into_debug_map for executable
...
Use insert_link_map_into_debug_map to insert the main
executable's link_map to r_debug
Change-Id: I0eacb3f030ea3eb16ed50ad2011d604beece2d03
2016-02-17 15:25:25 -08:00
Elliott Hughes
7dac8b8aab
Fix scope ids for link-local IPv6 addresses from getifaddrs(3).
...
Bug: http://b/27219454
Change-Id: I7a166ff5553565f7afdab18dd2c703af4d475ab4
2016-02-17 14:38:09 -08:00
Dimitry Ivanov
c347a10760
Merge "Update a comment for init_linker_info_for_gdb"
2016-02-17 22:20:22 +00:00
Dimitry Ivanov
6400129628
Update a comment for init_linker_info_for_gdb
...
Change-Id: I8e2895ecfcc6f77a180c3735342afc93be5923d3
2016-02-17 14:13:06 -08:00
Colin Cross
598cb89790
Merge "malloc_debug: reset TrackData mutex after fork"
2016-02-17 20:38:02 +00:00
Dimitry Ivanov
2de48bc809
Merge "Initialize linker link_map for gdb directly"
2016-02-17 00:00:30 +00:00
Dimitry Ivanov
acedcba331
Merge "Revert "Revert "Split out liblinker_malloc static library"""
2016-02-16 23:51:37 +00:00
Dimitry Ivanov
aa9cb26ead
Revert "Revert "Split out liblinker_malloc static library""
...
This reverts commit 3bbeca7a1a
.
Change-Id: I5a757fcd52a14442c2eb7ca53f7d1f1923a4efe9
2016-02-16 14:43:12 -08:00
Dimitry Ivanov
8d22dd53fe
Initialize linker link_map for gdb directly
...
Remove unnecessary construction of soinfo when
initializing linker link_map for gdb.
Change-Id: Idf32cee56309aa9c9cf260efbd17a9deae9a756b
2016-02-16 14:39:15 -08:00
Dimitry Ivanov
b244d21672
Merge "linker: remove soinfo::entry"
2016-02-16 21:29:43 +00:00
Dimitry Ivanov
e687d067c6
linker: remove soinfo::entry
...
This field is used only once and only for main executable;
no need to carry it around in soinfo structure.
Change-Id: I7f80c64e0939e28966b6fed858891f9ce2a9e26b
2016-02-16 13:25:29 -08:00
Dimitry Ivanov
85665af917
Merge "Revert "Split out liblinker_malloc static library""
2016-02-15 19:21:29 +00:00
Dimitry Ivanov
3bbeca7a1a
Revert "Split out liblinker_malloc static library"
...
This reverts commit a80564318a
.
Change-Id: I63f16739a38f40ad930692176a4297ad1ce89570
2016-02-15 19:19:35 +00:00
Christopher Ferris
60a5f7360e
Merge "Add a memcpy(a, a, n) test."
2016-02-13 17:46:28 +00:00
Christopher Ferris
71766c2577
Add a memcpy(a, a, n) test.
...
clang depends on memcpy where src and dst are the same to actually
work. Even though this is, technically, undefined behavior,
clang is not going to change. Add a test to verify this assumption
holds true for android devices.
Change-Id: Ib575af3c14e705bb62c18fad7d57e1cc0d242899
2016-02-12 18:09:55 -08:00
Christopher Ferris
249fefbda0
Merge "Fix the default alignment of the allocations."
2016-02-13 01:37:06 +00:00
Christopher Ferris
72df6708c8
Fix the default alignment of the allocations.
...
In order to enforce this constraint:
The pointer returned if the allocation succeeds shall be suitably
aligned so that it may be assigned to a pointer to any type of object
and then used to access such an object in the space allocated.
Force all allocations on 32 bit systems to have 8 byte alignment,
and all allocations on 64 bit systems to have 16 byte alignment.
Add a test to verify that the allocator returns the correct alignments.
Bug: 26739265
Change-Id: I9af53279617408676b94e4ec6481b3ed7ffafc6a
2016-02-12 17:30:30 -08:00
Elliott Hughes
925bf56447
Merge "Fix regerror(..., nullptr, 0)."
2016-02-13 00:59:42 +00:00
Colin Cross
7a28a3cf1f
malloc_debug: reset TrackData mutex after fork
...
Add a pthread_atfork handler to malloc_debug to lock the TrackData mutex
during fork and reset it in the child. Ensures that the TrackData is
consistent when forking from a multi-threaded process, and that the
mutex is in a defined state in the child.
Change-Id: I0dfed30045a28551217ceac227d33b2e18894932
2016-02-12 16:41:14 -08:00
Elliott Hughes
cac2908b08
Fix regerror(..., nullptr, 0).
...
Found by passing a bad regular expression to the Google benchmark
code (https://github.com/google/benchmark ).
Change-Id: I475db71c25706bbf02091b754acabe8254062f3a
2016-02-12 16:00:53 -08:00
Dimitry Ivanov
9750a77b31
Merge "Split out liblinker_malloc static library"
2016-02-11 23:29:06 +00:00
Dimitry Ivanov
a80564318a
Split out liblinker_malloc static library
...
Bug: http://b/14998480
Bug: http://b/25716705
Change-Id: I8c7ba3971d1b17dbfc1a2ab5553aa04fe5da6677
2016-02-11 13:48:49 -08:00
Elliott Hughes
72bca4b410
Merge "Add tests for zero-sized allocations."
2016-02-11 17:53:04 +00:00
Elliott Hughes
884f76e3aa
Add tests for zero-sized allocations.
...
POSIX lets us return null and set errno, but that would be annoying and
surprising.
Bug: http://b/27101951
Change-Id: I320a8a14884abb806a8d30e3e6cf1ede28b49335
2016-02-11 08:45:40 -08:00
Elliott Hughes
8fa00a5836
Merge "Set x86 TLS limit to 0xfffff, not PAGE_SIZE."
2016-02-10 15:48:53 +00:00