From c55d41dea56cf0908c1d22c266ebbad4b5895a67 Mon Sep 17 00:00:00 2001 From: LLVM Packaging Team Date: Wed, 18 Dec 2024 10:01:43 +0100 Subject: [PATCH] wasm-compiler-rt-default =================================================================== Gbp-Pq: Topic wasm Gbp-Pq: Name wasm-compiler-rt-default.diff --- clang/lib/Driver/ToolChains/WebAssembly.cpp | 12 ++++++++++++ clang/lib/Driver/ToolChains/WebAssembly.h | 1 + 2 files changed, 13 insertions(+) diff --git a/clang/lib/Driver/ToolChains/WebAssembly.cpp b/clang/lib/Driver/ToolChains/WebAssembly.cpp index b78bc366ad..dda3dcc152 100644 --- a/clang/lib/Driver/ToolChains/WebAssembly.cpp +++ b/clang/lib/Driver/ToolChains/WebAssembly.cpp @@ -457,6 +457,18 @@ ToolChain::RuntimeLibType WebAssembly::GetDefaultRuntimeLibType() const { return ToolChain::RLT_CompilerRT; } +ToolChain::RuntimeLibType WebAssembly::GetRuntimeLibType( + const ArgList &Args) const { + if (Arg *A = Args.getLastArg(options::OPT_rtlib_EQ)) { + StringRef Value = A->getValue(); + if (Value != "compiler-rt") + getDriver().Diag(clang::diag::err_drv_unsupported_rtlib_for_platform) + << Value << "WebAssembly"; + } + + return ToolChain::RLT_CompilerRT; +} + ToolChain::CXXStdlibType WebAssembly::GetCXXStdlibType(const ArgList &Args) const { if (Arg *A = Args.getLastArg(options::OPT_stdlib_EQ)) { diff --git a/clang/lib/Driver/ToolChains/WebAssembly.h b/clang/lib/Driver/ToolChains/WebAssembly.h index 76e0ca39bd..2f88a461e9 100644 --- a/clang/lib/Driver/ToolChains/WebAssembly.h +++ b/clang/lib/Driver/ToolChains/WebAssembly.h @@ -56,6 +56,7 @@ private: llvm::opt::ArgStringList &CC1Args, Action::OffloadKind DeviceOffloadKind) const override; RuntimeLibType GetDefaultRuntimeLibType() const override; + RuntimeLibType GetRuntimeLibType(const llvm::opt::ArgList &Args) const override; CXXStdlibType GetCXXStdlibType(const llvm::opt::ArgList &Args) const override; void AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, -- 2.30.2