Go to the documentation of this file.
9 #ifndef LLVM_CLANG_FRONTEND_FRONTENDOPTIONS_H
10 #define LLVM_CLANG_FRONTEND_FRONTENDOPTIONS_H
17 #include "llvm/ADT/StringRef.h"
148 unsigned Preprocessed : 1;
160 : Lang(L), Fmt(F), Preprocessed(PP) {}
197 bool IsSystem =
false;
202 :
File(
File.str()), Kind(Kind), IsSystem(IsSystem) {}
204 bool IsSystem =
false)
205 : Buffer(Buffer), Kind(Kind), IsSystem(IsSystem) {}
477 #endif // LLVM_CLANG_FRONTEND_FRONTENDOPTIONS_H
std::vector< std::string > ModuleMapFiles
The list of module map files to load before processing the input.
std::vector< std::string > AddPluginActions
The list of plugin actions to run in addition to the normal action.
unsigned FixAndRecompile
Apply fixes and recompile.
Specialize PointerLikeTypeTraits to allow LazyGenerationalUpdatePtr to be placed into a PointerUnion.
@ EmitAssembly
Emit a .s file.
@ GenerateHeaderModule
Generate pre-compiled module from a set of header files.
@ RewriteTest
Rewriter playground.
frontend::ActionKind ProgramAction
The frontend action to perform.
unsigned ShowStats
Show frontend performance metrics and statistics.
std::vector< std::string > LLVMArgs
A list of arguments to forward to LLVM's option processing; this should only be used for debugging an...
std::map< std::string, std::vector< std::string > > PluginArgs
Args to pass to the plugins.
unsigned SkipFunctionBodies
Skip over function bodies to speed up parsing in cases you do not need them (e.g.
std::string ARCMTMigrateReportOut
@ ModuleFileInfo
Dump information about a module file.
@ RunPreprocessorOnly
Just lex, no output.
@ ObjCMT_ReturnsInnerPointerProperty
annotate property with NS_RETURNS_INNER_POINTER
@ ObjCMT_NsAtomicIOSOnlyProperty
use NS_NONATOMIC_IOSONLY for property 'atomic' attribute
A source location that has been parsed on the command line.
@ ObjCMT_ProtocolConformance
Enable migration to add conforming protocols.
unsigned TimeTraceGranularity
Minimum time granularity (in microseconds) traced by time profiler.
@ ASTDump
Parse ASTs and dump them.
@ ObjCMT_Literals
Enable migration to modern ObjC literals.
@ VerifyPCH
Load and verify that a PCH file is usable.
@ PluginAction
Run a plugin action,.
@ RewriteObjC
ObjC->C Rewriter.
Optional< std::vector< std::string > > AuxTargetFeatures
Auxiliary target features for CUDA/HIP compilation.
unsigned PrintSupportedCPUs
print the supported cpus for the current target
unsigned ShowVersion
Show the -version text.
SmallVector< FrontendInputFile, 0 > Inputs
The input files and their types.
@ GeneratePCH
Generate pre-compiled header.
std::string OverrideRecordLayoutsFile
File name of the file that will provide record layouts (in the format produced by -fdump-record-layou...
unsigned ModulesEmbedAllFiles
Whether we should embed all used files into the PCM file.
@ ASTView
Parse ASTs and view them in Graphviz.
unsigned ShowHelp
Show the -help text.
Optional< std::string > AuxTargetCPU
Auxiliary target CPU for CUDA/HIP compilation.
ASTDumpOutputFormat ASTDumpFormat
Specifies the output format of the AST.
@ ASTPrint
Parse ASTs and print them.
unsigned ASTDumpDecls
Whether we include declaration dumps in AST dumps.
@ RunAnalysis
Run one or more source code analyses.
@ ObjCMT_Property
Enable migration to modern ObjC property.
static InputKind getInputKindForExtension(StringRef Extension)
getInputKindForExtension - Return the appropriate input kind for a file extension.
unsigned UseTemporary
Should a temporary file be used during compilation.
std::string OutputFile
The output file, if any.
std::string ASTDumpFilter
If given, filter dumped AST Decl nodes by this substring.
std::string AuxTriple
Auxiliary triple for CUDA/HIP compilation.
@ ParseSyntaxOnly
Parse and perform semantic analysis.
ASTDumpOutputFormat
Used to specify the format for printing AST dump information.
FrontendOptions - Options for controlling the behavior of the frontend.
@ ASTDeclList
Parse ASTs and list Decl nodes.
@ DumpRawTokens
Dump out raw tokens.
@ EmitLLVM
Emit a .ll file.
unsigned ASTDumpDeclTypes
Whether we include declaration type dumps in AST dumps.
@ ObjCMT_Annotation
Enable annotation of ObjCMethods of all kinds.
std::string StatsFile
Filename to write statistics to.
unsigned ASTDumpAll
Whether we deserialize all decls when forming AST dumps.
unsigned FixToTemporaries
Apply fixes to temporary files.
@ PrintDependencyDirectivesSourceMinimizerOutput
Print the output of the dependency directives source minimizer.
std::vector< std::string > ASTMergeFiles
The list of AST files to merge.
@ EmitHTML
Translate input source into HTML.
InputKind DashX
The input kind, either specified via -x argument or deduced from the input file name.
@ RewriteMacros
Expand macros but not #includes.
std::vector< std::string > ModulesEmbedFiles
The list of files to embed into the compiled module file.
unsigned UseGlobalModuleIndex
Whether we can use the global module index if available.
@ ObjCMT_ReadwriteProperty
Enable migration to modern ObjC readwrite property.
unsigned AllowPCMWithCompilerErrors
Output (and read) PCM files regardless of compiler errors.
unsigned ASTDumpLookups
Whether we include lookup table dumps in AST dumps.
unsigned FixOnlyWarnings
Apply fixes only for warnings.
@ ObjCMT_DesignatedInitializer
Enable inferring NS_DESIGNATED_INITIALIZER for ObjC methods.
unsigned TimeTrace
Output time trace profile.
std::vector< std::shared_ptr< ModuleFileExtension > > ModuleFileExtensions
The list of module file extensions.
@ ObjCMT_NsMacros
Enable migration to NS_ENUM/NS_OPTIONS macros.
enum clang::FrontendOptions::@185 ARCMTAction
CodeCompleteOptions CodeCompleteOpts
Language
The language for the input, used to select and validate the language standard and possible actions.
@ ObjCMT_PropertyDotSyntax
Enable converting setter/getter expressions to property-dot syntx.
unsigned IsSystemModule
When using -emit-module, treat the modulemap as a system module.
std::string ObjCMTWhiteListPath
@ GenerateModule
Generate pre-compiled module from a module map.
@ ObjCMT_Instancetype
Enable migration of ObjC methods to 'instancetype'.
std::string FixItSuffix
If given, the new suffix for fix-it rewritten files.
@ FixIt
Parse and apply any fixits to the source.
std::vector< std::string > Plugins
The list of plugins to load.
@ ObjCMT_ReadonlyProperty
Enable migration to modern ObjC readonly property.
std::string ActionName
The name of the action to run when using a plugin action.
unsigned GenerateGlobalModuleIndex
Whether we can generate the global module index if needed.
unsigned BuildingImplicitModule
Whether we are performing an implicit module build.
unsigned ARCMTMigrateEmitARCErrors
Emit ARC errors even if the migrator can fix them.
std::vector< std::string > ModuleFiles
The list of additional prebuilt module files to load before processing the input.
std::string OriginalModuleMap
When the input is a module map, the original module map file from which that map was inferred,...
Dataflow Directional Tag Classes.
@ DumpTokens
Dump out preprocessed tokens.
unsigned IncludeTimestamps
Whether timestamps should be written to the produced PCH file.
@ DumpCompilerOptions
Dump the compiler configuration.
Options controlling the behavior of code completion.
unsigned FixWhatYouCan
Apply fixes even if there are unfixable errors.
unsigned RelocatablePCH
When generating PCH files, instruct the AST writer to create relocatable PCH files.
unsigned DisableFree
Disable memory freeing on exit.
@ PrintPreprocessedInput
-E mode.
@ ObjCMT_Subscripting
Enable migration to modern ObjC subscripting.
@ EmitLLVMOnly
Generate LLVM IR, but do not emit anything.
@ MigrateSource
Run migrator.
@ GenerateInterfaceStubs
Generate Interface Stub Files.
@ ObjCMT_AtomicProperty
prefer 'atomic' property over 'nonatomic'.
@ InitOnly
Only execute frontend initialization.
ParsedSourceLocation CodeCompletionAt
If given, enable code completion at the provided location.
@ PrintPreamble
Print the "preamble" of the input file.
@ TemplightDump
Dump template instantiations.
@ GenerateModuleInterface
Generate pre-compiled module from a C++ module interface file.
@ EmitCodeGenOnly
Generate machine code, but don't emit anything.