Commit Graph

7945 Commits

Author SHA1 Message Date
Dan Albert
db68e56997 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
2014-04-18 21:48:57 +00:00
Elliott Hughes
cd79c8b158 Merge "Fix a wchar.wcstombs_wcrtombs test failure." 2014-04-18 21:44:26 +00:00
Elliott Hughes
cdbd17292e am 06b5431e: am b88da065: Merge "Upgrade to current vfprintf."
* commit '06b5431eaabec853a03013c9c8af1124aee0f4d4':
  Upgrade to current vfprintf.
2014-04-18 21:18:36 +00:00
Elliott Hughes
06b5431eaa am b88da065: Merge "Upgrade to current vfprintf."
* commit 'b88da06580a22d9a1ee5a1c573c49e89207bc71b':
  Upgrade to current vfprintf.
2014-04-18 21:15:28 +00:00
Elliott Hughes
2f68866f37 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
2014-04-18 13:34:26 -07:00
Elliott Hughes
1b836ee6f8 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
2014-04-18 13:32:33 -07:00
Elliott Hughes
9d3c2dd11f Switch to upstream OpenBSD fread/fvwrite.
Change-Id: I3dc11083693bc8d99edc0cbcc6f70dc9e5dc6565
2014-04-18 13:13:04 -07:00
Elliott Hughes
756952d6e9 am a984c3ad: am 9e94ea5c: Merge "Upgrade our <ctype.h> implementation to OpenBSD head."
* commit 'a984c3ad3b9f8fcc63cd17bbbea2978b93c16533':
  Upgrade our <ctype.h> implementation to OpenBSD head.
2014-04-18 19:08:35 +00:00
Elliott Hughes
a984c3ad3b am 9e94ea5c: Merge "Upgrade our <ctype.h> implementation to OpenBSD head."
* commit '9e94ea5c112a26af5cfc778983e4d5ca692947c0':
  Upgrade our <ctype.h> implementation to OpenBSD head.
2014-04-18 19:02:52 +00:00
Elliott Hughes
b88da06580 Merge "Upgrade to current vfprintf." 2014-04-18 18:19:23 +00:00
Elliott Hughes
9e94ea5c11 Merge "Upgrade our <ctype.h> implementation to OpenBSD head." 2014-04-18 17:56:38 +00:00
Elliott Hughes
f3c73901cb 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
2014-04-18 10:29:16 -07:00
Dan Albert
022984ff06 am 6c84b9d6: am 0e351e40: Merge "Changes our ctype identifiers to match the BSDs"
* commit '6c84b9d651e9eefab8b1a440979b15fb19404ffd':
  Changes our ctype identifiers to match the BSDs
2014-04-18 16:26:14 +00:00
Dan Albert
6c84b9d651 am 0e351e40: Merge "Changes our ctype identifiers to match the BSDs"
* commit '0e351e4011bc98cacc3e37292bfb0e86c3a3bb5b':
  Changes our ctype identifiers to match the BSDs
2014-04-18 16:01:54 +00:00
Dan Albert
0e351e4011 Merge "Changes our ctype identifiers to match the BSDs" 2014-04-18 15:52:59 +00:00
Dan Albert
779585fb26 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
2014-04-18 08:48:34 -07:00
Elliott Hughes
0549371bd7 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
2014-04-17 17:30:03 -07:00
Elliott Hughes
e2e41399fc am 48db3037: am 857b1796: Merge "Regenerate the NOTICE files."
* commit '48db3037714d460b112e67793ca8b0270a0cd6a4':
  Regenerate the NOTICE files.
2014-04-17 23:34:52 +00:00
Elliott Hughes
c87cb4fbb4 am c54c2a84: am 8da69a25: Merge "Switch fpclassify over to ieee_ext."
* commit 'c54c2a84cc70861e648932bd84e02163f845dcef':
  Switch fpclassify over to ieee_ext.
2014-04-17 23:34:51 +00:00
Elliott Hughes
6478ab8003 am 7fb450b8: am c480f57d: Merge "Clean up <machine/ieee.h>."
* commit '7fb450b8a4ab15729a28c239364de9240564fe90':
  Clean up <machine/ieee.h>.
2014-04-17 23:34:50 +00:00
Elliott Hughes
e21d198da6 am 31028f85: am 9ceae0c9: Merge "Use FLT_ROUNDS in LP64 strtold."
* commit '31028f852d7f65387bda433f230795b1add2b24f':
  Use FLT_ROUNDS in LP64 strtold.
2014-04-17 23:34:50 +00:00
Elliott Hughes
fb7b42df1b am bfd89274: am 4abaa576: Merge "Switch to gdtoa."
* commit 'bfd8927447b76bca6393c1e7c735a1333aa60786':
  Switch to gdtoa.
2014-04-17 23:34:44 +00:00
Elliott Hughes
48db303771 am 857b1796: Merge "Regenerate the NOTICE files."
* commit '857b1796738460f5f3cf16bb3c1e156e88171143':
  Regenerate the NOTICE files.
2014-04-17 23:21:58 +00:00
Elliott Hughes
c54c2a84cc am 8da69a25: Merge "Switch fpclassify over to ieee_ext."
* commit '8da69a25b7840db23846d4bb303ef84a1775c1e1':
  Switch fpclassify over to ieee_ext.
2014-04-17 23:21:58 +00:00
Elliott Hughes
7fb450b8a4 am c480f57d: Merge "Clean up <machine/ieee.h>."
* commit 'c480f57dd3b70c1e8aea013bc540b3a8e1cc40f6':
  Clean up <machine/ieee.h>.
2014-04-17 23:21:57 +00:00
Elliott Hughes
31028f852d am 9ceae0c9: Merge "Use FLT_ROUNDS in LP64 strtold."
* commit '9ceae0c9a62c8ffce1e3d9d79f494e692951cbc5':
  Use FLT_ROUNDS in LP64 strtold.
2014-04-17 23:21:57 +00:00
Elliott Hughes
bfd8927447 am 4abaa576: Merge "Switch to gdtoa."
* commit '4abaa576e86e4ceaa9a18271f306787294a1cdfc':
  Switch to gdtoa.
2014-04-17 23:21:56 +00:00
Torne (Richard Coles)
183ad9df53 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
2014-04-17 14:30:46 +01:00
Torne (Richard Coles)
12bbb91645 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
2014-04-17 14:22:17 +01:00
Torne (Richard Coles)
012cb4583a 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
2014-04-17 13:50:55 +01:00
Elliott Hughes
857b179673 Merge "Regenerate the NOTICE files." 2014-04-17 00:16:51 +00:00
Elliott Hughes
acbe322e82 Regenerate the NOTICE files.
Change-Id: Iac666f69b930e31bbeac3438812d544c6af55b0f
2014-04-16 17:01:12 -07:00
Elliott Hughes
8da69a25b7 Merge "Switch fpclassify over to ieee_ext." 2014-04-16 23:57:06 +00:00
Elliott Hughes
c480f57dd3 Merge "Clean up <machine/ieee.h>." 2014-04-16 23:56:40 +00:00
Elliott Hughes
f081e139fe Switch fpclassify over to ieee_ext.
Change-Id: I441bb7f715da24e1c04b0386ad9dcde0ea8c797c
2014-04-16 16:45:59 -07:00
Elliott Hughes
cb65cc3fb4 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
2014-04-16 16:31:17 -07:00
Elliott Hughes
9ceae0c9a6 Merge "Use FLT_ROUNDS in LP64 strtold." 2014-04-16 23:26:31 +00:00
Elliott Hughes
20828db758 Use FLT_ROUNDS in LP64 strtold.
Change-Id: I75323be6e1cadb00770fcdd08422836b03737416
2014-04-16 16:09:41 -07:00
Elliott Hughes
4abaa576e8 Merge "Switch to gdtoa." 2014-04-16 23:02:09 +00:00
Elliott Hughes
4bd97cee28 Switch to gdtoa.
This gives us a real strtold for LP64 and fixes various LP64
bugs.

Bug: 13563801
Change-Id: I277858d718ee746e136b6b6308a495ba50dfa488
2014-04-16 15:15:52 -07:00
Ben Cheng
d382df3bc2 am d7610ef7: am 26c2bb84: Merge "Fix signed vs unsigned comparison."
* commit 'd7610ef7e8d0a9f11c9990c9843031be21d2b447':
  Fix signed vs unsigned comparison.
2014-04-15 23:37:20 +00:00
Elliott Hughes
52f083925d am 930806a5: am 073ea101: Merge "Add iswblank for libcxx."
* commit '930806a51342ce98be4832cfb43ed5ccd88e6145':
  Add iswblank for libcxx.
2014-04-15 23:36:28 +00:00
Ben Cheng
d7610ef7e8 am 26c2bb84: Merge "Fix signed vs unsigned comparison."
* commit '26c2bb84dd5cbd9ab43a5f0ebc2635bc3b64be3d':
  Fix signed vs unsigned comparison.
2014-04-15 22:43:10 +00:00
Ben Cheng
26c2bb84dd Merge "Fix signed vs unsigned comparison." 2014-04-15 22:37:29 +00:00
Ben Cheng
b760164dd6 Fix signed vs unsigned comparison.
Otherwise GCC 4.9 complains.

Change-Id: I7cd3c5e8c78fda709130ca88a85fa1512e6fc024
2014-04-15 15:29:32 -07:00
Elliott Hughes
930806a513 am 073ea101: Merge "Add iswblank for libcxx."
* commit '073ea10156d62087a67a066527c92a1dbb92d650':
  Add iswblank for libcxx.
2014-04-15 19:26:42 +00:00
Elliott Hughes
073ea10156 Merge "Add iswblank for libcxx." 2014-04-15 19:19:48 +00:00
Elliott Hughes
40b0579127 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
2014-04-15 12:04:05 -07:00
Elliott Hughes
e2e9c630dc am 70ccd2bf: am a13c7fd3: Merge "Fix arm64 floating point definitions."
* commit '70ccd2bffff92d5277248c0a13962ad4477f5451':
  Fix arm64 floating point definitions.
2014-04-14 22:54:20 +00:00
Elliott Hughes
70ccd2bfff am a13c7fd3: Merge "Fix arm64 floating point definitions."
* commit 'a13c7fd3b34c1deb6592a75e79df9fe44dbf4d88':
  Fix arm64 floating point definitions.
2014-04-14 22:52:27 +00:00