Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/include/clang/Basic/CodeGenOptions.def
Line
Count
Source
1
56.8k
//===--- CodeGenOptions.def - Code generation option database ----- C++ -*-===//
2
56.8k
//
3
56.8k
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
56.8k
// See https://llvm.org/LICENSE.txt for license information.
5
56.8k
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
56.8k
//
7
56.8k
//===----------------------------------------------------------------------===//
8
56.8k
//
9
56.8k
// This file defines the code generation options. Users of this file
10
56.8k
// must define the CODEGENOPT macro to make use of this information.
11
56.8k
// Optionally, the user may also define ENUM_CODEGENOPT (for options
12
56.8k
// that have enumeration type and VALUE_CODEGENOPT is a code
13
56.8k
// generation option that describes a value rather than a flag.
14
56.8k
//
15
56.8k
//===----------------------------------------------------------------------===//
16
#ifndef CODEGENOPT
17
#  error Define the CODEGENOPT macro to handle language options
18
#endif
19
20
56.8k
#ifndef VALUE_CODEGENOPT
21
568k
#  define VALUE_CODEGENOPT(Name, Bits, Default) \
22
568k
CODEGENOPT(Name, Bits, Default)
23
56.8k
#endif
24
56.8k
25
#ifndef ENUM_CODEGENOPT
26
#  define ENUM_CODEGENOPT(Name, Type, Bits, Default) \
27
CODEGENOPT(Name, Bits, Default)
28
#endif
29
30
56.8k
CODEGENOPT(DisableIntegratedAS, 1, 0) ///< -no-integrated-as
31
56.8k
ENUM_CODEGENOPT(CompressDebugSections, llvm::DebugCompressionType, 2,
32
56.8k
                llvm::DebugCompressionType::None)
33
56.8k
CODEGENOPT(RelaxELFRelocations, 1, 0) ///< -Wa,--mrelax-relocations
34
56.8k
CODEGENOPT(AsmVerbose        , 1, 0) ///< -dA, -fverbose-asm.
35
56.8k
CODEGENOPT(PreserveAsmComments, 1, 1) ///< -dA, -fno-preserve-as-comments.
36
56.8k
CODEGENOPT(AssumeSaneOperatorNew , 1, 1) ///< implicit __attribute__((malloc)) operator new
37
56.8k
CODEGENOPT(Autolink          , 1, 1) ///< -fno-autolink
38
56.8k
CODEGENOPT(ObjCAutoRefCountExceptions , 1, 0) ///< Whether ARC should be EH-safe.
39
56.8k
CODEGENOPT(Backchain         , 1, 0) ///< -mbackchain
40
56.8k
CODEGENOPT(ControlFlowGuard  , 1, 0) ///< -cfguard
41
56.8k
CODEGENOPT(CoverageExtraChecksum, 1, 0) ///< Whether we need a second checksum for functions in GCNO files.
42
56.8k
CODEGENOPT(CoverageNoFunctionNamesInData, 1, 0) ///< Do not include function names in GCDA files.
43
56.8k
CODEGENOPT(CoverageExitBlockBeforeBody, 1, 0) ///< Whether to emit the exit block before the body blocks in GCNO files.
44
56.8k
CODEGENOPT(CXAAtExit         , 1, 1) ///< Use __cxa_atexit for calling destructors.
45
56.8k
CODEGENOPT(RegisterGlobalDtorsWithAtExit, 1, 1) ///< Use atexit or __cxa_atexit to register global destructors.
46
56.8k
CODEGENOPT(CXXCtorDtorAliases, 1, 0) ///< Emit complete ctors/dtors as linker
47
56.8k
                                     ///< aliases to base ctors when possible.
48
56.8k
CODEGENOPT(DataSections      , 1, 0) ///< Set when -fdata-sections is enabled.
49
56.8k
CODEGENOPT(UniqueSectionNames, 1, 1) ///< Set for -funique-section-names.
50
56.8k
ENUM_CODEGENOPT(FramePointer, FramePointerKind, 2, FramePointerKind::None) /// frame-pointer: all,non-leaf,none
51
56.8k
52
56.8k
CODEGENOPT(DisableFree       , 1, 0) ///< Don't free memory.
53
56.8k
CODEGENOPT(DiscardValueNames , 1, 0) ///< Discard Value Names from the IR (LLVMContext flag)
54
56.8k
CODEGENOPT(DisableGCov       , 1, 0) ///< Don't run the GCov pass, for testing.
55
56.8k
CODEGENOPT(DisableLLVMPasses , 1, 0) ///< Don't run any LLVM IR passes to get
56
56.8k
                                     ///< the pristine IR generated by the
57
56.8k
                                     ///< frontend.
58
56.8k
CODEGENOPT(DisableLifetimeMarkers, 1, 0) ///< Don't emit any lifetime markers
59
56.8k
CODEGENOPT(DisableO0ImplyOptNone , 1, 0) ///< Don't annonate function with optnone at O0
60
56.8k
CODEGENOPT(ExperimentalNewPassManager, 1, 0) ///< Enables the new, experimental
61
56.8k
                                             ///< pass manager.
62
56.8k
CODEGENOPT(DebugPassManager, 1, 0) ///< Prints debug information for the new
63
56.8k
                                   ///< pass manager.
64
56.8k
CODEGENOPT(DisableRedZone    , 1, 0) ///< Set when -mno-red-zone is enabled.
65
56.8k
CODEGENOPT(EnableDebugEntryValues, 1, 0) ///< Emit call site parameter dbg info
66
56.8k
CODEGENOPT(IndirectTlsSegRefs, 1, 0) ///< Set when -mno-tls-direct-seg-refs
67
56.8k
                                     ///< is specified.
68
56.8k
CODEGENOPT(DisableTailCalls  , 1, 0) ///< Do not emit tail calls.
69
56.8k
CODEGENOPT(NoEscapingBlockTailCalls, 1, 0) ///< Do not emit tail calls from
70
56.8k
                                           ///< escaping blocks.
71
56.8k
CODEGENOPT(EmitDeclMetadata  , 1, 0) ///< Emit special metadata indicating what
72
56.8k
                                     ///< Decl* various IR entities came from.
73
56.8k
                                     ///< Only useful when running CodeGen as a
74
56.8k
                                     ///< subroutine.
75
56.8k
CODEGENOPT(EmitVersionIdentMetadata , 1, 1) ///< Emit compiler version metadata.
76
56.8k
CODEGENOPT(EmitGcovArcs      , 1, 0) ///< Emit coverage data files, aka. GCDA.
77
56.8k
CODEGENOPT(EmitGcovNotes     , 1, 0) ///< Emit coverage "notes" files, aka GCNO.
78
56.8k
CODEGENOPT(EmitOpenCLArgMetadata , 1, 0) ///< Emit OpenCL kernel arg metadata.
79
56.8k
CODEGENOPT(EmulatedTLS       , 1, 0) ///< Set by default or -f[no-]emulated-tls.
80
56.8k
CODEGENOPT(ExplicitEmulatedTLS , 1, 0) ///< Set if -f[no-]emulated-tls is used.
81
56.8k
/// Embed Bitcode mode (off/all/bitcode/marker).
82
56.8k
ENUM_CODEGENOPT(EmbedBitcode, EmbedBitcodeKind, 2, Embed_Off)
83
56.8k
CODEGENOPT(ForbidGuardVariables , 1, 0) ///< Issue errors if C++ guard variables
84
56.8k
                                        ///< are required.
85
56.8k
CODEGENOPT(FunctionSections  , 1, 0) ///< Set when -ffunction-sections is enabled.
86
56.8k
CODEGENOPT(InstrumentFunctions , 1, 0) ///< Set when -finstrument-functions is
87
56.8k
                                       ///< enabled.
88
56.8k
CODEGENOPT(InstrumentFunctionsAfterInlining , 1, 0) ///< Set when
89
56.8k
                          ///< -finstrument-functions-after-inlining is enabled.
90
56.8k
CODEGENOPT(InstrumentFunctionEntryBare , 1, 0) ///< Set when
91
56.8k
                               ///< -finstrument-function-entry-bare is enabled.
92
56.8k
CODEGENOPT(CFProtectionReturn , 1, 0) ///< if -fcf-protection is
93
56.8k
                                      ///< set to full or return.
94
56.8k
CODEGENOPT(CFProtectionBranch , 1, 0) ///< if -fcf-protection is
95
56.8k
                                      ///< set to full or branch.
96
56.8k
CODEGENOPT(XRayInstrumentFunctions , 1, 0) ///< Set when -fxray-instrument is
97
56.8k
                                           ///< enabled.
98
56.8k
CODEGENOPT(StackSizeSection  , 1, 0) ///< Set when -fstack-size-section is enabled.
99
56.8k
100
56.8k
///< Set when -fxray-always-emit-customevents is enabled.
101
56.8k
CODEGENOPT(XRayAlwaysEmitCustomEvents , 1, 0)
102
56.8k
103
56.8k
///< Set when -fxray-always-emit-typedevents is enabled.
104
56.8k
CODEGENOPT(XRayAlwaysEmitTypedEvents , 1, 0)
105
56.8k
106
56.8k
///< Set the minimum number of instructions in a function to determine selective
107
56.8k
///< XRay instrumentation.
108
56.8k
VALUE_CODEGENOPT(XRayInstructionThreshold , 32, 200)
109
56.8k
110
56.8k
CODEGENOPT(InstrumentForProfiling , 1, 0) ///< Set when -pg is enabled.
111
56.8k
CODEGENOPT(CallFEntry , 1, 0) ///< Set when -mfentry is enabled.
112
56.8k
CODEGENOPT(LessPreciseFPMAD  , 1, 0) ///< Enable less precise MAD instructions to
113
56.8k
                                     ///< be generated.
114
56.8k
CODEGENOPT(PrepareForLTO     , 1, 0) ///< Set when -flto is enabled on the
115
56.8k
                                     ///< compile step.
116
56.8k
CODEGENOPT(PrepareForThinLTO , 1, 0) ///< Set when -flto=thin is enabled on the
117
56.8k
                                     ///< compile step.
118
56.8k
CODEGENOPT(LTOUnit, 1, 0) ///< Emit IR to support LTO unit features (CFI, whole
119
56.8k
                          ///< program vtable opt).
120
56.8k
CODEGENOPT(EnableSplitLTOUnit, 1, 0) ///< Enable LTO unit splitting to support
121
56.8k
             /// CFI and traditional whole program
122
56.8k
             /// devirtualization that require whole
123
56.8k
             /// program IR support.
124
56.8k
CODEGENOPT(IncrementalLinkerCompatible, 1, 0) ///< Emit an object file which can
125
56.8k
                                              ///< be used with an incremental
126
56.8k
                                              ///< linker.
127
56.8k
CODEGENOPT(MergeAllConstants , 1, 1) ///< Merge identical constants.
128
56.8k
CODEGENOPT(MergeFunctions    , 1, 0) ///< Set when -fmerge-functions is enabled.
129
56.8k
CODEGENOPT(MSVolatile        , 1, 0) ///< Set when /volatile:ms is enabled.
130
56.8k
CODEGENOPT(NoCommon          , 1, 0) ///< Set when -fno-common or C++ is enabled.
131
56.8k
CODEGENOPT(NoDwarfDirectoryAsm , 1, 0) ///< Set when -fno-dwarf-directory-asm is
132
56.8k
                                       ///< enabled.
133
56.8k
CODEGENOPT(NoExecStack       , 1, 0) ///< Set when -Wa,--noexecstack is enabled.
134
56.8k
CODEGENOPT(FatalWarnings     , 1, 0) ///< Set when -Wa,--fatal-warnings is
135
56.8k
                                     ///< enabled.
136
56.8k
CODEGENOPT(EnableSegmentedStacks , 1, 0) ///< Set when -fsplit-stack is enabled.
137
56.8k
CODEGENOPT(NoImplicitFloat   , 1, 0) ///< Set when -mno-implicit-float is enabled.
138
56.8k
CODEGENOPT(NoInfsFPMath      , 1, 0) ///< Assume FP arguments, results not +-Inf.
139
56.8k
CODEGENOPT(NoSignedZeros     , 1, 0) ///< Allow ignoring the signedness of FP zero
140
56.8k
CODEGENOPT(NullPointerIsValid , 1, 0) ///< Assume Null pointer deference is defined.
141
56.8k
CODEGENOPT(Reassociate       , 1, 0) ///< Allow reassociation of FP math ops
142
56.8k
CODEGENOPT(ReciprocalMath    , 1, 0) ///< Allow FP divisions to be reassociated.
143
56.8k
CODEGENOPT(NoTrappingMath    , 1, 0) ///< Set when -fno-trapping-math is enabled.
144
56.8k
CODEGENOPT(NoNaNsFPMath      , 1, 0) ///< Assume FP arguments, results not NaN.
145
56.8k
CODEGENOPT(FlushDenorm       , 1, 0) ///< Allow FP denorm numbers to be flushed to zero
146
56.8k
CODEGENOPT(CorrectlyRoundedDivSqrt, 1, 0) ///< -cl-fp32-correctly-rounded-divide-sqrt
147
56.8k
148
56.8k
/// When false, this attempts to generate code as if the result of an
149
56.8k
/// overflowing conversion matches the overflowing behavior of a target's native
150
56.8k
/// float-to-int conversion instructions.
151
56.8k
CODEGENOPT(StrictFloatCastOverflow, 1, 1)
152
56.8k
153
56.8k
CODEGENOPT(UniformWGSize     , 1, 0) ///< -cl-uniform-work-group-size
154
56.8k
CODEGENOPT(NoZeroInitializedInBSS , 1, 0) ///< -fno-zero-initialized-in-bss.
155
56.8k
/// Method of Objective-C dispatch to use.
156
56.8k
ENUM_CODEGENOPT(ObjCDispatchMethod, ObjCDispatchMethodKind, 2, Legacy)
157
56.8k
/// Replace certain message sends with calls to ObjC runtime entrypoints
158
56.8k
CODEGENOPT(ObjCConvertMessagesToRuntimeCalls , 1, 1)
159
56.8k
160
56.8k
VALUE_CODEGENOPT(OptimizationLevel, 2, 0) ///< The -O[0-3] option specified.
161
56.8k
VALUE_CODEGENOPT(OptimizeSize, 2, 0) ///< If -Os (==1) or -Oz (==2) is specified.
162
56.8k
163
56.8k
/// Choose profile instrumenation kind or no instrumentation.
164
56.8k
ENUM_CODEGENOPT(ProfileInstr, ProfileInstrKind, 2, ProfileNone)
165
56.8k
/// Choose profile kind for PGO use compilation.
166
56.8k
ENUM_CODEGENOPT(ProfileUse, ProfileInstrKind, 2, ProfileNone)
167
56.8k
CODEGENOPT(CoverageMapping , 1, 0) ///< Generate coverage mapping regions to
168
56.8k
                                   ///< enable code coverage analysis.
169
56.8k
CODEGENOPT(DumpCoverageMapping , 1, 0) ///< Dump the generated coverage mapping
170
56.8k
                                       ///< regions.
171
56.8k
172
56.8k
  /// If -fpcc-struct-return or -freg-struct-return is specified.
173
56.8k
ENUM_CODEGENOPT(StructReturnConvention, StructReturnConventionKind, 2, SRCK_Default)
174
56.8k
175
56.8k
CODEGENOPT(RelaxAll          , 1, 0) ///< Relax all machine code instructions.
176
56.8k
CODEGENOPT(RelaxedAliasing   , 1, 0) ///< Set when -fno-strict-aliasing is enabled.
177
56.8k
CODEGENOPT(StructPathTBAA    , 1, 0) ///< Whether or not to use struct-path TBAA.
178
56.8k
CODEGENOPT(NewStructPathTBAA , 1, 0) ///< Whether or not to use enhanced struct-path TBAA.
179
56.8k
CODEGENOPT(SaveTempLabels    , 1, 0) ///< Save temporary labels.
180
56.8k
CODEGENOPT(SanitizeAddressUseAfterScope , 1, 0) ///< Enable use-after-scope detection
181
56.8k
                                                ///< in AddressSanitizer
182
56.8k
CODEGENOPT(SanitizeAddressPoisonCustomArrayCookie, 1,
183
56.8k
           0) ///< Enable poisoning operator new[] which is not a replaceable
184
56.8k
              ///< global allocation function in AddressSanitizer
185
56.8k
CODEGENOPT(SanitizeAddressGlobalsDeadStripping, 1, 0) ///< Enable linker dead stripping
186
56.8k
                                                      ///< of globals in AddressSanitizer
187
56.8k
CODEGENOPT(SanitizeAddressUseOdrIndicator, 1, 0) ///< Enable ODR indicator globals
188
56.8k
CODEGENOPT(SanitizeMemoryTrackOrigins, 2, 0) ///< Enable tracking origins in
189
56.8k
                                             ///< MemorySanitizer
190
56.8k
CODEGENOPT(SanitizeMemoryUseAfterDtor, 1, 0) ///< Enable use-after-delete detection
191
56.8k
                                             ///< in MemorySanitizer
192
56.8k
CODEGENOPT(SanitizeCfiCrossDso, 1, 0) ///< Enable cross-dso support in CFI.
193
56.8k
CODEGENOPT(SanitizeMinimalRuntime, 1, 0) ///< Use "_minimal" sanitizer runtime for
194
56.8k
                                         ///< diagnostics.
195
56.8k
CODEGENOPT(SanitizeCfiICallGeneralizePointers, 1, 0) ///< Generalize pointer types in
196
56.8k
                                                     ///< CFI icall function signatures
197
56.8k
CODEGENOPT(SanitizeCoverageType, 2, 0) ///< Type of sanitizer coverage
198
56.8k
                                       ///< instrumentation.
199
56.8k
CODEGENOPT(SanitizeCoverageIndirectCalls, 1, 0) ///< Enable sanitizer coverage
200
56.8k
                                                ///< for indirect calls.
201
56.8k
CODEGENOPT(SanitizeCoverageTraceBB, 1, 0) ///< Enable basic block tracing in
202
56.8k
                                          ///< in sanitizer coverage.
203
56.8k
CODEGENOPT(SanitizeCoverageTraceCmp, 1, 0) ///< Enable cmp instruction tracing
204
56.8k
                                           ///< in sanitizer coverage.
205
56.8k
CODEGENOPT(SanitizeCoverageTraceDiv, 1, 0) ///< Enable div instruction tracing
206
56.8k
                                           ///< in sanitizer coverage.
207
56.8k
CODEGENOPT(SanitizeCoverageTraceGep, 1, 0) ///< Enable GEP instruction tracing
208
56.8k
                                           ///< in sanitizer coverage.
209
56.8k
CODEGENOPT(SanitizeCoverage8bitCounters, 1, 0) ///< Use 8-bit frequency counters
210
56.8k
                                               ///< in sanitizer coverage.
211
56.8k
CODEGENOPT(SanitizeCoverageTracePC, 1, 0) ///< Enable PC tracing
212
56.8k
                                          ///< in sanitizer coverage.
213
56.8k
CODEGENOPT(SanitizeCoverageTracePCGuard, 1, 0) ///< Enable PC tracing with guard
214
56.8k
                                               ///< in sanitizer coverage.
215
56.8k
CODEGENOPT(SanitizeCoverageInline8bitCounters, 1, 0) ///< Use inline 8bit counters.
216
56.8k
CODEGENOPT(SanitizeCoveragePCTable, 1, 0) ///< Create a PC Table.
217
56.8k
CODEGENOPT(SanitizeCoverageNoPrune, 1, 0) ///< Disable coverage pruning.
218
56.8k
CODEGENOPT(SanitizeCoverageStackDepth, 1, 0) ///< Enable max stack depth tracing
219
56.8k
CODEGENOPT(SanitizeStats     , 1, 0) ///< Collect statistics for sanitizers.
220
56.8k
CODEGENOPT(SimplifyLibCalls  , 1, 1) ///< Set when -fbuiltin is enabled.
221
56.8k
CODEGENOPT(SoftFloat         , 1, 0) ///< -soft-float.
222
56.8k
CODEGENOPT(SpeculativeLoadHardening, 1, 0) ///< Enable speculative load hardening.
223
56.8k
CODEGENOPT(FineGrainedBitfieldAccesses, 1, 0) ///< Enable fine-grained bitfield accesses.
224
56.8k
CODEGENOPT(StrictEnums       , 1, 0) ///< Optimize based on strict enum definition.
225
56.8k
CODEGENOPT(StrictVTablePointers, 1, 0) ///< Optimize based on the strict vtable pointers
226
56.8k
CODEGENOPT(TimePasses        , 1, 0) ///< Set when -ftime-report is enabled.
227
56.8k
CODEGENOPT(TimeTrace         , 1, 0) ///< Set when -ftime-trace is enabled.
228
56.8k
CODEGENOPT(UnrollLoops       , 1, 0) ///< Control whether loops are unrolled.
229
56.8k
CODEGENOPT(RerollLoops       , 1, 0) ///< Control whether loops are rerolled.
230
56.8k
CODEGENOPT(NoUseJumpTables   , 1, 0) ///< Set when -fno-jump-tables is enabled.
231
56.8k
CODEGENOPT(UnsafeFPMath      , 1, 0) ///< Allow unsafe floating point optzns.
232
56.8k
CODEGENOPT(UnwindTables      , 1, 0) ///< Emit unwind tables.
233
56.8k
CODEGENOPT(VectorizeLoop     , 1, 0) ///< Run loop vectorizer.
234
56.8k
CODEGENOPT(VectorizeSLP      , 1, 0) ///< Run SLP vectorizer.
235
56.8k
CODEGENOPT(ProfileSampleAccurate, 1, 0) ///< Sample profile is accurate.
236
56.8k
237
56.8k
  /// Attempt to use register sized accesses to bit-fields in structures, when
238
56.8k
  /// possible.
239
56.8k
CODEGENOPT(UseRegisterSizedBitfieldAccess , 1, 0)
240
56.8k
241
56.8k
CODEGENOPT(VerifyModule      , 1, 1) ///< Control whether the module should be run
242
56.8k
                                     ///< through the LLVM Verifier.
243
56.8k
244
56.8k
CODEGENOPT(StackRealignment  , 1, 0) ///< Control whether to force stack
245
56.8k
                                     ///< realignment.
246
56.8k
CODEGENOPT(UseInitArray      , 1, 0) ///< Control whether to use .init_array or
247
56.8k
                                     ///< .ctors.
248
56.8k
VALUE_CODEGENOPT(StackAlignment    , 32, 0) ///< Overrides default stack
249
56.8k
                                            ///< alignment, if not 0.
250
56.8k
VALUE_CODEGENOPT(StackProbeSize    , 32, 4096) ///< Overrides default stack
251
56.8k
                                               ///< probe size, even if 0.
252
56.8k
CODEGENOPT(NoStackArgProbe, 1, 0) ///< Set when -mno-stack-arg-probe is used
253
56.8k
CODEGENOPT(DebugColumnInfo, 1, 0) ///< Whether or not to use column information
254
56.8k
                                  ///< in debug info.
255
56.8k
256
56.8k
CODEGENOPT(DebugTypeExtRefs, 1, 0) ///< Whether or not debug info should contain
257
56.8k
                                   ///< external references to a PCH or module.
258
56.8k
259
56.8k
CODEGENOPT(DebugExplicitImport, 1, 0)  ///< Whether or not debug info should
260
56.8k
                                       ///< contain explicit imports for
261
56.8k
                                       ///< anonymous namespaces
262
56.8k
263
56.8k
CODEGENOPT(SplitDwarfInlining, 1, 1) ///< Whether to include inlining info in the
264
56.8k
                                     ///< skeleton CU to allow for symbolication
265
56.8k
                                     ///< of inline stack frames without .dwo files.
266
56.8k
CODEGENOPT(DebugFwdTemplateParams, 1, 0) ///< Whether to emit complete
267
56.8k
                                         ///< template parameter descriptions in
268
56.8k
                                         ///< forward declarations (versus just
269
56.8k
                                         ///< including them in the name).
270
56.8k
271
56.8k
CODEGENOPT(EmitLLVMUseLists, 1, 0) ///< Control whether to serialize use-lists.
272
56.8k
273
56.8k
CODEGENOPT(WholeProgramVTables, 1, 0) ///< Whether to apply whole-program
274
56.8k
                                      ///  vtable optimization.
275
56.8k
276
56.8k
/// Whether to use public LTO visibility for entities in std and stdext
277
56.8k
/// namespaces. This is enabled by clang-cl's /MT and /MTd flags.
278
56.8k
CODEGENOPT(LTOVisibilityPublicStd, 1, 0)
279
56.8k
280
56.8k
/// The user specified number of registers to be used for integral arguments,
281
56.8k
/// or 0 if unspecified.
282
56.8k
VALUE_CODEGENOPT(NumRegisterParameters, 32, 0)
283
56.8k
284
56.8k
/// The lower bound for a buffer to be considered for stack protection.
285
56.8k
VALUE_CODEGENOPT(SSPBufferSize, 32, 0)
286
56.8k
287
56.8k
/// The kind of generated debug info.
288
56.8k
ENUM_CODEGENOPT(DebugInfo, codegenoptions::DebugInfoKind, 3, codegenoptions::NoDebugInfo)
289
56.8k
290
56.8k
/// Whether to generate macro debug info.
291
56.8k
CODEGENOPT(MacroDebugInfo, 1, 0)
292
56.8k
293
56.8k
/// Tune the debug info for this debugger.
294
56.8k
ENUM_CODEGENOPT(DebuggerTuning, llvm::DebuggerKind, 2,
295
56.8k
                llvm::DebuggerKind::Default)
296
56.8k
297
56.8k
/// Dwarf version. Version zero indicates to LLVM that no DWARF should be
298
56.8k
/// emitted.
299
56.8k
VALUE_CODEGENOPT(DwarfVersion, 3, 0)
300
56.8k
301
56.8k
/// Whether we should emit CodeView debug information. It's possible to emit
302
56.8k
/// CodeView and DWARF into the same object.
303
56.8k
CODEGENOPT(EmitCodeView, 1, 0)
304
56.8k
305
56.8k
/// Whether to emit the .debug$H section containing hashes of CodeView types.
306
56.8k
CODEGENOPT(CodeViewGHash, 1, 0)
307
56.8k
308
56.8k
/// The kind of inlining to perform.
309
56.8k
ENUM_CODEGENOPT(Inlining, InliningMethod, 2, NormalInlining)
310
56.8k
311
56.8k
// Vector functions library to use.
312
56.8k
ENUM_CODEGENOPT(VecLib, VectorLibrary, 2, NoLibrary)
313
56.8k
314
56.8k
/// The default TLS model to use.
315
56.8k
ENUM_CODEGENOPT(DefaultTLSModel, TLSModel, 2, GeneralDynamicTLSModel)
316
56.8k
317
56.8k
/// Number of path components to strip when emitting checks. (0 == full
318
56.8k
/// filename)
319
56.8k
VALUE_CODEGENOPT(EmitCheckPathComponentsToStrip, 32, 0)
320
56.8k
321
56.8k
/// Whether to report the hotness of the code region for optimization remarks.
322
56.8k
CODEGENOPT(DiagnosticsWithHotness, 1, 0)
323
56.8k
324
56.8k
/// The minimum hotness value a diagnostic needs in order to be included in
325
56.8k
/// optimization diagnostics.
326
56.8k
VALUE_CODEGENOPT(DiagnosticsHotnessThreshold, 32, 0)
327
56.8k
328
56.8k
/// Whether copy relocations support is available when building as PIE.
329
56.8k
CODEGENOPT(PIECopyRelocations, 1, 0)
330
56.8k
331
56.8k
/// Whether we should use the undefined behaviour optimization for control flow
332
56.8k
/// paths that reach the end of a function without executing a required return.
333
56.8k
CODEGENOPT(StrictReturn, 1, 1)
334
56.8k
335
56.8k
/// Whether emit extra debug info for sample pgo profile collection.
336
56.8k
CODEGENOPT(DebugInfoForProfiling, 1, 0)
337
56.8k
338
56.8k
/// Whether 3-component vector type is preserved.
339
56.8k
CODEGENOPT(PreserveVec3Type, 1, 0)
340
56.8k
341
56.8k
/// Whether to emit .debug_gnu_pubnames section instead of .debug_pubnames.
342
56.8k
CODEGENOPT(DebugNameTable, 2, 0)
343
56.8k
344
56.8k
/// Whether to use DWARF base address specifiers in .debug_ranges.
345
56.8k
CODEGENOPT(DebugRangesBaseAddress, 1, 0)
346
56.8k
347
56.8k
CODEGENOPT(NoPLT, 1, 0)
348
56.8k
349
56.8k
/// Whether to embed source in DWARF debug line section.
350
56.8k
CODEGENOPT(EmbedSource, 1, 0)
351
56.8k
352
56.8k
/// Whether to emit all vtables
353
56.8k
CODEGENOPT(ForceEmitVTables, 1, 0)
354
56.8k
355
56.8k
/// Whether to emit an address-significance table into the object file.
356
56.8k
CODEGENOPT(Addrsig, 1, 0)
357
56.8k
358
56.8k
ENUM_CODEGENOPT(SignReturnAddress, SignReturnAddressScope, 2, None)
359
56.8k
ENUM_CODEGENOPT(SignReturnAddressKey, SignReturnAddressKeyValue, 1, AKey)
360
56.8k
CODEGENOPT(BranchTargetEnforcement, 1, 0)
361
56.8k
362
56.8k
/// Whether to emit unused static constants.
363
56.8k
CODEGENOPT(KeepStaticConsts, 1, 0)
364
56.8k
365
56.8k
#undef CODEGENOPT
366
56.8k
#undef ENUM_CODEGENOPT
367
56.8k
#undef VALUE_CODEGENOPT
368
56.8k