xref: /freebsd/contrib/llvm-project/clang/lib/Basic/CodeGenOptions.cpp (revision 84e404763fa5a7e00105ff86e6caff5aebe0e55e)
1  //===--- CodeGenOptions.cpp -----------------------------------------------===//
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 "clang/Basic/CodeGenOptions.h"
10  #include <string.h>
11  
12  namespace clang {
13  
14  CodeGenOptions::CodeGenOptions() {
15  #define CODEGENOPT(Name, Bits, Default) Name = Default;
16  #define ENUM_CODEGENOPT(Name, Type, Bits, Default) set##Name(Default);
17  #include "clang/Basic/CodeGenOptions.def"
18  
19    RelocationModel = llvm::Reloc::PIC_;
20    memcpy(CoverageVersion, "402*", 4);
21  }
22  
23  bool CodeGenOptions::isNoBuiltinFunc(const char *Name) const {
24    StringRef FuncName(Name);
25    for (unsigned i = 0, e = NoBuiltinFuncs.size(); i != e; ++i)
26      if (FuncName.equals(NoBuiltinFuncs[i]))
27        return true;
28    return false;
29  }
30  
31  }  // end namespace clang
32