OSDN Git Service

android-x86/bionic.git
10 years agoReserve space in mbstate to allow for proper wchar support
Calin Juravle [Tue, 29 Apr 2014 14:48:34 +0000 (15:48 +0100)]
Reserve space in mbstate to allow for proper wchar support

Bug: 14382788
Change-Id: If023ac9bb65f95135cae7ebe89147e3985a69a96

10 years agoMerge "Don't use so much stack in tzcode."
Elliott Hughes [Sat, 26 Apr 2014 04:51:55 +0000 (04:51 +0000)]
Merge "Don't use so much stack in tzcode."

10 years agoDon't use so much stack in tzcode.
Elliott Hughes [Fri, 25 Apr 2014 23:55:04 +0000 (16:55 -0700)]
Don't use so much stack in tzcode.

Bug: 14313703
Bug: https://code.google.com/p/android/issues/detail?id=61130
Change-Id: Id9b240fce20d4a6f2660792070e02b2b5f287655

10 years agoMerge "Pass si_code through to debuggerd."
Elliott Hughes [Sat, 26 Apr 2014 03:23:22 +0000 (03:23 +0000)]
Merge "Pass si_code through to debuggerd."

10 years agoPass si_code through to debuggerd.
Elliott Hughes [Fri, 25 Apr 2014 23:02:00 +0000 (16:02 -0700)]
Pass si_code through to debuggerd.

Because we re-raise various signals, we corrupt the si_code that debuggerd
sees when it ptraces our siginfo. One possible solution (shown here) is to
pass the original si_code value in the message we send to debuggerd.

Change-Id: I76f9aa2c0442e5cab611d132532409e700383907

10 years agoMerge "Fix brk/sbrk error checking."
Elliott Hughes [Sat, 26 Apr 2014 02:39:09 +0000 (02:39 +0000)]
Merge "Fix brk/sbrk error checking."

10 years agoFix brk/sbrk error checking.
Elliott Hughes [Sat, 26 Apr 2014 01:27:38 +0000 (18:27 -0700)]
Fix brk/sbrk error checking.

Note that the kernel returns the current break on error or if the requested
break is smaller than the minimum break, or the new break. I don't know where
we got the idea that the kernel could return -1.

Also optimizes the query case.

Also hides an accidentally-exported symbol for LP64.

Change-Id: I0fd6b8b14ddf1ae82935c0c3fc610da5cc74932e

10 years agoMerge "Reserve space in pthread structures for future extensibility."
Colin Cross [Thu, 24 Apr 2014 22:40:50 +0000 (22:40 +0000)]
Merge "Reserve space in pthread structures for future extensibility."

10 years agoReserve space in pthread structures for future extensibility.
Calin Juravle [Wed, 23 Apr 2014 16:35:04 +0000 (17:35 +0100)]
Reserve space in pthread structures for future extensibility.

Make our structures equal in size with glibc structures. This should
give us plenty of space to implement any missing feature.

Bug: 13278744
Bug: 12875898
(cherry picked from commit cf83fd77caa3128ecb6ac935e342cb0ea258b9ee)

Change-Id: I76968d31024eb51bc73887687e5ac492eb02a27f

10 years agoMerge "Allow liblog to pass failure reasons to debuggerd."
Elliott Hughes [Thu, 24 Apr 2014 20:29:43 +0000 (20:29 +0000)]
Merge "Allow liblog to pass failure reasons to debuggerd."

10 years agoMerge "Revert "Reserve space in pthread structures for future extensibility.""
Greg Hackmann [Thu, 24 Apr 2014 18:12:27 +0000 (18:12 +0000)]
Merge "Revert "Reserve space in pthread structures for future extensibility.""

10 years agoRevert "Reserve space in pthread structures for future extensibility."
Greg Hackmann [Thu, 24 Apr 2014 18:11:23 +0000 (18:11 +0000)]
Revert "Reserve space in pthread structures for future extensibility."

This reverts commit cf83fd77caa3128ecb6ac935e342cb0ea258b9ee.

Change-Id: I4f69e86ffe1c267a9018eb489d909237534c6cf9

10 years agoMerge "Remove an unsed include dir"
Calin Juravle [Thu, 24 Apr 2014 16:40:50 +0000 (16:40 +0000)]
Merge "Remove an unsed include dir"

10 years agoRemove an unsed include dir
Calin Juravle [Thu, 24 Apr 2014 16:28:05 +0000 (17:28 +0100)]
Remove an unsed include dir

Change-Id: I05aa1e7e0639a5ec5576bf7646f35d2e5b157c09

10 years agoMerge "Removed non-existing include dir"
Calin Juravle [Thu, 24 Apr 2014 16:29:49 +0000 (16:29 +0000)]
Merge "Removed non-existing include dir"

10 years agoRemoved non-existing include dir
Calin Juravle [Thu, 24 Apr 2014 16:17:02 +0000 (17:17 +0100)]
Removed non-existing include dir

Change-Id: I3e00a8471e6d94f596a34bdfdb26a0caba23dd82

10 years agoMerge "Reserve space in pthread structures for future extensibility."
Calin Juravle [Thu, 24 Apr 2014 11:35:36 +0000 (11:35 +0000)]
Merge "Reserve space in pthread structures for future extensibility."

10 years agoMerge "Clean-up _fpmath and fake_long_doubles"
Calin Juravle [Thu, 24 Apr 2014 10:12:57 +0000 (10:12 +0000)]
Merge "Clean-up _fpmath and fake_long_doubles"

10 years agoMerge "Fix fallout from host GCC upgrade."
Elliott Hughes [Thu, 24 Apr 2014 06:06:19 +0000 (06:06 +0000)]
Merge "Fix fallout from host GCC upgrade."

10 years agoFix fallout from host GCC upgrade.
Elliott Hughes [Thu, 24 Apr 2014 06:02:43 +0000 (23:02 -0700)]
Fix fallout from host GCC upgrade.

I'll raise a bug for the FD_ISSET fortification; we should do better too.

Change-Id: Id2bf277890ad06b010dc952e270d746714c2bea7

10 years agoAllow liblog to pass failure reasons to debuggerd.
Elliott Hughes [Wed, 23 Apr 2014 21:52:49 +0000 (14:52 -0700)]
Allow liblog to pass failure reasons to debuggerd.

assert(3) already does this, but LOG_ALWAYS_FATAL and LOG_ALWAYS_FATAL_IF
have been missing out.

Change-Id: I1d6214c4f792fa0d4ba3c14eded3fc9c332bd3c5

10 years agoMerge "Remove two dead files."
Elliott Hughes [Wed, 23 Apr 2014 19:54:43 +0000 (19:54 +0000)]
Merge "Remove two dead files."

10 years agoRemove two dead files.
Elliott Hughes [Wed, 23 Apr 2014 19:51:37 +0000 (12:51 -0700)]
Remove two dead files.

I forgot to remove these in the change that stopped building them
(eae5902e73dc4381811e08fd2334bf4a9300a928).

Change-Id: I4665fa9f6b9b80c51778d5e82b49406fe56db9a6

10 years agoMerge "prctl: Adds the PR_SET_TIMERSLACK_PID option"
Ruchi Kandoi [Wed, 23 Apr 2014 19:13:28 +0000 (19:13 +0000)]
Merge "prctl: Adds the PR_SET_TIMERSLACK_PID option"

10 years agoprctl: Adds the PR_SET_TIMERSLACK_PID option
Ruchi Kandoi [Wed, 23 Apr 2014 02:00:45 +0000 (19:00 -0700)]
prctl: Adds the PR_SET_TIMERSLACK_PID option

Allows software to set timer clack for other thread.

Change-Id: Ifa9d2cc7844ec581356bce15434609242fd898a8
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
10 years agoClean-up _fpmath and fake_long_doubles
Calin Juravle [Thu, 17 Apr 2014 17:17:32 +0000 (18:17 +0100)]
Clean-up _fpmath and fake_long_doubles

- promoted IEEEld2bits to fpmath since most of the where the same for
diffrent archs
- removed _fpmath
- reinstated weak_references
- moved isfinite and isnormal to libc
- clean up fake_long_doubles
- clean up some useless ifdefs
- added missing nexttoward* tests

Bug: 14134235
Change-Id: I95639c4885653fe47fd7dc0570ee5bb3389bbc6b

10 years agoReserve space in pthread structures for future extensibility.
Calin Juravle [Wed, 23 Apr 2014 16:35:04 +0000 (17:35 +0100)]
Reserve space in pthread structures for future extensibility.

Make our structures equal in size with glibc structures. This should
give us plenty of space to implement any missing feature.

Bug: 13278744
Bug: 12875898
Change-Id: I980017fd5942411ebc5ac32b2673a10a20db68c8

10 years agoMerge "Fix the glibc tests again."
Elliott Hughes [Wed, 23 Apr 2014 02:24:41 +0000 (02:24 +0000)]
Merge "Fix the glibc tests again."

10 years agoFix the glibc tests again.
Elliott Hughes [Wed, 23 Apr 2014 02:21:32 +0000 (19:21 -0700)]
Fix the glibc tests again.

The glibc tests are just a regular host binary; they don't require
that you're targeting x86 or x86_64. They do seem to pick up the
suffix of the target though, even though they're always 32-bit.

Change-Id: I689ca2a4f8d7b397afa4df722b95b0d7ec904bf6

10 years agoMerge "Tests for environment variables utility functions"
Elliott Hughes [Wed, 23 Apr 2014 02:10:39 +0000 (02:10 +0000)]
Merge "Tests for environment variables utility functions"

10 years agoTests for environment variables utility functions
Grigoriy Kraynov [Tue, 17 Sep 2013 11:44:22 +0000 (15:44 +0400)]
Tests for environment variables utility functions

This is the first patch from the new set of tests for Bionic standard functions.

Change-Id: Ie568788a24832394e597ad33f44a5c71cb33b51f
Signed-off-by: Grigoriy Kraynov <grigoriy.kraynov@intel.com>
10 years agoMerge "Switch to the upstream OpenBSD getenv/putenv/setenv implementation."
Elliott Hughes [Wed, 23 Apr 2014 01:52:06 +0000 (01:52 +0000)]
Merge "Switch to the upstream OpenBSD getenv/putenv/setenv implementation."

10 years agoMerge "Remove strntoimax and strntoumax from the future."
Elliott Hughes [Wed, 23 Apr 2014 01:50:08 +0000 (01:50 +0000)]
Merge "Remove strntoimax and strntoumax from the future."

10 years agoMerge "Get ANDROID_DATA dir from enviroment"
Dmitriy Ivanov [Wed, 23 Apr 2014 01:48:55 +0000 (01:48 +0000)]
Merge "Get ANDROID_DATA dir from enviroment"

10 years agoGet ANDROID_DATA dir from enviroment
Dmitriy Ivanov [Wed, 23 Apr 2014 00:48:08 +0000 (17:48 -0700)]
Get ANDROID_DATA dir from enviroment

Change-Id: Ie3675bd27bbc779fc2140f95b930eadd14838753

10 years agoRemove strntoimax and strntoumax from the future.
Elliott Hughes [Wed, 23 Apr 2014 00:56:42 +0000 (17:56 -0700)]
Remove strntoimax and strntoumax from the future.

Where do these turds come from?

Change-Id: Id9ad2cc85c6128aa63b5d56ff2aa455bde39a5eb

10 years agoSwitch to the upstream OpenBSD getenv/putenv/setenv implementation.
Elliott Hughes [Wed, 23 Apr 2014 00:41:00 +0000 (17:41 -0700)]
Switch to the upstream OpenBSD getenv/putenv/setenv implementation.

This fixes all the bugs found by the new tests.

Change-Id: Id5a5f9f39a0620208bafa053f871a044725b4795

10 years agoMerge "Follow up on building tests for both platforms"
Dmitriy Ivanov [Tue, 22 Apr 2014 23:03:21 +0000 (23:03 +0000)]
Merge "Follow up on building tests for both platforms"

10 years agoMerge "LP64 shouldn't include the non-standard <time64.h> cruft."
Elliott Hughes [Tue, 22 Apr 2014 22:53:15 +0000 (22:53 +0000)]
Merge "LP64 shouldn't include the non-standard <time64.h> cruft."

10 years agoFollow up on building tests for both platforms
Dmitriy Ivanov [Tue, 22 Apr 2014 22:22:25 +0000 (15:22 -0700)]
Follow up on building tests for both platforms

this makes run-on-host work properly

Change-Id: Iaed93ca9d96359b64bbeff995280ecd70fc9cc60

10 years agoLP64 shouldn't include the non-standard <time64.h> cruft.
Elliott Hughes [Tue, 22 Apr 2014 20:55:58 +0000 (13:55 -0700)]
LP64 shouldn't include the non-standard <time64.h> cruft.

This patch includes just enough to keep external/chromium_org building
until they switch 64-bit Android over to using the regular non-Android code.

Change-Id: Iecaf274efa46ae18a42d5e3439c5aa4f909177c1

10 years agoMerge "Build 32/64 bit versions of tests/benchmarks."
Christopher Ferris [Tue, 22 Apr 2014 20:45:01 +0000 (20:45 +0000)]
Merge "Build 32/64 bit versions of tests/benchmarks."

10 years agoMerge "Use -fvisibility=hidden to build libc_gdtoa."
Elliott Hughes [Tue, 22 Apr 2014 20:42:36 +0000 (20:42 +0000)]
Merge "Use -fvisibility=hidden to build libc_gdtoa."

10 years agoUse -fvisibility=hidden to build libc_gdtoa.
Elliott Hughes [Tue, 22 Apr 2014 19:32:49 +0000 (12:32 -0700)]
Use -fvisibility=hidden to build libc_gdtoa.

Bug: 12177745
Change-Id: Ia4ac71e1a3a237e764c809cc591622f8952ed642

10 years agoBuild 32/64 bit versions of tests/benchmarks.
Christopher Ferris [Tue, 22 Apr 2014 17:42:12 +0000 (10:42 -0700)]
Build 32/64 bit versions of tests/benchmarks.

Change-Id: I4d146377aac6573a214dfaa5cab5cce8b10538b4

10 years agoMerge "Fix WCHAR_MAX, WCHAR_MIN, WINT_MAX, and WINT_MIN."
Elliott Hughes [Tue, 22 Apr 2014 17:00:33 +0000 (17:00 +0000)]
Merge "Fix WCHAR_MAX, WCHAR_MIN, WINT_MAX, and WINT_MIN."

10 years agoMerge "Fix arm64/x86 build."
Torne (Richard Coles) [Tue, 22 Apr 2014 11:01:22 +0000 (11:01 +0000)]
Merge "Fix arm64/x86 build."

10 years agoFix arm64/x86 build.
Torne (Richard Coles) [Tue, 22 Apr 2014 10:59:26 +0000 (11:59 +0100)]
Fix arm64/x86 build.

Add missing second param to soinfo_link_image in a section that's not
compiled on ARM.

Bug: 13005501
Change-Id: Id0ede8e03da4e05b25c0aeb24a840f868031d4e8

10 years agoMerge "Allow sharing the RELRO section via a file."
Torne (Richard Coles) [Tue, 22 Apr 2014 10:39:49 +0000 (10:39 +0000)]
Merge "Allow sharing the RELRO section via a file."

10 years agoMerge "Support loading libraries to a reserved address."
Torne (Richard Coles) [Tue, 22 Apr 2014 10:33:33 +0000 (10:33 +0000)]
Merge "Support loading libraries to a reserved address."

10 years agoMerge "Add android_dlopen_ext() interface to linker."
Torne (Richard Coles) [Tue, 22 Apr 2014 10:33:06 +0000 (10:33 +0000)]
Merge "Add android_dlopen_ext() interface to linker."

10 years agoFix WCHAR_MAX, WCHAR_MIN, WINT_MAX, and WINT_MIN.
Elliott Hughes [Tue, 22 Apr 2014 01:09:46 +0000 (18:09 -0700)]
Fix WCHAR_MAX, WCHAR_MIN, WINT_MAX, and WINT_MIN.

GCC tells us everything we need to know. clang does its usual half-assed job.

Change-Id: Id4d664529b10345274602768cd564d3df717e931

10 years agoMerge "Clean up and document our hacks for building BSD source."
Elliott Hughes [Tue, 22 Apr 2014 00:34:01 +0000 (00:34 +0000)]
Merge "Clean up and document our hacks for building BSD source."

10 years agoClean up and document our hacks for building BSD source.
Elliott Hughes [Tue, 22 Apr 2014 00:13:46 +0000 (17:13 -0700)]
Clean up and document our hacks for building BSD source.

Change-Id: Ic591e22fa5b363bb68376b9f25814c0e5bd83fbf

10 years agoMerge "clang is >= 3.4 now; remove a hack."
Elliott Hughes [Mon, 21 Apr 2014 18:26:22 +0000 (18:26 +0000)]
Merge "clang is >= 3.4 now; remove a hack."

10 years agoMerge "Remove unused #defines from "arith.h"."
Elliott Hughes [Mon, 21 Apr 2014 18:17:45 +0000 (18:17 +0000)]
Merge "Remove unused #defines from "arith.h"."

10 years agoclang is >= 3.4 now; remove a hack.
Elliott Hughes [Mon, 21 Apr 2014 17:15:14 +0000 (10:15 -0700)]
clang is >= 3.4 now; remove a hack.

Change-Id: I8d976ee0fd88eca9779c87b5d7e27f46b4b1b489

10 years agoRemove unused #defines from "arith.h".
Elliott Hughes [Mon, 21 Apr 2014 16:59:00 +0000 (09:59 -0700)]
Remove unused #defines from "arith.h".

These were defined in upstream's per-arch files, so I carried them across,
but they aren't actually used anywhere.

Change-Id: Ica9796201dcd2caa5c34070c0dd226fc2050ba47

10 years agoMerge "Make libc signal handler output more like debuggerd."
Elliott Hughes [Sat, 19 Apr 2014 02:02:04 +0000 (02:02 +0000)]
Merge "Make libc signal handler output more like debuggerd."

10 years agoMerge "Fix for libgcc compat generation script."
Dmitriy Ivanov [Sat, 19 Apr 2014 01:12:58 +0000 (01:12 +0000)]
Merge "Fix for libgcc compat generation script."

10 years agoMake libc signal handler output more like debuggerd.
Elliott Hughes [Sat, 19 Apr 2014 00:39:25 +0000 (17:39 -0700)]
Make libc signal handler output more like debuggerd.

This has been annoying me for a while, because it's often quite misleading.

Today, for example, I saw:

  Fatal signal 13 (SIGPIPE) at 0x6573 (code=0), thread 25971 (top)

where the apparent address is actually the pid of the signal source (in this
case the kernel on behalf of the thread itself).

This patch isn't as fancy as strace, but it at least means we never say
anything misleading. We could decode the si_code field like strace and
debuggerd, but I'm reluctant to do that without some way to share the code
between at least bionic and debuggerd.

Examples after:

  Fatal signal 13 (SIGPIPE), code 0 in tid 9157 (top)
  Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 9142 (crasher64)
  Fatal signal 6 (SIGABRT), code -6 in tid 9132 (crasher64)

(Note that the code still shows as 0 for SIGPIPE in the signal handler itself
but as -6 (SI_TKILL) in debuggerd; this is actually correct --- debuggerd is
showing the re-raised signal sent at the end of the signal handler that
initially showed the correct code 0.)

Change-Id: I71cad4ab61f422a4f6687a60ac770371790278e0

10 years agoFix for libgcc compat generation script.
Dmitriy Ivanov [Fri, 18 Apr 2014 23:03:03 +0000 (16:03 -0700)]
Fix for libgcc compat generation script.

  Taking into account possibility that external symbol
  could have been an OBJECT instead of function.

  b/14090368

Change-Id: Iac173d2dd1309ed53024306578137c26b1dbbf15

10 years agoMerge "Temporarily disable text relocation warnings for x86 libraries"
Elliott Hughes [Fri, 18 Apr 2014 23:02:27 +0000 (23:02 +0000)]
Merge "Temporarily disable text relocation warnings for x86 libraries"

10 years agoTemporarily disable text relocation warnings for x86 libraries
Du Chenyang [Fri, 18 Apr 2014 11:17:40 +0000 (19:17 +0800)]
Temporarily disable text relocation warnings for x86 libraries

Too many such warnings will cause CTS failed. This issue still exists
in some x86 version libraries: libdvm.so/libart.so.

$scanelf -qT out/target/product/generic_x86/system/lib/libdvm.so
  libdvm.so: (memory/data?) [0x2BAC7] in (optimized out: previous dvmAsmInstructionStartCode) [0x2B2F8]
  libdvm.so: (memory/data?) [0x2BB98] in (optimized out: previous dvmAsmInstructionStartCode) [0x2B2F8]
  libdvm.so: (memory/data?) [0x2EB28] in (optimized out: previous dvmAsmInstructionStartCode) [0x2B2F8]
  libdvm.so: (memory/data?) [0x2EF87] in (optimized out: previous dvmAsmInstructionEndCode) [0x2EF63]
  libdvm.so: (memory/data?) [0x2EFAF] in (optimized out: previous dvmAsmInstructionEndCode) [0x2EF63]
  libdvm.so: (memory/data?) [0x2EFD7] in (optimized out: previous dvmAsmInstructionEndCode) [0x2EF63]
  libdvm.so: (memory/data?) [0x2EFFF] in (optimized out: previous dvmAsmInstructionEndCode) [0x2EF63]
  libdvm.so: (memory/data?) [0x2F027] in (optimized out: previous dvmAsmInstructionEndCode) [0x2EF63]

Bug: https://code.google.com/p/android/issues/detail?id=68431
Change-Id: I11ecac282f1163e49a82156fce2a76cc2d619960

10 years agoMerge "Make uselocale(3) claim its pthread key in an ELF constructor."
Elliott Hughes [Fri, 18 Apr 2014 22:27:20 +0000 (22:27 +0000)]
Merge "Make uselocale(3) claim its pthread key in an ELF constructor."

10 years agoMerge "Switch to upstream OpenBSD fread/fvwrite."
Elliott Hughes [Fri, 18 Apr 2014 22:15:02 +0000 (22:15 +0000)]
Merge "Switch to upstream OpenBSD fread/fvwrite."

10 years agoMerge "Brings LC_* defs into line with POSIX"
Dan Albert [Fri, 18 Apr 2014 21:49:24 +0000 (21:49 +0000)]
Merge "Brings LC_* defs into line with POSIX"

10 years agoBrings LC_* defs into line with POSIX
Dan Albert [Fri, 18 Apr 2014 19:36:06 +0000 (12:36 -0700)]
Brings LC_* defs into line with POSIX

POSIX requires that LC_* constants be defined as macros, and libc++ is testing
for this. Source: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/locale.h.html

Change-Id: Id0653e54d74f12179ef88cadf7b5d6ba1bae3cdb

10 years agoMerge "Fix a wchar.wcstombs_wcrtombs test failure."
Elliott Hughes [Fri, 18 Apr 2014 21:44:26 +0000 (21:44 +0000)]
Merge "Fix a wchar.wcstombs_wcrtombs test failure."

10 years agoMake uselocale(3) claim its pthread key in an ELF constructor.
Elliott Hughes [Fri, 18 Apr 2014 20:34:26 +0000 (13:34 -0700)]
Make uselocale(3) claim its pthread key in an ELF constructor.

pthread_once is nice for decoupling, but it makes resource availability less
predictable, which is a bad thing.

This fixes a test failure if uselocale(3) is called before
pthread.pthread_key_create_lots runs.

Change-Id: Ie2634f986a50e7965582d4bd6e5aaf48cf0d55c8

10 years agoFix a wchar.wcstombs_wcrtombs test failure.
Elliott Hughes [Fri, 18 Apr 2014 20:32:33 +0000 (13:32 -0700)]
Fix a wchar.wcstombs_wcrtombs test failure.

Looks like I screwed up a last-minute refactor and didn't re-run the tests.

Change-Id: I90a710ae66a313a9812859650aa0b4e8c6bc57f9

10 years agoSwitch to upstream OpenBSD fread/fvwrite.
Elliott Hughes [Fri, 18 Apr 2014 20:13:04 +0000 (13:13 -0700)]
Switch to upstream OpenBSD fread/fvwrite.

Change-Id: I3dc11083693bc8d99edc0cbcc6f70dc9e5dc6565

10 years agoMerge "Upgrade to current vfprintf."
Elliott Hughes [Fri, 18 Apr 2014 18:19:23 +0000 (18:19 +0000)]
Merge "Upgrade to current vfprintf."

10 years agoMerge "Upgrade our <ctype.h> implementation to OpenBSD head."
Elliott Hughes [Fri, 18 Apr 2014 17:56:38 +0000 (17:56 +0000)]
Merge "Upgrade our <ctype.h> implementation to OpenBSD head."

10 years agoUpgrade our <ctype.h> implementation to OpenBSD head.
Elliott Hughes [Fri, 18 Apr 2014 17:29:16 +0000 (10:29 -0700)]
Upgrade our <ctype.h> implementation to OpenBSD head.

Adding the perfunctory <ctype.h> tests showed that we'd accidentally
dropped several symbols. This puts everything back in its proper place
and switches us to upstream head at the same time.

Change-Id: Ib527ad280c9baded81e667fa598698526d93e66f

10 years agoMerge "Changes our ctype identifiers to match the BSDs"
Dan Albert [Fri, 18 Apr 2014 15:52:59 +0000 (15:52 +0000)]
Merge "Changes our ctype identifiers to match the BSDs"

10 years agoChanges our ctype identifiers to match the BSDs
Dan Albert [Tue, 15 Apr 2014 22:44:02 +0000 (15:44 -0700)]
Changes our ctype identifiers to match the BSDs

This is to make it possible to adopt the BSDs' implementations for a few locale
APIs in libc++ rather than writing our own, nearly identical, code.

Change-Id: I482acd4ece83aa4ec9eb0c7acf48f3686794bcc3

10 years agoUpgrade to current vfprintf.
Elliott Hughes [Fri, 18 Apr 2014 00:30:03 +0000 (17:30 -0700)]
Upgrade to current vfprintf.

This gets us various bug fixes and missing C99 functionality.

Bug: https://code.google.com/p/android/issues/detail?id=64886
Change-Id: Ie9f8ac569e9b5eec1e4a1faacfe2c21662eaf895

10 years agoAllow sharing the RELRO section via a file.
Torne (Richard Coles) [Thu, 27 Feb 2014 13:18:00 +0000 (13:18 +0000)]
Allow sharing the RELRO section via a file.

Add flags and a file descriptor to android_dlopen_ext() to allow writing
the RELRO section of the loaded library to a file after relocation
processing, and to allow mapping identical pages from the file over the
top of relocated memory in another process. Explicitly comparing the
pages is required in case a page contains a reference to a symbol
defined in another library loaded at a random base address.

Bug: 13005501
Change-Id: Ibb5b2d384edfaa5acf3e97a5f8b6115c10497a1e

10 years agoSupport loading libraries to a reserved address.
Torne (Richard Coles) [Thu, 6 Feb 2014 14:34:21 +0000 (14:34 +0000)]
Support loading libraries to a reserved address.

Add flags and parameters to android_dlopen_ext() to allow loading a
library at an already-reserved fixed address. If the library to be
loaded will not fit within the space reserved, then the linker will
either fail, or allocate its own address space as usual, according to
which flag has been specified. This behaviour only applies to the
specific library requested; any other libraries loaded as dependencies
will be loaded in the normal fashion.

There is a new gtest included to cover the functionality added.

Bug: 13005501
Change-Id: I5d1810375b20fc51ba6a9b3191a25f9792c687f1

10 years agoAdd android_dlopen_ext() interface to linker.
Torne (Richard Coles) [Thu, 6 Feb 2014 14:34:21 +0000 (14:34 +0000)]
Add android_dlopen_ext() interface to linker.

Add a function "android_dlopen_ext()", defined in <android/dlext.h>.
This is an extended version of dlopen() which takes a struct for passing
additional parameters for Android-specific functionality. This will be
used to support RELRO section sharing between separate processes.

Bug: 13005501
Change-Id: I9c99b2f2a02ee329dedaeba09ef3a1113b17b2d6

10 years agoMerge "Regenerate the NOTICE files."
Elliott Hughes [Thu, 17 Apr 2014 00:16:51 +0000 (00:16 +0000)]
Merge "Regenerate the NOTICE files."

10 years agoRegenerate the NOTICE files.
Elliott Hughes [Thu, 17 Apr 2014 00:01:12 +0000 (17:01 -0700)]
Regenerate the NOTICE files.

Change-Id: Iac666f69b930e31bbeac3438812d544c6af55b0f

10 years agoMerge "Switch fpclassify over to ieee_ext."
Elliott Hughes [Wed, 16 Apr 2014 23:57:06 +0000 (23:57 +0000)]
Merge "Switch fpclassify over to ieee_ext."

10 years agoMerge "Clean up <machine/ieee.h>."
Elliott Hughes [Wed, 16 Apr 2014 23:56:40 +0000 (23:56 +0000)]
Merge "Clean up <machine/ieee.h>."

10 years agoSwitch fpclassify over to ieee_ext.
Elliott Hughes [Wed, 16 Apr 2014 23:45:59 +0000 (16:45 -0700)]
Switch fpclassify over to ieee_ext.

Change-Id: I441bb7f715da24e1c04b0386ad9dcde0ea8c797c

10 years agoClean up <machine/ieee.h>.
Elliott Hughes [Wed, 16 Apr 2014 23:31:17 +0000 (16:31 -0700)]
Clean up <machine/ieee.h>.

The upstream intention was for this to be architecture-dependent, but it's a
lot clearer if we just have one copy.

Change-Id: I4e8310496145f9f411cd2e847c8cd023b1d758e9

10 years agoMerge "Use FLT_ROUNDS in LP64 strtold."
Elliott Hughes [Wed, 16 Apr 2014 23:26:31 +0000 (23:26 +0000)]
Merge "Use FLT_ROUNDS in LP64 strtold."

10 years agoUse FLT_ROUNDS in LP64 strtold.
Elliott Hughes [Wed, 16 Apr 2014 23:09:41 +0000 (16:09 -0700)]
Use FLT_ROUNDS in LP64 strtold.

Change-Id: I75323be6e1cadb00770fcdd08422836b03737416

10 years agoMerge "Switch to gdtoa."
Elliott Hughes [Wed, 16 Apr 2014 23:02:08 +0000 (23:02 +0000)]
Merge "Switch to gdtoa."

10 years agoSwitch to gdtoa.
Elliott Hughes [Fri, 11 Apr 2014 00:48:14 +0000 (17:48 -0700)]
Switch to gdtoa.

This gives us a real strtold for LP64 and fixes various LP64
bugs.

Bug: 13563801
Change-Id: I277858d718ee746e136b6b6308a495ba50dfa488

10 years agoMerge "Fix signed vs unsigned comparison."
Ben Cheng [Tue, 15 Apr 2014 22:37:28 +0000 (22:37 +0000)]
Merge "Fix signed vs unsigned comparison."

10 years agoFix signed vs unsigned comparison.
Ben Cheng [Tue, 15 Apr 2014 22:29:32 +0000 (15:29 -0700)]
Fix signed vs unsigned comparison.

Otherwise GCC 4.9 complains.

Change-Id: I7cd3c5e8c78fda709130ca88a85fa1512e6fc024

10 years agoMerge "Add iswblank for libcxx."
Elliott Hughes [Tue, 15 Apr 2014 19:19:48 +0000 (19:19 +0000)]
Merge "Add iswblank for libcxx."

10 years agoAdd iswblank for libcxx.
Elliott Hughes [Tue, 15 Apr 2014 19:04:05 +0000 (12:04 -0700)]
Add iswblank for libcxx.

We have similar degenerate implementations for all the other isw* functions,
so it's weird to exclude just one.

Change-Id: I659b97930e68598826c4882bb59f4146870fb6a0

10 years agoMerge "Fix arm64 floating point definitions."
Elliott Hughes [Mon, 14 Apr 2014 22:45:56 +0000 (22:45 +0000)]
Merge "Fix arm64 floating point definitions."

10 years agoFix arm64 floating point definitions.
Elliott Hughes [Mon, 14 Apr 2014 22:33:32 +0000 (15:33 -0700)]
Fix arm64 floating point definitions.

Change-Id: I6836da8fc9f66465435a21c51cb18851e20e9645

10 years agoMerge "Reimplement isinf/isnan/fpclassify."
Elliott Hughes [Mon, 14 Apr 2014 21:36:26 +0000 (21:36 +0000)]
Merge "Reimplement isinf/isnan/fpclassify."

10 years agoReimplement isinf/isnan/fpclassify.
Elliott Hughes [Sat, 12 Apr 2014 00:02:20 +0000 (17:02 -0700)]
Reimplement isinf/isnan/fpclassify.

Also move isinf and isnan into libc like everyone else.

Also move fpclassify to libc like the BSDs (but unlike glibc). We need
this to be able to upgrade our float/double/long double parsing to gdtoa.

Also add some missing aliases. We now have all of:

  isnan, __isnan, isnanf, __isnanf, isnanl, __isnanl,
  isinf, __isinf, isinff, __isinff, isinfl, __isinfl,
  __fpclassify, __fpclassifyd, __fpclassifyf, __fpclassifyl.

Bug: 13469877
Change-Id: I407ffbac06c765a6c5fffda8106c37d7db04f27d

10 years agoMerge "Extra tests for printf of NaN and Inf."
Elliott Hughes [Mon, 14 Apr 2014 21:07:24 +0000 (21:07 +0000)]
Merge "Extra tests for printf of NaN and Inf."