File tree Expand file tree Collapse file tree 5 files changed +29
-1
lines changed Expand file tree Collapse file tree 5 files changed +29
-1
lines changed Original file line number Diff line number Diff line change 9
9
#ifndef LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_PLATFORM_ERRORS_H
10
10
#define LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_PLATFORM_ERRORS_H
11
11
12
- #if defined(__linux__) || defined(__Fuchsia__)
12
+ #if defined(__linux__) || defined(__Fuchsia__) || defined(__EMSCRIPTEN__)
13
13
#include " tables/linux_platform_errors.h"
14
14
#else
15
15
#include " tables/minimal_platform_errors.h"
Original file line number Diff line number Diff line change @@ -63,7 +63,12 @@ LIBC_INLINE_VAR constexpr MsgTable<76> POSIX_ERRORS = {
63
63
MsgMapping (EPROTO, " Protocol error" ),
64
64
MsgMapping (EMULTIHOP, " Multihop attempted" ),
65
65
MsgMapping (EBADMSG, " Bad message" ),
66
+ #ifdef __EMSCRIPTEN__
67
+ // For now, match the musl string
68
+ MsgMapping (EOVERFLOW, " Value too large for data type" ),
69
+ #else
66
70
MsgMapping (EOVERFLOW, " Value too large for defined data type" ),
71
+ #endif
67
72
MsgMapping (ENOTSOCK, " Socket operation on non-socket" ),
68
73
MsgMapping (EDESTADDRREQ, " Destination address required" ),
69
74
MsgMapping (EMSGSIZE, " Message too long" ),
Original file line number Diff line number Diff line change 16
16
namespace LIBC_NAMESPACE_DECL {
17
17
18
18
LIBC_INLINE_VAR constexpr const MsgTable<4 > STDC_ERRORS = {
19
+ #ifdef __EMSCRIPTEN__
20
+ // For now, match the musl name for errno 0.
21
+ MsgMapping (0 , " No error information" ),
22
+ #else
19
23
MsgMapping (0 , " Success" ),
24
+ #endif
20
25
MsgMapping (EDOM, " Numerical argument out of domain" ),
21
26
MsgMapping (ERANGE, " Numerical result out of range" ),
22
27
MsgMapping (EILSEQ, " Invalid or incomplete multibyte or wide character" ),
Original file line number Diff line number Diff line change 41
41
#define LIBC_TARGET_ARCH_IS_ARM
42
42
#endif
43
43
44
+ #if defined(__wasm__)
45
+ #define LIBC_TARGET_ARCH_IS_WASM
46
+ #endif
47
+
44
48
#if defined(__aarch64__) || defined(__arm64__) || defined(_M_ARM64)
45
49
#define LIBC_TARGET_ARCH_IS_AARCH64
46
50
#endif
Original file line number Diff line number Diff line change
1
+ #include " src/setjmp/sigsetjmp.h"
2
+ #include " hdr/offsetof_macros.h"
3
+ #include " src/__support/common.h"
4
+ #include " src/__support/macros/config.h"
5
+
6
+ #if !defined(LIBC_TARGET_ARCH_IS_WASM)
7
+ #error "Invalid file include"
8
+ #endif
9
+
10
+ namespace LIBC_NAMESPACE_DECL {
11
+ [[gnu::returns_twice]] int sigsetjmp (jmp_buf sigjmp_buf, int savesigs) {
12
+ return setjmp (sigjmp_buf);
13
+ }
14
+ }
You can’t perform that action at this time.
0 commit comments