xref: /netbsd-src/external/apache2/llvm/dist/clang/lib/Driver/ToolChains/Contiki.cpp (revision 7330f729ccf0bd976a06f95fad452fe774fc7fd1)
1*7330f729Sjoerg //===--- Contiki.cpp - Contiki ToolChain Implementations --------*- C++ -*-===//
2*7330f729Sjoerg //
3*7330f729Sjoerg // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*7330f729Sjoerg // See https://llvm.org/LICENSE.txt for license information.
5*7330f729Sjoerg // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*7330f729Sjoerg //
7*7330f729Sjoerg //===----------------------------------------------------------------------===//
8*7330f729Sjoerg 
9*7330f729Sjoerg #include "Contiki.h"
10*7330f729Sjoerg #include "CommonArgs.h"
11*7330f729Sjoerg 
12*7330f729Sjoerg using namespace clang::driver;
13*7330f729Sjoerg using namespace clang::driver::toolchains;
14*7330f729Sjoerg using namespace clang;
15*7330f729Sjoerg using namespace llvm::opt;
16*7330f729Sjoerg 
Contiki(const Driver & D,const llvm::Triple & Triple,const ArgList & Args)17*7330f729Sjoerg Contiki::Contiki(const Driver &D, const llvm::Triple &Triple,
18*7330f729Sjoerg                  const ArgList &Args)
19*7330f729Sjoerg     : Generic_ELF(D, Triple, Args) {}
20*7330f729Sjoerg 
getSupportedSanitizers() const21*7330f729Sjoerg SanitizerMask Contiki::getSupportedSanitizers() const {
22*7330f729Sjoerg   const bool IsX86 = getTriple().getArch() == llvm::Triple::x86;
23*7330f729Sjoerg   SanitizerMask Res = ToolChain::getSupportedSanitizers();
24*7330f729Sjoerg   if (IsX86)
25*7330f729Sjoerg     Res |= SanitizerKind::SafeStack;
26*7330f729Sjoerg   return Res;
27*7330f729Sjoerg }
28