diff options
| author | Petr Hosek <phosek@google.com> | 2019-11-19 19:56:54 -0800 |
|---|---|---|
| committer | Petr Hosek <phosek@google.com> | 2019-11-21 16:02:26 -0800 |
| commit | 68a3a3b28130ff055159632e8f94ef87fa8cba45 (patch) | |
| tree | 3424babe04ed60522533fced3d153e022cacbe9a /clang/lib/Driver | |
| parent | 46c7fc22cfb14a5b4445261c3ae849242f4d2ff9 (diff) | |
| download | bcm5719-llvm-68a3a3b28130ff055159632e8f94ef87fa8cba45.tar.gz bcm5719-llvm-68a3a3b28130ff055159632e8f94ef87fa8cba45.zip | |
[Clang] Enable RISC-V support for Fuchsia
We don't have a full sysroot yet, so for now we only include compiler
support and compiler-rt builtins, the rest of the runtimes will get
enabled later.
Differential Revision: https://reviews.llvm.org/D70477
Diffstat (limited to 'clang/lib/Driver')
| -rw-r--r-- | clang/lib/Driver/ToolChains/Fuchsia.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/clang/lib/Driver/ToolChains/Fuchsia.cpp b/clang/lib/Driver/ToolChains/Fuchsia.cpp index df2b4724dc2..9bea0b15c87 100644 --- a/clang/lib/Driver/ToolChains/Fuchsia.cpp +++ b/clang/lib/Driver/ToolChains/Fuchsia.cpp @@ -224,7 +224,7 @@ Fuchsia::Fuchsia(const Driver &D, const llvm::Triple &Triple, std::string Fuchsia::ComputeEffectiveClangTriple(const ArgList &Args, types::ID InputType) const { llvm::Triple Triple(ComputeLLVMTriple(Args, InputType)); - return (Triple.getArchName() + "-" + Triple.getOSName()).str(); + return Triple.str(); } Tool *Fuchsia::buildLinker() const { @@ -344,9 +344,17 @@ SanitizerMask Fuchsia::getSupportedSanitizers() const { SanitizerMask Fuchsia::getDefaultSanitizers() const { SanitizerMask Res; - if (getTriple().getArch() == llvm::Triple::aarch64) + switch (getTriple().getArch()) { + case llvm::Triple::aarch64: Res |= SanitizerKind::ShadowCallStack; - else + break; + case llvm::Triple::x86_64: Res |= SanitizerKind::SafeStack; + break; + case llvm::Triple::riscv64: + break; + default: + llvm_unreachable("invalid architecture"); + } return Res; } |

