forked from OSchip/llvm-project
[clang][Emscripten] Define __unix family of macros
This will allow us to remove these from the downstream
driver:
57270ce815/emcc.py (L860-L863)
Differential Revision: https://reviews.llvm.org/D108735
This commit is contained in:
parent
1bdeafeaf4
commit
c05d30e444
|
@ -944,6 +944,7 @@ class LLVM_LIBRARY_VISIBILITY EmscriptenTargetInfo
|
|||
void getOSDefines(const LangOptions &Opts, const llvm::Triple &Triple,
|
||||
MacroBuilder &Builder) const final {
|
||||
WebAssemblyOSTargetInfo<Target>::getOSDefines(Opts, Triple, Builder);
|
||||
DefineStd(Builder, "unix", Opts);
|
||||
Builder.defineMacro("__EMSCRIPTEN__");
|
||||
if (Opts.POSIXThreads)
|
||||
Builder.defineMacro("__EMSCRIPTEN_PTHREADS__");
|
||||
|
|
|
@ -1847,8 +1847,10 @@
|
|||
// WEBASSEMBLY-NEXT:#define __clang_version__ "{{.*}}"
|
||||
// WEBASSEMBLY-NEXT:#define __clang_wide_literal_encoding__ {{.*}}
|
||||
// WEBASSEMBLY-NEXT:#define __llvm__ 1
|
||||
// WEBASSEMBLY-NOT:#define __unix
|
||||
// WEBASSEMBLY-NOT:#define __unix__
|
||||
// WEBASSEMBLY-WASI-NOT:#define __unix
|
||||
// WEBASSEMBLY-WASI-NOT:#define __unix__
|
||||
// EMSCRIPTEN-NEXT:#define __unix 1
|
||||
// EMSCRIPTEN-NEXT:#define __unix__ 1
|
||||
// WEBASSEMBLY-WASI-NEXT:#define __wasi__ 1
|
||||
// WEBASSEMBLY-NOT:#define __wasm_simd128__
|
||||
// WEBASSEMBLY-NOT:#define __wasm_simd256__
|
||||
|
@ -1863,6 +1865,8 @@
|
|||
// WEBASSEMBLY64-NEXT:#define __wasm64 1
|
||||
// WEBASSEMBLY64-NEXT:#define __wasm64__ 1
|
||||
// WEBASSEMBLY-NEXT:#define __wasm__ 1
|
||||
// EMSCRIPTEN:#define unix 1
|
||||
// WEBASSEMBLY-WASI-NOT:#define unix 1
|
||||
// WEBASSEMBLY-CXX-NOT:_REENTRANT
|
||||
// WEBASSEMBLY-CXX-NOT:__STDCPP_THREADS__
|
||||
// WEBASSEMBLY-CXX-ATOMICS:#define _REENTRANT 1
|
||||
|
|
Loading…
Reference in New Issue