14 #ifndef LLVM_CLANG_FRONTEND_CODEGENOPTIONS_H
15 #define LLVM_CLANG_FRONTEND_CODEGENOPTIONS_H
18 #include "llvm/Support/Regex.h"
30 #define CODEGENOPT(Name, Bits, Default) unsigned Name : Bits;
31 #define ENUM_CODEGENOPT(Name, Type, Bits, Default)
32 #include "clang/Frontend/CodeGenOptions.def"
35 #define CODEGENOPT(Name, Bits, Default)
36 #define ENUM_CODEGENOPT(Name, Type, Bits, Default) unsigned Name : Bits;
37 #include "clang/Frontend/CodeGenOptions.def"
226 #define CODEGENOPT(Name, Bits, Default)
227 #define ENUM_CODEGENOPT(Name, Type, Bits, Default) \
228 Type get##Name() const { return static_cast<Type>(Name); } \
229 void set##Name(Type Value) { Name = static_cast<unsigned>(Value); }
230 #include "clang/Frontend/CodeGenOptions.def"
std::string DwarfDebugFlags
The string to embed in the debug information for the compile unit, if non-empty.
std::shared_ptr< llvm::Regex > OptimizationRemarkMissedPattern
Regular expression to select optimizations for which we should enable missed optimization remarks...
std::string EABIVersion
The EABI version to use.
std::string SampleProfileFile
Name of the profile file to use with -fprofile-sample-use.
Emit only debug info necessary for generating line number tables (-gline-tables-only).
std::vector< std::string > RewriteMapFiles
Set of files definining the rules for the symbol rewriting.
Bitfields of CodeGenOptions, split out from CodeGenOptions to ensure that this large collection of bi...
std::string CoverageFile
The filename with path we use for coverage files.
std::string SplitDwarfFile
The name for the split debug info file that we'll break out.
std::string DebugPass
Enable additional debugging information.
SanitizerSet SanitizeRecover
Set of sanitizer checks that are non-fatal (i.e.
std::vector< std::string > CudaGpuBinaryFileNames
A list of file names passed with -fcuda-include-gpubinary options to forward to CUDA runtime back-end...
Defines the clang::SanitizerKind enum.
std::map< std::string, std::string > DebugPrefixMap
class LLVM_ALIGNAS(8) DependentTemplateSpecializationType const IdentifierInfo * Name
Represents a template specialization type whose template cannot be resolved, e.g. ...
Don't generate debug info.
Emit location information but do not generate debug info in the output.
std::string CodeModel
The code model to use (-mcmodel).
std::string FloatABI
The ABI to use for passing floating point arguments.
std::string ThreadModel
The thread model to use.
std::vector< std::string > DependentLibraries
A list of dependent libraries.
char CoverageVersion[4]
The version string to put into coverage files.
std::vector< std::string > NoBuiltinFuncs
A list of all -fno-builtin-* function names (e.g., memset).
std::string LimitFloatPrecision
The float precision limit to use, if non-empty.
std::string RelocationModel
The name of the relocation model to use.
std::shared_ptr< llvm::Regex > OptimizationRemarkPattern
Regular expression to select optimizations for which we should enable optimization remarks...
const std::vector< std::string > & getNoBuiltinFuncs() const
std::string InstrProfileInput
Name of the profile file to use as input for -fprofile-instr-use.
SanitizerSet SanitizeTrap
Set of sanitizer checks that trap rather than diagnose.
std::shared_ptr< llvm::Regex > OptimizationRemarkAnalysisPattern
Regular expression to select optimizations for which we should enable optimization analyses...
StructReturnConventionKind
std::string ThinLTOIndexFile
Name of the function summary index file to use for ThinLTO function importing.
std::string DebugCompilationDir
The string to embed in debug information as the current working directory.
CodeGenOptions - Track various options which control how the code is optimized and passed to the back...
bool isNoBuiltinFunc(const char *Name) const
Is this a libc/libm function that is no longer recognized as a builtin because a -fno-builtin-* optio...
std::string MainFileName
The user provided name for the "main file", if non-empty.
std::vector< std::pair< unsigned, std::string > > LinkBitcodeFiles
The name of the bitcode file to link before optzns.
std::string InstrProfileOutput
Name of the profile file to use as output for -fprofile-instr-generate and -fprofile-generate.
std::string TrapFuncName
If not an empty string, trap intrinsics are lowered to calls to this function instead of to trap inst...
Limit generated debug info to reduce size (-fno-standalone-debug).
std::vector< std::string > BackendOptions
A list of command-line options to forward to the LLVM backend.