xref: /freebsd/contrib/llvm-project/clang/lib/Basic/CodeGenOptions.cpp (revision 0b57cec536236d46e3dba9bd041533462f33dbb7)
1*0b57cec5SDimitry Andric //===--- CodeGenOptions.cpp -----------------------------------------------===//
2*0b57cec5SDimitry Andric //
3*0b57cec5SDimitry Andric // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4*0b57cec5SDimitry Andric // See https://llvm.org/LICENSE.txt for license information.
5*0b57cec5SDimitry Andric // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6*0b57cec5SDimitry Andric //
7*0b57cec5SDimitry Andric //===----------------------------------------------------------------------===//
8*0b57cec5SDimitry Andric 
9*0b57cec5SDimitry Andric #include "clang/Basic/CodeGenOptions.h"
10*0b57cec5SDimitry Andric #include <string.h>
11*0b57cec5SDimitry Andric 
12*0b57cec5SDimitry Andric namespace clang {
13*0b57cec5SDimitry Andric 
14*0b57cec5SDimitry Andric CodeGenOptions::CodeGenOptions() {
15*0b57cec5SDimitry Andric #define CODEGENOPT(Name, Bits, Default) Name = Default;
16*0b57cec5SDimitry Andric #define ENUM_CODEGENOPT(Name, Type, Bits, Default) set##Name(Default);
17*0b57cec5SDimitry Andric #include "clang/Basic/CodeGenOptions.def"
18*0b57cec5SDimitry Andric 
19*0b57cec5SDimitry Andric   RelocationModel = llvm::Reloc::PIC_;
20*0b57cec5SDimitry Andric   memcpy(CoverageVersion, "402*", 4);
21*0b57cec5SDimitry Andric }
22*0b57cec5SDimitry Andric 
23*0b57cec5SDimitry Andric bool CodeGenOptions::isNoBuiltinFunc(const char *Name) const {
24*0b57cec5SDimitry Andric   StringRef FuncName(Name);
25*0b57cec5SDimitry Andric   for (unsigned i = 0, e = NoBuiltinFuncs.size(); i != e; ++i)
26*0b57cec5SDimitry Andric     if (FuncName.equals(NoBuiltinFuncs[i]))
27*0b57cec5SDimitry Andric       return true;
28*0b57cec5SDimitry Andric   return false;
29*0b57cec5SDimitry Andric }
30*0b57cec5SDimitry Andric 
31*0b57cec5SDimitry Andric }  // end namespace clang
32