Commit Graph

6948 Commits

Author SHA1 Message Date
Bernhard Rosenkränzer
f38fb19d9d Re-export libgcc's __aeabi_uidivmod and __popcount_tab
This is required to make the Nexus 10 graphics driver work on a system
compiled with gcc 4.9.

Change-Id: If3f3d488652a736d9ea3e583548d74fae3ffa902
Signed-off-by: Bernhard Rosenkränzer <Bernhard.Rosenkranzer@linaro.org>
2014-01-24 12:57:13 +01:00
Colin Cross
d1973ca513 bionic: rename aarch64 target to arm64
Rename aarch64 build targets to arm64.  The gcc toolchain is still
aarch64.

Change-Id: Ia92d8a50824e5329cf00fd6f4f92eae112b7f3a3
2014-01-23 18:35:39 -08:00
Elliott Hughes
17758106e8 am 06d38ccd: am 5b4884fa: Merge "Add "__noreturn" to assert and assert2"
* commit '06d38ccda067428e0fbd448ad21cd8140fbecc11':
  Add "__noreturn" to assert and assert2
2014-01-15 21:39:12 +00:00
Elliott Hughes
06d38ccda0 am 5b4884fa: Merge "Add "__noreturn" to assert and assert2"
* commit '5b4884fac90753c68d401de73036c2de919958eb':
  Add "__noreturn" to assert and assert2
2014-01-15 13:32:40 -08:00
Elliott Hughes
5b4884fac9 Merge "Add "__noreturn" to assert and assert2" 2014-01-15 21:26:47 +00:00
Vadim Markovtsev
323d4b6f68 Add "__noreturn" to assert and assert2
These functions should print assertion violation messages and then
call abort(). They do really not return control flow afterwards.
Consider the declaration of the similar __assert_fail from glibc:

extern void __assert_fail (const char *__assertion,
                           const char *__file,
			   unsigned int __line,
                           const char *__function)
     __THROW __attribute__ ((__noreturn__));

Bionic has __noreturn defined in sys/cdefs.h to be that GNU
noreturn attribute.

This patch has a practical value. Consider the following function:

void check(void* ptr) {
  assert(ptr != NULL);
}

Without this patch applied, gcc (and presumably clang) shows even in
debug mode:

warning: unused parameter 'ptr' [-Wunused-parameter]

In release mode, NDEBUG is defined and assert() becomes a no-op, as
one should expect. Thus, the warning is shown correctly then.

Another code sample:

float array[2];
int i = 3;
...
assert(i < 2);
array[i] = 0;

gcc says,

warning: array subscript is below array bounds [-Warray-bounds]

In other words, without noreturn attribute, assertions do not
allow a compiler's static analyzer to properly understand
the preconditions.

Change-Id: I3be92e99787c528899cf243ed448c4730c00c45b
Signed-off-by: Vadim Markovtsev <gmarkhor@gmail.com>
2014-01-15 07:32:52 +00:00
Elliott Hughes
530093e1fd am 22d8bd9b: am 12159420: Merge "Fix libdl build warnings, turn on -Werror."
* commit '22d8bd9b93223634e2d0bf5ec1cbddd888e96136':
  Fix libdl build warnings, turn on -Werror.
2014-01-15 02:45:14 +00:00
Elliott Hughes
e83c98e6f7 am a17b7ba9: am c8d41263: Merge "Move _thread_created_hook to where it belongs."
* commit 'a17b7ba95d71d59ac5e04d2f01bb1839602912f9':
  Move _thread_created_hook to where it belongs.
2014-01-15 02:45:14 +00:00
Elliott Hughes
22d8bd9b93 am 12159420: Merge "Fix libdl build warnings, turn on -Werror."
* commit '12159420e1654f6896993eda39aea8b5e5586f80':
  Fix libdl build warnings, turn on -Werror.
2014-01-14 18:38:16 -08:00
Elliott Hughes
a17b7ba95d am c8d41263: Merge "Move _thread_created_hook to where it belongs."
* commit 'c8d412637a8f98418866a75525de2ad6f8b12b6e':
  Move _thread_created_hook to where it belongs.
2014-01-14 18:38:15 -08:00
Elliott Hughes
12159420e1 Merge "Fix libdl build warnings, turn on -Werror." 2014-01-15 02:33:34 +00:00
Elliott Hughes
c8d412637a Merge "Move _thread_created_hook to where it belongs." 2014-01-15 02:32:47 +00:00
Elliott Hughes
7ac975146e Fix libdl build warnings, turn on -Werror.
Change-Id: I71c39b77ac1e9a92482ce71a829449100945ec86
2014-01-14 17:25:13 -08:00
Elliott Hughes
af8aebebb5 Move _thread_created_hook to where it belongs.
Change-Id: I643d761c78ccaae25270aeffa2afb811c4e2fcd7
2014-01-14 17:16:18 -08:00
Elliott Hughes
e86a346cfe am d0465f50: am d971f729: Merge "Make it possible for code to query the dynamic linker\'s default search path."
* commit 'd0465f50aa570a295a1bdad0c379d529a614198e':
  Make it possible for code to query the dynamic linker's default search path.
2014-01-14 20:12:57 +00:00
Elliott Hughes
d0465f50aa am d971f729: Merge "Make it possible for code to query the dynamic linker\'s default search path."
* commit 'd971f7290529310df6f8d4ba8b3a30f629ba2946':
  Make it possible for code to query the dynamic linker's default search path.
2014-01-14 12:08:32 -08:00
Elliott Hughes
d971f72905 Merge "Make it possible for code to query the dynamic linker's default search path." 2014-01-14 20:03:20 +00:00
Elliott Hughes
d2124b7c5c am 7e997388: am b5e21103: Merge "AArch64: Use LDXR/STXR instead of LDAXR/STLXR for bionic_atomic_cmpxchg()"
* commit '7e997388ba63f0b0b4c95542cfc5fbe6e3c93b4d':
  AArch64: Use LDXR/STXR instead of LDAXR/STLXR for bionic_atomic_cmpxchg()
2014-01-14 01:12:56 +00:00
Elliott Hughes
7e997388ba am b5e21103: Merge "AArch64: Use LDXR/STXR instead of LDAXR/STLXR for bionic_atomic_cmpxchg()"
* commit 'b5e211031b69963a5f72ff369c66dc325a03e740':
  AArch64: Use LDXR/STXR instead of LDAXR/STLXR for bionic_atomic_cmpxchg()
2014-01-13 17:06:31 -08:00
Elliott Hughes
b5e211031b Merge "AArch64: Use LDXR/STXR instead of LDAXR/STLXR for bionic_atomic_cmpxchg()" 2014-01-14 01:01:41 +00:00
Elliott Hughes
a4aafd1560 Make it possible for code to query the dynamic linker's default search path.
We're not going to have init(1) set LD_LIBRARY_PATH globally on 64-bit.
This patch makes it possible for libnativehelper to set LD_LIBRARY_PATH
in each Java VM (to support System.loadLibrary) without also hard-coding
the default search path there.

Change-Id: If13961fae976e06dd80d5ef522f31e8b7eb01154
2014-01-13 16:37:47 -08:00
Elliott Hughes
3c5323a731 am 490f1755: am ebc1c76d: Merge "Add -Bsymbolic to the ld flags when linking the dynamic linker."
* commit '490f1755d14536915f748a6513399a92f6e0b67f':
  Add -Bsymbolic to the ld flags when linking the dynamic linker.
2014-01-13 21:48:15 +00:00
Elliott Hughes
490f1755d1 am ebc1c76d: Merge "Add -Bsymbolic to the ld flags when linking the dynamic linker."
* commit 'ebc1c76d77dd604f16126e66b2171e8ee6fa1d22':
  Add -Bsymbolic to the ld flags when linking the dynamic linker.
2014-01-13 13:42:55 -08:00
Elliott Hughes
ebc1c76d77 Merge "Add -Bsymbolic to the ld flags when linking the dynamic linker." 2014-01-13 21:38:16 +00:00
Elliott Hughes
7ff07ad321 Add -Bsymbolic to the ld flags when linking the dynamic linker.
We don't need this on architectures other than aarch64, and
we're still investigating why we need it on aarch64, but it
doesn't seem unreasonable to have this flag set when linking
the dynamic linker anyway; it's clearly the intended behavior.

Change-Id: I4fa1b4ae543a818979934bf818eabac03bb9154f
2014-01-13 13:33:01 -08:00
Elliott Hughes
0b9a13f58f am a1595487: am ae189740: Merge "Add some more headers."
* commit 'a1595487faadaf48201ff8f91fdf59c8ae0e7b19':
  Add some more headers.
2014-01-10 23:51:16 +00:00
Elliott Hughes
a1595487fa am ae189740: Merge "Add some more headers."
* commit 'ae189740de6b03f06a06214122183a3774f5cb62':
  Add some more headers.
2014-01-10 15:42:44 -08:00
Elliott Hughes
ae189740de Merge "Add some more headers." 2014-01-10 23:35:47 +00:00
Elliott Hughes
c835c35727 Add some more headers.
This patch adds trivial implementations of the missing sys headers
needed by strace. All strace needs are the constants and structures,
so this is enough for now. We can come back and add the functions
if/when we ever need them.

Change-Id: Idb87c1a8b6b1c62f6e16ae94f147e1169722b48e
2014-01-10 15:32:31 -08:00
JP Abgrall
51e1ca7677 am 09a73562: am f784f036: Merge "Add extra libc stubs for mntent related functions."
* commit '09a735628269336d29f722ebcdeb3da9534f6020':
  Add extra libc stubs for mntent related functions.
2014-01-10 02:06:03 +00:00
JP Abgrall
09a7356282 am f784f036: Merge "Add extra libc stubs for mntent related functions."
* commit 'f784f0365d0c491cba7e6081a072b28ad357fef6':
  Add extra libc stubs for mntent related functions.
2014-01-09 18:01:06 -08:00
JP Abgrall
f784f0365d Merge "Add extra libc stubs for mntent related functions." 2014-01-10 01:54:31 +00:00
JP Abgrall
4e9cb032d1 Add extra libc stubs for mntent related functions.
This adds stubs for setmntent() and endmntent().

Change-Id: I6ccaa044145405cd7226c1c54a25d435c96a2308
2014-01-10 01:24:34 +00:00
Elliott Hughes
e48e9c9919 am 2872e742: am 33c3e8d3: Merge "Add NT_PRSTATUS to <elf.h>."
* commit '2872e74298ab535b36e03630207d3d685e29d570':
  Add NT_PRSTATUS to <elf.h>.
2014-01-10 00:02:23 +00:00
Elliott Hughes
2872e74298 am 33c3e8d3: Merge "Add NT_PRSTATUS to <elf.h>."
* commit '33c3e8d3b2312be3a3eb9d2632c4a570969e1624':
  Add NT_PRSTATUS to <elf.h>.
2014-01-09 15:58:59 -08:00
Elliott Hughes
33c3e8d3b2 Merge "Add NT_PRSTATUS to <elf.h>." 2014-01-09 23:53:58 +00:00
Elliott Hughes
1272dbd1d7 Add NT_PRSTATUS to <elf.h>.
Needed by aarch64.

Bug: 12476126
Change-Id: I7764664459a06cf4f2a60e707bd968d321a78430
2014-01-09 15:45:07 -08:00
Elliott Hughes
1424b70152 am fce55ed3: am 8e6bf35a: Merge "Add <sgidefs.h>."
* commit 'fce55ed319648f7b80303815ba25f5a5f48be2db':
  Add <sgidefs.h>.
2014-01-09 22:37:27 +00:00
Elliott Hughes
fb12b9a7a3 am ea7c0ea6: am d29c75f0: Merge "Fix x86 user_regs_struct."
* commit 'ea7c0ea61462691f9466489176c00393641821bc':
  Fix x86 user_regs_struct.
2014-01-09 22:33:46 +00:00
Elliott Hughes
fce55ed319 am 8e6bf35a: Merge "Add <sgidefs.h>."
* commit '8e6bf35a16532f9e90ce85b0674a0ff19dbef557':
  Add <sgidefs.h>.
2014-01-09 14:31:31 -08:00
Elliott Hughes
ea7c0ea614 am d29c75f0: Merge "Fix x86 user_regs_struct."
* commit 'd29c75f0907f1ea57b37ddbec0a41d8739ece6d8':
  Fix x86 user_regs_struct.
2014-01-09 14:28:08 -08:00
Elliott Hughes
8e6bf35a16 Merge "Add <sgidefs.h>." 2014-01-09 22:24:34 +00:00
Elliott Hughes
d29c75f090 Merge "Fix x86 user_regs_struct." 2014-01-09 22:23:35 +00:00
Elliott Hughes
f8b2b3c81e Fix x86 user_regs_struct.
I fixed x86-64 yesterday, but didn't fix x86 at the same time.

Change-Id: I5c081f5956dfedb9389af303369b841dd0fc1953
2014-01-09 14:01:18 -08:00
Elliott Hughes
1c2cf23a0c Add <sgidefs.h>.
Change-Id: I543d502a81dcb8d5969f814b8a9a9c819bc4fa2c
2014-01-09 13:54:49 -08:00
Elliott Hughes
2a25c30e33 am c63fe9fa: am 6114ffb3: Merge "Add the glibc-compatible d_fileno."
* commit 'c63fe9fa49ee8b7ad17021c1bd418525f9ee0fd0':
  Add the glibc-compatible d_fileno.
2014-01-09 21:49:06 +00:00
Elliott Hughes
c63fe9fa49 am 6114ffb3: Merge "Add the glibc-compatible d_fileno."
* commit '6114ffb3e16c114c728c31b472263660e2d2210c':
  Add the glibc-compatible d_fileno.
2014-01-09 13:43:48 -08:00
Elliott Hughes
6114ffb3e1 Merge "Add the glibc-compatible d_fileno." 2014-01-09 21:39:22 +00:00
Elliott Hughes
a8a3178445 Add the glibc-compatible d_fileno.
d_ino is the POSIX name, but glibc also offers d_fileno, and
that's what strace is using.

Change-Id: I3fadbe7a64700b42e78c7f4631620e864d43147b
2014-01-09 12:37:12 -08:00
Elliott Hughes
b1955cc447 am 56d790fc: am c65cbf97: Merge "Fix <sys/resource.h>."
* commit '56d790fceed92d7d970da8a1bb598bf7c78db7ee':
  Fix <sys/resource.h>.
2014-01-09 19:11:47 +00:00