diff options
| author | Vasileios Kalintiris <Vasileios.Kalintiris@imgtec.com> | 2015-11-24 10:24:54 +0000 |
|---|---|---|
| committer | Vasileios Kalintiris <Vasileios.Kalintiris@imgtec.com> | 2015-11-24 10:24:54 +0000 |
| commit | 08010b5a0ccec0f726be0d1ccb98060893bd19a5 (patch) | |
| tree | 225f225979f5d1bb3c644cedcf0a1c43d653d4ca /libcxx/include | |
| parent | e3336c0be651746e351759d533ca0de179a84464 (diff) | |
| download | bcm5719-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/__config | 2 | ||||
| -rw-r--r-- | libcxx/include/__locale | 8 |
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 |

