Commit Graph

7667 Commits

Author SHA1 Message Date
Elliott Hughes
efaa461bd6 Use the OpenBSD wcsftime.
Change-Id: I81929355d245ba1e58b4a464ca6cf45915e0238e
2014-05-02 15:57:50 -07:00
Calin Juravle
9287223674 Add include guard to fileext.h
Change-Id: I89b0e3bf0b15989727b5903b40bec92d49e122d9
2014-05-02 17:34:58 +01:00
Torne (Richard Coles)
26ec9679ff Handle empty relro segment or incorrectly sized file.
If the file has no relro segment, the generated relro file will have
length 0, which caused mmap to fail. If the relro file has nonzero size,
but is too short (e.g. because it's for the wrong version of the
library), the linker would segfault while comparing the data. Fix both
these issues: don't try to map a zero length file, and don't try to
compare data that would be beyond the end of the file.

Improve test to explicitly generate two versions of the library: one
with -z relro, and one with -z norelro, so we can test both cases; also
explicitly test the case where the relro file has length 0.

Bug: 14299541
Change-Id: Id8b95585edda90e8bb5de452a35b70ed2d224934
2014-05-02 14:25:45 +01:00
Elliott Hughes
fb49002b41 am 790890fd: Merge "Fix wchar_t signedness problems found on x86-64."
* commit '790890fd5c896a098142e0783b10fa8246462249':
  Fix wchar_t signedness problems found on x86-64.
2014-05-02 02:33:19 +00:00
Elliott Hughes
790890fd5c Merge "Fix wchar_t signedness problems found on x86-64." 2014-05-02 02:31:23 +00:00
Elliott Hughes
0d0ccfe2ce Fix wchar_t signedness problems found on x86-64.
The existing tests caught this.

Change-Id: I6269844ae4301fd2c596241a59e97eb67ef166fa
2014-05-01 19:03:18 -07:00
Elliott Hughes
156f77c3a0 am 296f17af: Merge "Fix wchar.cpp MIPS narrowing conversion build failure."
* commit '296f17af0a630550f980dab85363093e4be55eb0':
  Fix wchar.cpp MIPS narrowing conversion build failure.
2014-05-02 00:17:45 +00:00
Elliott Hughes
296f17af0a Merge "Fix wchar.cpp MIPS narrowing conversion build failure." 2014-05-02 00:15:42 +00:00
Elliott Hughes
f83e644e2c Fix wchar.cpp MIPS narrowing conversion build failure.
Change-Id: Id9103c78958d60337dbdb807b11256c1b31c632a
2014-05-01 17:14:59 -07:00
Elliott Hughes
ba8c37f187 am 7da31910: Merge "Fix wchar.cpp signed/unsigned comparison build failure."
* commit '7da319106906ad236a0b4502cbafdd8dff7b8a39':
  Fix wchar.cpp signed/unsigned comparison build failure.
2014-05-01 23:56:03 +00:00
Elliott Hughes
7da3191069 Merge "Fix wchar.cpp signed/unsigned comparison build failure." 2014-05-01 23:50:35 +00:00
Elliott Hughes
568c86a489 Fix wchar.cpp signed/unsigned comparison build failure.
Change-Id: Id20b91f3d57c4430987b5cc88ac99c245801d73b
2014-05-01 16:49:55 -07:00
Elliott Hughes
745b023b4d am f0291ca6: Merge "Switch to a working UTF-8 mb/wc implementation."
* commit 'f0291ca6b7d0ef42a31ae76a18a99c81d6e6d345':
  Switch to a working UTF-8 mb/wc implementation.
2014-05-01 23:15:32 +00:00
Elliott Hughes
f0291ca6b7 Merge "Switch to a working UTF-8 mb/wc implementation." 2014-05-01 23:12:41 +00:00
Elliott Hughes
5a0aa3dee2 Switch to a working UTF-8 mb/wc implementation.
Although glibc gets by with an 8-byte mbstate_t, OpenBSD uses 12 bytes (of
the 128 bytes it reserves!).

We can actually implement UTF-8 encoding/decoding with a 0-byte mbstate_t
which means we can make things work on LP32 too, as long as we accept the
limitation that the caller needs to present us with a complete sequence
before we'll process it.

Our behavior is fine when going from characters to bytes; we just
update the source wchar_t** to say how far through the input we got.

I'll come back and use the 4 bytes we do have to cope with byte sequences
split across multiple input buffers. The fact that we don't support
UTF-8 sequences longer than 4 bytes plus the fact that the first byte of
a UTF-8 sequence encodes the length means we shouldn't need the other
fields OpenBSD used (at the cost of some recomputation in cases where a
sequence is split across buffers).

This patch also makes the minimal changes necessary to setlocale(3) to
make us behave like glibc when an app requests UTF-8. (The difference
being that our "C" locale is the same as our "C.UTF-8" locale.)

Change-Id: Ied327a8c4643744b3611bf6bb005a9b389ba4c2f
2014-05-01 14:46:54 -07:00
Christopher Ferris
97ded7f2bc am cb475651: Merge "Add ability to run on host for x86/x86_64."
* commit 'cb475651e3270175a5e6667952069f3ae7e7645a':
  Add ability to run on host for x86/x86_64.
2014-05-01 21:07:01 +00:00
Christopher Ferris
cb475651e3 Merge "Add ability to run on host for x86/x86_64." 2014-05-01 21:03:27 +00:00
Christopher Ferris
3347a79664 Add ability to run on host for x86/x86_64.
Change-Id: I063cb71ce0f7247cefacaa653c7b87b7b3e72025
2014-05-01 13:44:57 -07:00
Christopher Ferris
24f724c446 am de54b90e: Merge "Modify hard-coded directory."
* commit 'de54b90ed573fdea390f8a06618374adbb32f18a':
  Modify hard-coded directory.
2014-05-01 20:22:29 +00:00
Christopher Ferris
de54b90ed5 Merge "Modify hard-coded directory." 2014-05-01 20:19:20 +00:00
Christopher Ferris
8b1ade5c0b Modify hard-coded directory.
Use the ANDROID_DATA environment variable instead of the hard-coded
directory for these benchmarks.

Change-Id: I00bae7b4a24e81e77fc8f52e1fe99f4d4918f520
2014-05-01 13:10:48 -07:00
Elliott Hughes
d262350166 am 8979cfe1: Merge "Keep the kernel header scrubber\'s data structures in sync."
* commit '8979cfe14b619743dba0625a62abd2e2834434dc':
  Keep the kernel header scrubber's data structures in sync.
2014-05-01 17:29:57 +00:00
Elliott Hughes
8979cfe14b Merge "Keep the kernel header scrubber's data structures in sync." 2014-05-01 17:28:12 +00:00
Elliott Hughes
fddbafdc0a Keep the kernel header scrubber's data structures in sync.
If you rewrite the tokens of a #if you need to rewrite the expression to match
because either might be used later. This was showing up as SIGRTMAX being
rewritten in a #define but not in the #ifndef that guarded it, for which case
I've added a unit test.

Change-Id: I6929675461a1afe272edd667594529fd84a3dc4d
2014-05-01 10:27:49 -07:00
Elliott Hughes
4a41581af5 am 9fb53dd4: Merge "Make SIGRTMIN hide the real-time signals we use internally."
* commit '9fb53dd4dbaa7633c234d9da8417827fa3d3c32f':
  Make SIGRTMIN hide the real-time signals we use internally.
2014-04-30 18:32:28 +00:00
Elliott Hughes
db9d60940b am 2ae3f60c: Merge "Fix the CPU_*_S tests."
* commit '2ae3f60ca37ce01beba748bb6ffd02401a543721':
  Fix the CPU_*_S tests.
2014-04-30 18:32:28 +00:00
Elliott Hughes
9fb53dd4db Merge "Make SIGRTMIN hide the real-time signals we use internally." 2014-04-30 18:30:15 +00:00
Elliott Hughes
2ae3f60ca3 Merge "Fix the CPU_*_S tests." 2014-04-30 18:29:31 +00:00
Elliott Hughes
2d36750c3a Fix the CPU_*_S tests.
Change-Id: Id67c48b9c12a20b01309490670438bfcd9163465
2014-04-30 10:45:35 -07:00
Elliott Hughes
0990d4fda8 Make SIGRTMIN hide the real-time signals we use internally.
__SIGRTMIN will continue to tell the truth. This matches glibc's
behavior (as evidenced by the fact that we don't need a special case
in the strsignal test now).

Change-Id: I1abe1681d516577afa8cd39c837ef12467f68dd2
2014-04-30 10:06:09 -07:00
Calin Juravle
b55562dd89 am 77473e40: Merge "Fix cpu_set_t"
* commit '77473e408504a7e298816b4071cd6902065b03d8':
  Fix cpu_set_t
2014-04-30 16:10:57 +00:00
Calin Juravle
77473e4085 Merge "Fix cpu_set_t" 2014-04-30 16:09:08 +00:00
Dan Albert
a51f7153ea am 45667317: Merge "Adds quick_exit(3) and at_quick_exit(3) from freebsd"
* commit '4566731772f3121c7c9b47bb6de44d5a9123fc11':
  Adds quick_exit(3) and at_quick_exit(3) from freebsd
2014-04-30 15:42:45 +00:00
Dan Albert
4566731772 Merge "Adds quick_exit(3) and at_quick_exit(3) from freebsd" 2014-04-30 15:39:14 +00:00
Calin Juravle
fb15c73f3c am d4ae59dc: Merge "Reserve space in mbstate to allow for proper wchar support"
* commit 'd4ae59dcf228cf602189c6d5e69fb65640b353e3':
  Reserve space in mbstate to allow for proper wchar support
2014-04-30 15:12:52 +00:00
Elliott Hughes
ff7dec44bd am 01933d92: Merge "Switch to OpenBSD stdio wide printf functions."
* commit '01933d921e9e2a36707dbb96dfc24073e8489912':
  Switch to OpenBSD stdio wide printf functions.
2014-04-30 15:12:45 +00:00
Calin Juravle
b743790cca Fix cpu_set_t
- extend CPU_SETSIZE for LP64
- fix CPU_(AND|OR|XOR) macros
- fix CPU_OP_S macro
- fix __sched_cpucount
- tidy up the code

Change-Id: I741afff4d0c473e8a1ee6b4141981dc24467e0d4
2014-04-30 14:30:15 +01:00
Calin Juravle
d4ae59dcf2 Merge "Reserve space in mbstate to allow for proper wchar support" 2014-04-30 10:34:09 +00:00
Elliott Hughes
01933d921e Merge "Switch to OpenBSD stdio wide printf functions." 2014-04-30 03:16:40 +00:00
Dan Albert
b8425c549a Adds quick_exit(3) and at_quick_exit(3) from freebsd
Change-Id: I4fe88abd8f7b8aa45e58aeb2529d59a8d555d338
2014-04-29 19:17:00 -07:00
Elliott Hughes
608aa733a9 am 85e780d0: Merge "Switch to OpenBSD stdio wide get/put functions."
* commit '85e780d0557643a81c4a33b3bc5d3806ef9d78e3':
  Switch to OpenBSD stdio wide get/put functions.
2014-04-30 00:41:01 +00:00
Elliott Hughes
94336d8ecf Switch to OpenBSD stdio wide printf functions.
Change-Id: Icf4f8685d021ec6b7482ca1cc021ce8184098e4a
2014-04-29 17:39:29 -07:00
Elliott Hughes
85e780d055 Merge "Switch to OpenBSD stdio wide get/put functions." 2014-04-30 00:38:32 +00:00
Elliott Hughes
c932225e10 Switch to OpenBSD stdio wide get/put functions.
Change-Id: I71f8769cdea874e55d397ca7682d9d4e659d3dcb
2014-04-29 17:08:03 -07:00
Elliott Hughes
25009c3b02 am c19c8e6f: Merge "Switch to the OpenBSD implementations of the wide scanf functions."
* commit 'c19c8e6f7125984d04c9e4e05ac130b43d1cd13c':
  Switch to the OpenBSD implementations of the wide scanf functions.
2014-04-30 00:00:03 +00:00
Elliott Hughes
c19c8e6f71 Merge "Switch to the OpenBSD implementations of the wide scanf functions." 2014-04-29 23:57:11 +00:00
Elliott Hughes
01ae00f317 Switch to the OpenBSD implementations of the wide scanf functions.
This also gets us the C99 wcstoimax and wcstoumax, and a working fgetwc and
ungetwc, all of which are needed in the implementation.

This also brings several other files closer to upstream.

Change-Id: I23b025a8237a6dbb9aa50d2a96765ea729a85579
2014-04-29 16:28:56 -07:00
Elliott Hughes
42f33234b0 am c6e563c8: Merge "Fix build (signed char issue)."
* commit 'c6e563c87a7d8329607bccbc5c4a61c4e1180507':
  Fix build (signed char issue).
2014-04-29 23:08:57 +00:00
Elliott Hughes
c6e563c87a Merge "Fix build (signed char issue)." 2014-04-29 23:06:38 +00:00
Elliott Hughes
770491fb4f Fix build (signed char issue).
Change-Id: I05d78f4c1599ed9a0c1285f9eb1e89bc2f55c24d
2014-04-29 16:05:58 -07:00