summaryrefslogtreecommitdiffstats
path: root/libcxx/include
diff options
context:
space:
mode:
authorVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>2015-11-24 10:24:54 +0000
committerVasileios Kalintiris <Vasileios.Kalintiris@imgtec.com>2015-11-24 10:24:54 +0000
commit08010b5a0ccec0f726be0d1ccb98060893bd19a5 (patch)
tree225f225979f5d1bb3c644cedcf0a1c43d653d4ca /libcxx/include
parente3336c0be651746e351759d533ca0de179a84464 (diff)
downloadbcm5719-llvm-08010b5a0ccec0f726be0d1ccb98060893bd19a5.tar.gz
bcm5719-llvm-08010b5a0ccec0f726be0d1ccb98060893bd19a5.zip
Use libcxx's default rune table with the Musl C library.
Summary: Also, there are no exported character type tables from Musl so we have to Fallback to the standard functions. This reduces the number of libcxx's test-suite failures down to ~130 for MIPS. Most of the remaining failures come from the atomics (due to the lack of 8-byte atomic-ops in MIPS32) and thread tests. Reviewers: mclow.lists, EricWF, dalias, jroelofs Subscribers: tberghammer, danalbert, srhines, cfe-commits Differential Revision: http://reviews.llvm.org/D14926 llvm-svn: 253972
Diffstat (limited to 'libcxx/include')
-rw-r--r--libcxx/include/__config2
-rw-r--r--libcxx/include/__locale8
2 files changed, 3 insertions, 7 deletions
diff --git a/libcxx/include/__config b/libcxx/include/__config
index 795e0845cec..211b5e9ff5a 100644
--- a/libcxx/include/__config
+++ b/libcxx/include/__config
@@ -804,7 +804,7 @@ extern "C" void __sanitizer_annotate_contiguous_container(
#define _LIBCPP_HAS_NO_STDOUT
#endif
-#if defined(__ANDROID__) || defined(__CloudABI__)
+#if defined(__ANDROID__) || defined(__CloudABI__) || defined(_LIBCPP_HAS_MUSL_LIBC)
#define _LIBCPP_PROVIDES_DEFAULT_RUNE_TABLE
#endif
diff --git a/libcxx/include/__locale b/libcxx/include/__locale
index e525053ca3f..7bc701dda6e 100644
--- a/libcxx/include/__locale
+++ b/libcxx/include/__locale
@@ -361,7 +361,7 @@ public:
typedef __uint32_t mask;
# elif defined(__FreeBSD__)
typedef unsigned long mask;
-# elif defined(__EMSCRIPTEN__) || defined(__NetBSD__) || defined(_LIBCPP_HAS_MUSL_LIBC)
+# elif defined(__EMSCRIPTEN__) || defined(__NetBSD__)
typedef unsigned short mask;
# endif
static const mask space = _CTYPE_S;
@@ -408,11 +408,7 @@ public:
# define _LIBCPP_CTYPE_MASK_IS_COMPOSITE_ALPHA
# define _LIBCPP_CTYPE_MASK_IS_COMPOSITE_XDIGIT
#else
-#if defined(_LIBCPP_HAS_MUSL_LIBC)
- typedef unsigned short mask;
-#else
typedef unsigned long mask;
-#endif
static const mask space = 1<<0;
static const mask print = 1<<1;
static const mask cntrl = 1<<2;
@@ -634,7 +630,7 @@ public:
#endif
_LIBCPP_ALWAYS_INLINE const mask* table() const _NOEXCEPT {return __tab_;}
static const mask* classic_table() _NOEXCEPT;
-#if defined(__GLIBC__) || defined(__EMSCRIPTEN__) || defined(_LIBCPP_HAS_MUSL_LIBC)
+#if defined(__GLIBC__) || defined(__EMSCRIPTEN__)
static const int* __classic_upper_table() _NOEXCEPT;
static const int* __classic_lower_table() _NOEXCEPT;
#endif
OpenPOWER on IntegriCloud