mirror of
https://github.com/intel/llvm.git
synced 2026-01-26 12:26:52 +08:00
[libc] Add wasm support for some submodules in llvm-libc. (#154383)
Introducing several emscripten-specific changes to the llvm-libc headers as well as adding a wasm sigsetjmp.cpp.
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
#ifndef LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_PLATFORM_ERRORS_H
|
||||
#define LLVM_LIBC_SRC___SUPPORT_STRINGUTIL_PLATFORM_ERRORS_H
|
||||
|
||||
#if defined(__linux__) || defined(__Fuchsia__)
|
||||
#if defined(__linux__) || defined(__Fuchsia__) || defined(__EMSCRIPTEN__)
|
||||
#include "tables/linux_platform_errors.h"
|
||||
#else
|
||||
#include "tables/minimal_platform_errors.h"
|
||||
|
||||
@@ -41,6 +41,10 @@
|
||||
#define LIBC_TARGET_ARCH_IS_ARM
|
||||
#endif
|
||||
|
||||
#if defined(__wasm__)
|
||||
#define LIBC_TARGET_ARCH_IS_WASM
|
||||
#endif
|
||||
|
||||
#if defined(__aarch64__) || defined(__arm64__) || defined(_M_ARM64)
|
||||
#define LIBC_TARGET_ARCH_IS_AARCH64
|
||||
#endif
|
||||
|
||||
18
libc/src/setjmp/wasm/sigsetjmp.cpp
Normal file
18
libc/src/setjmp/wasm/sigsetjmp.cpp
Normal file
@@ -0,0 +1,18 @@
|
||||
//===-- Implementation of sigsetjmp ---------------------------------------===//
|
||||
//
|
||||
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
||||
// See https://llvm.org/LICENSE.txt for license information.
|
||||
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "src/setjmp/sigsetjmp.h"
|
||||
#include "hdr/offsetof_macros.h"
|
||||
#include "src/__support/common.h"
|
||||
|
||||
namespace LIBC_NAMESPACE_DECL {
|
||||
[[gnu::returns_twice]] int sigsetjmp(jmp_buf sigjmp_buf,
|
||||
[[maybe_unused]] int savesigs) {
|
||||
return setjmp(sigjmp_buf);
|
||||
}
|
||||
} // namespace LIBC_NAMESPACE_DECL
|
||||
Reference in New Issue
Block a user