summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver
diff options
context:
space:
mode:
authorPetr Hosek <phosek@google.com>2019-11-19 19:56:54 -0800
committerPetr Hosek <phosek@google.com>2019-11-21 16:02:26 -0800
commit68a3a3b28130ff055159632e8f94ef87fa8cba45 (patch)
tree3424babe04ed60522533fced3d153e022cacbe9a /clang/lib/Driver
parent46c7fc22cfb14a5b4445261c3ae849242f4d2ff9 (diff)
downloadbcm5719-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.cpp14
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;
}
OpenPOWER on IntegriCloud