From b86771a2f780accf327ecfe163a3bf0f4814b628 Mon Sep 17 00:00:00 2001 From: Sam Clegg Date: Sat, 22 May 2021 06:39:33 -0700 Subject: [PATCH] [libc++] Minor emscripten changes from downstream Differential Revision: https://reviews.llvm.org/D126583 --- libcxx/include/__config | 5 +++-- libcxx/include/__locale | 3 +-- libcxx/include/locale | 2 +- libcxx/src/include/config_elast.h | 2 ++ 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/libcxx/include/__config b/libcxx/include/__config index 62b367167637..14e6850ebdc1 100644 --- a/libcxx/include/__config +++ b/libcxx/include/__config @@ -353,7 +353,7 @@ #if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || \ defined(__OpenBSD__) || defined(__DragonFly__) || defined(__sun__) # define _LIBCPP_USING_ARC4_RANDOM -#elif defined(__wasi__) +#elif defined(__wasi__) || defined(__EMSCRIPTEN__) # define _LIBCPP_USING_GETENTROPY #elif defined(__Fuchsia__) # define _LIBCPP_USING_FUCHSIA_CPRNG @@ -1028,7 +1028,8 @@ extern "C" _LIBCPP_FUNC_VIS void __sanitizer_annotate_contiguous_container( defined(__APPLE__) || \ defined(__sun__) || \ defined(__MVS__) || \ - defined(_AIX) + defined(_AIX) || \ + defined(__EMSCRIPTEN__) # define _LIBCPP_HAS_THREAD_API_PTHREAD # elif defined(__Fuchsia__) // TODO(44575): Switch to C11 thread API when possible. diff --git a/libcxx/include/__locale b/libcxx/include/__locale index 9fd707c7651c..5198178aa758 100644 --- a/libcxx/include/__locale +++ b/libcxx/include/__locale @@ -33,8 +33,7 @@ # include <__support/newlib/xlocale.h> #elif defined(__OpenBSD__) # include <__support/openbsd/xlocale.h> -#elif (defined(__APPLE__) || defined(__FreeBSD__) \ - || defined(__EMSCRIPTEN__) || defined(__IBMCPP__)) +#elif (defined(__APPLE__) || defined(__FreeBSD__) || defined(__IBMCPP__)) # include #elif defined(__Fuchsia__) # include <__support/fuchsia/xlocale.h> diff --git a/libcxx/include/locale b/libcxx/include/locale index 879f4d9820c9..3bed47c071e5 100644 --- a/libcxx/include/locale +++ b/libcxx/include/locale @@ -211,7 +211,7 @@ template class messages_byname; #if defined(__unix__) || (defined(__APPLE__) && defined(__MACH__)) // Most unix variants have catopen. These are the specific ones that don't. -# if !defined(__BIONIC__) && !defined(_NEWLIB_VERSION) +# if !defined(__BIONIC__) && !defined(_NEWLIB_VERSION) && !defined(__EMSCRIPTEN__) # define _LIBCPP_HAS_CATOPEN 1 # include # endif diff --git a/libcxx/src/include/config_elast.h b/libcxx/src/include/config_elast.h index 0ed53a3b20d1..bef26ec5019e 100644 --- a/libcxx/src/include/config_elast.h +++ b/libcxx/src/include/config_elast.h @@ -29,6 +29,8 @@ // No _LIBCPP_ELAST needed on Fuchsia #elif defined(__wasi__) // No _LIBCPP_ELAST needed on WASI +#elif defined(__EMSCRIPTEN__) +// No _LIBCPP_ELAST needed on Emscripten #elif defined(__linux__) || defined(_LIBCPP_HAS_MUSL_LIBC) #define _LIBCPP_ELAST 4095 #elif defined(__APPLE__)