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