]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - android-sdk/platform-bionic.git/log
android-sdk/platform-bionic.git
10 years agoMerge "bionic: fix __set_errno for arm64 syscalls that return a 64-bit value"
Elliott Hughes [Tue, 18 Feb 2014 20:31:01 +0000 (20:31 +0000)]
Merge "bionic: fix __set_errno for arm64 syscalls that return a 64-bit value"

10 years agobionic: fix __set_errno for arm64 syscalls that return a 64-bit value
Colin Cross [Sat, 15 Feb 2014 02:56:23 +0000 (18:56 -0800)]
bionic: fix __set_errno for arm64 syscalls that return a 64-bit value

bionic/libc/arch-arm64/syscalls/read.S ends with:
    b.hi __set_errno
    ret
END(read)

If __set_errno returns int, it will set w0 to 0xFFFFFFFF, which means
x0 is 0x00000000FFFFFFFF.  When interpreted as a ssize_t that is
INT_MAX, not -1.

Change __set_errno to return long, which will cause x0 to be set instead
of w0.

Change-Id: I9f9ea0f2995928d2ea240eb2ff7758ecdf0ff412

10 years agoMerge "Clean up warnings in libstdc++."
Elliott Hughes [Tue, 18 Feb 2014 20:05:59 +0000 (20:05 +0000)]
Merge "Clean up warnings in libstdc++."

10 years agoMerge "Clean up various warnings in bionic."
Elliott Hughes [Tue, 18 Feb 2014 20:05:16 +0000 (20:05 +0000)]
Merge "Clean up various warnings in bionic."

10 years agoClean up various warnings in bionic.
Elliott Hughes [Mon, 17 Feb 2014 20:33:16 +0000 (12:33 -0800)]
Clean up various warnings in bionic.

Change-Id: Ic57541d0a567fd4ae79f0ad59b2ffde1130eb7d2

10 years agoClean up warnings in libstdc++.
Elliott Hughes [Tue, 18 Feb 2014 20:02:37 +0000 (12:02 -0800)]
Clean up warnings in libstdc++.

Change-Id: Ie71a2fdf227e7a5fc9a446bb1be110da9b3a4280

10 years agoMerge "Remove duplicate definitions of MIN and MAX."
Elliott Hughes [Mon, 17 Feb 2014 19:00:18 +0000 (19:00 +0000)]
Merge "Remove duplicate definitions of MIN and MAX."

10 years agoRemove duplicate definitions of MIN and MAX.
Elliott Hughes [Mon, 17 Feb 2014 18:57:56 +0000 (10:57 -0800)]
Remove duplicate definitions of MIN and MAX.

These were needed when bionic's header files were missing these macros (though
it would have made a lot more sense to just fix the header files!) but cause
warnings now.

Change-Id: I65a677122f4f6bd07dffc3f37a0c4c0e823d1bb0

10 years agoMerge "build linker and linker64 on 64-bit architectures"
Colin Cross [Fri, 14 Feb 2014 00:56:22 +0000 (00:56 +0000)]
Merge "build linker and linker64 on 64-bit architectures"

10 years agobuild linker and linker64 on 64-bit architectures
Colin Cross [Thu, 13 Feb 2014 05:58:47 +0000 (21:58 -0800)]
build linker and linker64 on 64-bit architectures

Change-Id: I400bbaf5a779fc427de4c3d86c66548b0179b10d

10 years agoMerge "Restore sys_signame for LP64."
Elliott Hughes [Thu, 13 Feb 2014 03:43:11 +0000 (03:43 +0000)]
Merge "Restore sys_signame for LP64."

10 years agoRestore sys_signame for LP64.
Elliott Hughes [Thu, 13 Feb 2014 03:04:27 +0000 (19:04 -0800)]
Restore sys_signame for LP64.

mksh is using this, and we probably build as much BSD source as glibc source.

Change-Id: I400d255a67f9614ca9e57090e3a2e49d2b10cba4

10 years agoMerge "Remove unused variables not spotted by GCC."
Elliott Hughes [Thu, 13 Feb 2014 01:23:31 +0000 (01:23 +0000)]
Merge "Remove unused variables not spotted by GCC."

10 years agoRemove unused variables not spotted by GCC.
Elliott Hughes [Thu, 13 Feb 2014 01:17:41 +0000 (17:17 -0800)]
Remove unused variables not spotted by GCC.

Change-Id: I49a16096bc0f41f3ad0007249161e8bdfcf3438c

10 years agoMerge "Clean up sys_signame and sys_siglist a little."
Elliott Hughes [Thu, 13 Feb 2014 01:10:41 +0000 (01:10 +0000)]
Merge "Clean up sys_signame and sys_siglist a little."

10 years agoClean up sys_signame and sys_siglist a little.
Elliott Hughes [Wed, 12 Feb 2014 03:57:06 +0000 (19:57 -0800)]
Clean up sys_signame and sys_siglist a little.

We don't need quite so much duplication because we already have a way
to get the signal number from its name, and that already copes with the
fact that the mips/mips64 numbers are different from everyone else's.

Also remove sys_signame from LP64. glibc doesn't have this BSD-ism.

Change-Id: I6dc411a3d73589383c85d3b07d9d648311492a10

10 years agoMerge "Fix missing args."
Ying Wang [Thu, 13 Feb 2014 00:43:23 +0000 (00:43 +0000)]
Merge "Fix missing args."

10 years agoFix missing args.
Ying Wang [Thu, 13 Feb 2014 00:40:55 +0000 (16:40 -0800)]
Fix missing args.

Change-Id: I89a366db984ea6b2553896a4351e59bb91f93040

10 years agoMerge "Reconfig libc's Android.mk to build for multilib"
Ying Wang [Wed, 12 Feb 2014 23:53:08 +0000 (23:53 +0000)]
Merge "Reconfig libc's Android.mk to build for multilib"

10 years agoReconfig libc's Android.mk to build for multilib
Ying Wang [Thu, 23 Jan 2014 23:17:50 +0000 (15:17 -0800)]
Reconfig libc's Android.mk to build for multilib

1. Moved arch-specific setup to their own files:
    - <arch>/<arch>.mk, arch-specific configs. Variables in those config
      end with the arch name.
    - removed the extra complexity introduced by function libc-add-cpu-variant-src,
      which seems to be not very useful these days.
2. Separated out the crt object files generation rules and set up the
   rules for both TARGET_ARCH and TARGET_2ND_ARCH.
3. Build all the libraries for both TARGET_ARCH and TARGET_2ND_ARCH,
  with the arch-specific LOCAL_ variables.

Bug: 11654773
Change-Id: I9c2d85db0affa49199d182236d2210060a321421

10 years agoMerge "Fix NSIG."
Elliott Hughes [Wed, 12 Feb 2014 20:13:29 +0000 (20:13 +0000)]
Merge "Fix NSIG."

10 years agoFix NSIG.
Elliott Hughes [Wed, 12 Feb 2014 04:01:11 +0000 (20:01 -0800)]
Fix NSIG.

Our sigset_t definition hasn't been tied to our NSIG definition since we
switched to uapi headers, so we can now fix it without breaking the LP32 ABI.
The kernel uapi headers define and use _NSIG, so we need to have our scripts
rename the kernel's definitions out of the way, then we can define _NSIG
and NSIG in terms of the kernel's off-by-one value.

Bug: 12938442
Change-Id: Ic7c86fd5be5ad1d822f7b2b1d88c8a0d70a1ac0f

10 years agoMerge "Clean up all the lint cpplint can find in the dynamic linker."
Elliott Hughes [Wed, 12 Feb 2014 01:35:04 +0000 (01:35 +0000)]
Merge "Clean up all the lint cpplint can find in the dynamic linker."

10 years agoClean up all the lint cpplint can find in the dynamic linker.
Elliott Hughes [Wed, 12 Feb 2014 00:59:37 +0000 (16:59 -0800)]
Clean up all the lint cpplint can find in the dynamic linker.

Change-Id: Ic9ee7153817c22a252cc4b309283e355b623cab9

10 years agoMerge "[MIPS64] Dynamic linker"
Elliott Hughes [Tue, 11 Feb 2014 23:48:51 +0000 (23:48 +0000)]
Merge "[MIPS64] Dynamic linker"

10 years ago[MIPS64] Dynamic linker
Chris Dearman [Fri, 7 Feb 2014 04:36:51 +0000 (20:36 -0800)]
[MIPS64] Dynamic linker

Change-Id: I937c7c776cae3d66e214798d5217a922cd106bfc
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
Signed-off-by: Duane Sand <duane.sand@imgtec.com>
10 years agoMerge "Build syscall stubs in their own library."
Elliott Hughes [Tue, 11 Feb 2014 22:01:45 +0000 (22:01 +0000)]
Merge "Build syscall stubs in their own library."

10 years agoBuild syscall stubs in their own library.
Elliott Hughes [Tue, 11 Feb 2014 21:32:02 +0000 (13:32 -0800)]
Build syscall stubs in their own library.

This lets us lose the auto-generated makefiles.

Change-Id: I2de0c71b3b9c08f9cce8f4ff7fd7254dda008c86

10 years agoMerge "Clean up cacheflush."
Elliott Hughes [Tue, 11 Feb 2014 18:28:03 +0000 (18:28 +0000)]
Merge "Clean up cacheflush."

10 years agoClean up cacheflush.
Elliott Hughes [Tue, 11 Feb 2014 02:37:02 +0000 (18:37 -0800)]
Clean up cacheflush.

No cacheflush for LP64; use the GCC builtin instead. Clean up the
32-bit MIPS implementation now we no longer need to worry about
old versions of GCC.

Bug: 12924756
Change-Id: Ie23955b3ec194e226c4b2bce35b11d5e061f4753

10 years agoMerge "Switch <elf.h> over to linux uapi under the covers."
Elliott Hughes [Tue, 11 Feb 2014 02:22:45 +0000 (02:22 +0000)]
Merge "Switch <elf.h> over to linux uapi under the covers."

10 years agoSwitch <elf.h> over to linux uapi under the covers.
Elliott Hughes [Tue, 11 Feb 2014 01:46:57 +0000 (17:46 -0800)]
Switch <elf.h> over to linux uapi under the covers.

Remove the linker's reliance on BSD cruft and use the glibc-style
ElfW macro. (Other code too, but the linker contains the majority
of the code that needs to work for Elf32 and Elf64.)

All platforms need dl_iterate_phdr_static, so it doesn't make sense
to have that part of the per-architecture configuration.

Bug: 12476126
Change-Id: I1d7f918f1303a392794a6cd8b3512ff56bd6e487

10 years agoMerge "Fix <link.h>."
Elliott Hughes [Tue, 11 Feb 2014 00:03:02 +0000 (00:03 +0000)]
Merge "Fix <link.h>."

10 years agoFix <link.h>.
Elliott Hughes [Mon, 10 Feb 2014 21:31:13 +0000 (13:31 -0800)]
Fix <link.h>.

Also move some of the stuff that should be in <link.h> out of the
private "linker.h", to make it clearer that these are public API
known to gdb that we can't change.

Bug: 12554197
Change-Id: I830e1260d3d8b833ed99bc1518f1c6b6102be8af

10 years agoMerge "Fix socklen_t (on LP64 only)."
Elliott Hughes [Sat, 8 Feb 2014 01:05:35 +0000 (01:05 +0000)]
Merge "Fix socklen_t (on LP64 only)."

10 years agoFix socklen_t (on LP64 only).
Elliott Hughes [Sat, 8 Feb 2014 00:50:55 +0000 (16:50 -0800)]
Fix socklen_t (on LP64 only).

Too late to fix LP32 :-(

Bug: 12935461
Change-Id: Ib056ca1eaf9ae8712f88ae21ff94e91b08cf588b

10 years agoMerge "Remove <sys/_types.h>."
Elliott Hughes [Sat, 8 Feb 2014 00:23:50 +0000 (00:23 +0000)]
Merge "Remove <sys/_types.h>."

10 years agoRemove <sys/_types.h>.
Elliott Hughes [Fri, 7 Feb 2014 22:55:58 +0000 (14:55 -0800)]
Remove <sys/_types.h>.

Bug: 12213562
Change-Id: I0d10664f9da60739bdbad0408be0dd61eea3c1fe

10 years agoMerge "Make sure that the same tests are on all platforms."
Christopher Ferris [Fri, 7 Feb 2014 19:03:41 +0000 (19:03 +0000)]
Merge "Make sure that the same tests are on all platforms."

10 years agoMake sure that the same tests are on all platforms.
Christopher Ferris [Sat, 21 Dec 2013 02:43:21 +0000 (18:43 -0800)]
Make sure that the same tests are on all platforms.

In order to be able to generate a list of tests for cts, the same set of
tests must exist across all platforms. This CL adds empty tests where a
test was conditionally compiled out.

This CL creates a single library libBionicTests that includes all of
the tests found in bionic-unit-tests-static.

Also fix a few missing include files in some test files.

Tested by running and compiling the tests for every platform and
verifying the same number of tests are on each platform.

Change-Id: I9989d4bfebb0f9c409a0ce7e87169299eac605a2

10 years agoMerge "[MIPS64] libc/libm support"
Elliott Hughes [Fri, 7 Feb 2014 00:23:21 +0000 (00:23 +0000)]
Merge "[MIPS64] libc/libm support"

10 years ago[MIPS64] libc/libm support
Chris Dearman [Thu, 6 Feb 2014 02:51:43 +0000 (18:51 -0800)]
[MIPS64] libc/libm support

libc/libm support for MIPS64 targets

Change-Id: I8271941d418612a286be55495f0e95822f90004f
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
Signed-off-by: Raghu Gandham <raghu.gandham@imgtec.com>
10 years agoMerge "[MIPS64] Add syscall related files"
Elliott Hughes [Thu, 6 Feb 2014 23:40:22 +0000 (23:40 +0000)]
Merge "[MIPS64] Add syscall related files"

10 years ago[MIPS64] Add syscall related files
Chris Dearman [Thu, 6 Feb 2014 00:59:23 +0000 (16:59 -0800)]
[MIPS64] Add syscall related files

Change-Id: I2f5d05df0e767538a6fe467ca0a2386325f8b71f
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
Signed-off-by: Raghu Gandham <raghu.gandham@imgtec.com>
Signed-off-by: Duane Sand <duane.sand@imgtec.com>
10 years agoMerge "Remove unused cruft from MIPS <machine/signal.h>."
Elliott Hughes [Wed, 5 Feb 2014 22:24:52 +0000 (22:24 +0000)]
Merge "Remove unused cruft from MIPS <machine/signal.h>."

10 years agoRemove unused cruft from MIPS <machine/signal.h>.
Elliott Hughes [Wed, 5 Feb 2014 22:11:38 +0000 (14:11 -0800)]
Remove unused cruft from MIPS <machine/signal.h>.

An extra (unused) struct sigcontext doesn't help anybody.

Change-Id: I73899fe7e1ccccf50a507c737945cf014d430396

10 years agoMerge "Kill <machine/_types.h>."
Elliott Hughes [Wed, 5 Feb 2014 22:04:39 +0000 (22:04 +0000)]
Merge "Kill <machine/_types.h>."

10 years agoKill <machine/_types.h>.
Elliott Hughes [Wed, 5 Feb 2014 03:26:31 +0000 (19:26 -0800)]
Kill <machine/_types.h>.

Most of <machine/_types.h> was either unused, wrong, or identical across
all 32-/64-bit architectures.

I'm not a huge fan of <sys/_types.h> either, but moving the bits we need
up into there is a step forward.

Bug: 12213562
Change-Id: Id13551c78966e324beee2dd90c5575e37d2a71e6

10 years agoMerge "Use arch-specific LOCAL_ variables to build libm."
Ying Wang [Tue, 4 Feb 2014 01:20:32 +0000 (01:20 +0000)]
Merge "Use arch-specific LOCAL_ variables to build libm."

10 years agoUse arch-specific LOCAL_ variables to build libm.
Ying Wang [Mon, 27 Jan 2014 22:59:26 +0000 (14:59 -0800)]
Use arch-specific LOCAL_ variables to build libm.

Use arch-specific LOCAL_ variables to build libm for both
TARGET_ARCH and TARGET_2ND_ARCH.

Bug: 11654773
Change-Id: I6da794ba722bb68e7484d8869c6eb0425b7d17cb

10 years agoMerge "Add fallocate/fallocate64/posix_fallocate/posix_fallocate64."
Elliott Hughes [Tue, 4 Feb 2014 00:39:29 +0000 (00:39 +0000)]
Merge "Add fallocate/fallocate64/posix_fallocate/posix_fallocate64."

10 years agoAdd fallocate/fallocate64/posix_fallocate/posix_fallocate64.
Elliott Hughes [Tue, 4 Feb 2014 00:20:46 +0000 (16:20 -0800)]
Add fallocate/fallocate64/posix_fallocate/posix_fallocate64.

Bug: 5287571
Bug: 12612860
Change-Id: I4501b9c6cdf9a830336ce0b3afc4ea716b6a0f6f

10 years agoMerge "Use __inline__ for fortify."
Elliott Hughes [Mon, 3 Feb 2014 23:55:13 +0000 (23:55 +0000)]
Merge "Use __inline__ for fortify."

10 years agoUse __inline__ for fortify.
Elliott Hughes [Mon, 3 Feb 2014 23:41:57 +0000 (15:41 -0800)]
Use __inline__ for fortify.

libunwind has #define inline /* empty */ which breaks our fortified headers.
glibc uses __inline but our BSD-derived headers often override that. __inline__
is the third alternative understood by GCC that -- as far as I know -- neither
the C library itself nor third-party code tries to mess with.

Bug: 12871594
Change-Id: I6677e70ea531bb7d4c46021b43af760d4ad8ecf7

10 years agoMerge "Regenerate binder header"
Arve Hjønnevåg [Mon, 3 Feb 2014 21:13:22 +0000 (21:13 +0000)]
Merge "Regenerate binder header"

10 years agoMerge "Clean up debugger.cpp slightly."
Elliott Hughes [Sat, 1 Feb 2014 01:31:11 +0000 (01:31 +0000)]
Merge "Clean up debugger.cpp slightly."

10 years agoClean up debugger.cpp slightly.
Elliott Hughes [Sat, 1 Feb 2014 01:27:00 +0000 (17:27 -0800)]
Clean up debugger.cpp slightly.

In particular, don't do weird things with 'int tid'.

Change-Id: I0fd9158a452967163508ada8987de9494ad5f9af

10 years agoMerge "LP64 binaries should talk to debuggerd64."
Elliott Hughes [Sat, 1 Feb 2014 01:00:34 +0000 (01:00 +0000)]
Merge "LP64 binaries should talk to debuggerd64."

10 years agoLP64 binaries should talk to debuggerd64.
Elliott Hughes [Sat, 1 Feb 2014 00:56:39 +0000 (16:56 -0800)]
LP64 binaries should talk to debuggerd64.

Change-Id: I7eb30f9d04f80b6b45d3148757970d3f1117493c

10 years agoMerge "Add missing ucontext_t definition to bionic for arch-arm64."
Elliott Hughes [Fri, 31 Jan 2014 18:51:35 +0000 (18:51 +0000)]
Merge "Add missing ucontext_t definition to bionic for arch-arm64."

10 years agoMerge "[MIPS] SA_RESTORER support is not needed for MIPS"
Elliott Hughes [Fri, 31 Jan 2014 06:20:44 +0000 (06:20 +0000)]
Merge "[MIPS] SA_RESTORER support is not needed for MIPS"

10 years agoAdd missing ucontext_t definition to bionic for arch-arm64.
Ross McIlroy [Fri, 31 Jan 2014 04:45:53 +0000 (04:45 +0000)]
Add missing ucontext_t definition to bionic for arch-arm64.

Change-Id: I1ee15230c63e00f01d2063cfffcffe7f1a1eeb6a

10 years ago[MIPS] SA_RESTORER support is not needed for MIPS
Chris Dearman [Fri, 31 Jan 2014 04:01:19 +0000 (20:01 -0800)]
[MIPS] SA_RESTORER support is not needed for MIPS

Change-Id: I1c000c94973e811193c80c9770da4f3157594f90
Signed-off-by: Chris Dearman <chris.dearman@imgtec.com>
Signed-off-by: Duane Sand <duane.sand@imgtec.com>
10 years agoMerge "Make ARM <user.h> more glibc-compatible."
Elliott Hughes [Thu, 30 Jan 2014 18:42:00 +0000 (18:42 +0000)]
Merge "Make ARM <user.h> more glibc-compatible."

10 years agoMake ARM <user.h> more glibc-compatible.
Elliott Hughes [Thu, 30 Jan 2014 18:39:02 +0000 (10:39 -0800)]
Make ARM <user.h> more glibc-compatible.

Change-Id: I681930ad7f80a5e7bc40eb0f36872e415445f0f9

10 years agoMerge "Add mips <sys/ucontext.h>."
Elliott Hughes [Thu, 30 Jan 2014 02:43:50 +0000 (02:43 +0000)]
Merge "Add mips <sys/ucontext.h>."

10 years agoAdd mips <sys/ucontext.h>.
Elliott Hughes [Thu, 30 Jan 2014 02:37:15 +0000 (18:37 -0800)]
Add mips <sys/ucontext.h>.

Change-Id: I2821f523f0c3bb4400b2ad5d36e21e5a3d6d777c

10 years agoMerge "Add arm <sys/ucontext.h>."
Elliott Hughes [Thu, 30 Jan 2014 02:03:57 +0000 (02:03 +0000)]
Merge "Add arm <sys/ucontext.h>."

10 years agoAdd arm <sys/ucontext.h>.
Elliott Hughes [Thu, 30 Jan 2014 01:53:59 +0000 (17:53 -0800)]
Add arm <sys/ucontext.h>.

Change-Id: I14d435f9e3e82f77d8a7e886ff88c18f5d09d14a

10 years agoMerge "Add x86 <sys/ucontext.h>."
Elliott Hughes [Thu, 30 Jan 2014 00:58:08 +0000 (00:58 +0000)]
Merge "Add x86 <sys/ucontext.h>."

10 years agoAdd x86 <sys/ucontext.h>.
Elliott Hughes [Thu, 30 Jan 2014 00:46:00 +0000 (16:46 -0800)]
Add x86 <sys/ucontext.h>.

Change-Id: I43e72604f7a932f134733b78094b577415a5edb7

10 years agoMerge "Add x86_64 ucontext.h for better compatibility"
Elliott Hughes [Wed, 29 Jan 2014 23:41:22 +0000 (23:41 +0000)]
Merge "Add x86_64 ucontext.h for better compatibility"

10 years agoAdd x86_64 ucontext.h for better compatibility
Pavel Chupin [Mon, 27 Jan 2014 13:56:43 +0000 (17:56 +0400)]
Add x86_64 ucontext.h for better compatibility

As suggested here: https://android-review.googlesource.com/#/c/71267/
it may be used for x86_64 libunwind enabling.

Change-Id: I21623261a48ea7099e030d33932556e294d226ff
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
10 years agoRegenerate binder header
Arve Hjønnevåg [Wed, 29 Jan 2014 03:27:17 +0000 (19:27 -0800)]
Regenerate binder header

Adds 64 bit support

Change-Id: I6db3c4f68bf2c337bff753599af193e2b062ec05

10 years agoMerge "Fix pthread_test to work with gtest 1.7.0."
Elliott Hughes [Wed, 29 Jan 2014 01:42:10 +0000 (01:42 +0000)]
Merge "Fix pthread_test to work with gtest 1.7.0."

10 years agoFix pthread_test to work with gtest 1.7.0.
Elliott Hughes [Wed, 29 Jan 2014 01:02:03 +0000 (17:02 -0800)]
Fix pthread_test to work with gtest 1.7.0.

Now we're building it correctly configured, gtest takes a couple of
TLS slots for itself.

Change-Id: I1c2c4e9e5f9c6e2e2e6ecd1214cfc16a5af5afed

10 years agoMerge "Remove a __system_property_get call from the DNS code."
Elliott Hughes [Tue, 28 Jan 2014 23:00:05 +0000 (23:00 +0000)]
Merge "Remove a __system_property_get call from the DNS code."

10 years agoRemove a __system_property_get call from the DNS code.
Elliott Hughes [Tue, 28 Jan 2014 22:54:11 +0000 (14:54 -0800)]
Remove a __system_property_get call from the DNS code.

Change-Id: I48082ad9eb1b56349c6746ab2c371728c8571a81

10 years agoMerge "bionic: Change the type of soinfo's size to size_t"
Elliott Hughes [Tue, 28 Jan 2014 21:04:03 +0000 (21:04 +0000)]
Merge "bionic: Change the type of soinfo's size to size_t"

10 years agobionic: Change the type of soinfo's size to size_t
Weiwu Chen [Tue, 3 Dec 2013 11:47:34 +0000 (19:47 +0800)]
bionic: Change the type of soinfo's size to size_t

Some system functions like munmap expect soinfo's size to be size_t, but currently
it is unsigned. Change it to size_t to fit 64bit's portability.

Change-Id: I0bf6d522b38b0cd9bf1db05b004b5326217412a2
Signed-off-by: Weiwu Chen <weiwu.chen@intel.com>
Signed-off-by: Qiming Shi <qiming.shi@intel.com>
10 years agoMerge "Fix 32-bit mmap/mmap64 handling of negative offsets."
Elliott Hughes [Tue, 28 Jan 2014 00:58:50 +0000 (00:58 +0000)]
Merge "Fix 32-bit mmap/mmap64 handling of negative offsets."

10 years agoFix 32-bit mmap/mmap64 handling of negative offsets.
Elliott Hughes [Tue, 28 Jan 2014 00:28:31 +0000 (16:28 -0800)]
Fix 32-bit mmap/mmap64 handling of negative offsets.

We don't actually need to worry about sign extension if we reject
negative values ourselves. Previously it was possible to come up
with negative but aligned values that we would pass to the kernel;
in the case of mmap (as opposed to mmap64) we'd incorrectly turn
those into large positive offsets.

Change-Id: I2aa583e0f892d59bb77429aea8730b72db32dcb0

10 years agoMerge "Remove libthread_db from bionic."
Elliott Hughes [Tue, 28 Jan 2014 00:24:57 +0000 (00:24 +0000)]
Merge "Remove libthread_db from bionic."

10 years agoRemove libthread_db from bionic.
Elliott Hughes [Mon, 27 Jan 2014 23:44:24 +0000 (15:44 -0800)]
Remove libthread_db from bionic.

The NDK statically links its own copy into gdb.

Bug: 11882807
Change-Id: I0c7ed8761c32df3cc3644258551bc7d2e263f47b

10 years agoMerge "bionic: Do not use magic number for portability"
Elliott Hughes [Mon, 27 Jan 2014 22:52:07 +0000 (22:52 +0000)]
Merge "bionic: Do not use magic number for portability"

10 years agobionic: Do not use magic number for portability
Qiming Shi [Sun, 26 Jan 2014 08:49:39 +0000 (16:49 +0800)]
bionic: Do not use magic number for portability

Do not use the magic number 0xFFFFFFFFU to represent the max value of an address
as it's not correct on 64bit platform. We should use UINTPTR_MAX instead.

Change-Id: I1fc6f5864a651b2eddea2333cb0788f9d9223270
Signed-off-by: Qiming Shi <qiming.shi@intel.com>
Signed-off-by: Weiwu Chen <weiwu.chen@intel.com>
10 years agoMerge "Remove __STDC_FORMAT_MACROS and __STDC_LIMIT_MACROS guards (and fix SIZE_MAX...
Elliott Hughes [Sat, 25 Jan 2014 01:25:16 +0000 (01:25 +0000)]
Merge "Remove __STDC_FORMAT_MACROS and __STDC_LIMIT_MACROS guards (and fix SIZE_MAX for LP64)."

10 years agoMerge "Use arch-specific variable to set up the x86 ld flags."
Ying Wang [Sat, 25 Jan 2014 00:50:53 +0000 (00:50 +0000)]
Merge "Use arch-specific variable to set up the x86 ld flags."

10 years agoUse arch-specific variable to set up the x86 ld flags.
Ying Wang [Thu, 23 Jan 2014 23:15:28 +0000 (15:15 -0800)]
Use arch-specific variable to set up the x86 ld flags.

Bug: 11654773
Change-Id: I9e9075bac1303cfa39b0f717dd74625ce1dd5fa5

10 years agoRemove __STDC_FORMAT_MACROS and __STDC_LIMIT_MACROS guards (and fix SIZE_MAX for...
Elliott Hughes [Sat, 25 Jan 2014 00:37:04 +0000 (16:37 -0800)]
Remove __STDC_FORMAT_MACROS and __STDC_LIMIT_MACROS guards (and fix SIZE_MAX for LP64).

The various committees decided that everyone should get all these macros,
all the time.

Bug: 12708004
Change-Id: Ib56010dcba9b0656e5701546fefb7f78dc0bf916

10 years agoMerge "Add all implicitly loaded symbols from libgcc.a into libgcc_compat.c."
Ben Cheng [Sat, 25 Jan 2014 00:13:10 +0000 (00:13 +0000)]
Merge "Add all implicitly loaded symbols from libgcc.a into libgcc_compat.c."

10 years agoAdd all implicitly loaded symbols from libgcc.a into libgcc_compat.c.
Ben Cheng [Fri, 24 Jan 2014 23:20:11 +0000 (15:20 -0800)]
Add all implicitly loaded symbols from libgcc.a into libgcc_compat.c.

Change-Id: I0e66a73e849a01817d016a688d7291c2fb604e48

10 years agoMerge "bionic: rename aarch64 target to arm64"
Colin Cross [Fri, 24 Jan 2014 20:33:23 +0000 (20:33 +0000)]
Merge "bionic: rename aarch64 target to arm64"

10 years agoMerge "Re-export libgcc's __aeabi_uidivmod and __popcount_tab"
Ben Cheng [Fri, 24 Jan 2014 18:11:48 +0000 (18:11 +0000)]
Merge "Re-export libgcc's __aeabi_uidivmod and __popcount_tab"

10 years agoRe-export libgcc's __aeabi_uidivmod and __popcount_tab
Bernhard Rosenkränzer [Fri, 24 Jan 2014 11:55:00 +0000 (12:55 +0100)]
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>
10 years agobionic: rename aarch64 target to arm64
Colin Cross [Wed, 22 Jan 2014 03:50:58 +0000 (19:50 -0800)]
bionic: rename aarch64 target to arm64

Rename aarch64 build targets to arm64.  The gcc toolchain is still
aarch64.

Change-Id: Ia92d8a50824e5329cf00fd6f4f92eae112b7f3a3

10 years agoMerge "Add "__noreturn" to assert and assert2"
Elliott Hughes [Wed, 15 Jan 2014 21:26:46 +0000 (21:26 +0000)]
Merge "Add "__noreturn" to assert and assert2"

10 years agoAdd "__noreturn" to assert and assert2
Vadim Markovtsev [Mon, 13 Jan 2014 07:54:42 +0000 (11:54 +0400)]
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>
10 years agoMerge "Fix libdl build warnings, turn on -Werror."
Elliott Hughes [Wed, 15 Jan 2014 02:33:33 +0000 (02:33 +0000)]
Merge "Fix libdl build warnings, turn on -Werror."

10 years agoMerge "Move _thread_created_hook to where it belongs."
Elliott Hughes [Wed, 15 Jan 2014 02:32:47 +0000 (02:32 +0000)]
Merge "Move _thread_created_hook to where it belongs."