@@ -28,12 +28,8 @@ CODEGENOPT(Name, Bits, Default)
28
28
#endif
29
29
30
30
CODEGENOPT(DisableIntegratedAS, 1, 0) ///< -no-integrated-as
31
- ENUM_CODEGENOPT(CompressDebugSections, llvm::DebugCompressionType, 2,
32
- llvm::DebugCompressionType::None)
33
31
CODEGENOPT(RelaxELFRelocations, 1, 1) ///< -Wa,-mrelax-relocations={yes,no}
34
32
CODEGENOPT(AsmVerbose , 1, 0) ///< -dA, -fverbose-asm.
35
- CODEGENOPT(Dwarf64 , 1, 0) ///< -gdwarf64.
36
- CODEGENOPT(Dwarf32 , 1, 1) ///< -gdwarf32.
37
33
CODEGENOPT(PreserveAsmComments, 1, 1) ///< -dA, -fno-preserve-as-comments.
38
34
CODEGENOPT(AssumeSaneOperatorNew , 1, 1) ///< implicit __attribute__((malloc)) operator new
39
35
CODEGENOPT(AssumeUniqueVTables , 1, 1) ///< Assume a class has only one vtable.
@@ -72,10 +68,6 @@ CODEGENOPT(DebugPassManager, 1, 0) ///< Prints debug information for the new
72
68
CODEGENOPT(DisableRedZone , 1, 0) ///< Set when -mno-red-zone is enabled.
73
69
CODEGENOPT(EmitCallSiteInfo, 1, 0) ///< Emit call site info only in the case of
74
70
///< '-g' + 'O>0' level.
75
- CODEGENOPT(EnableDIPreservationVerify, 1, 0) ///< Enable di preservation verify
76
- ///< each (it means check
77
- ///< the original debug info
78
- ///< metadata preservation).
79
71
CODEGENOPT(IndirectTlsSegRefs, 1, 0) ///< Set when -mno-tls-direct-seg-refs
80
72
///< is specified.
81
73
CODEGENOPT(DisableTailCalls , 1, 0) ///< Do not emit tail calls.
@@ -112,16 +104,10 @@ CODEGENOPT(IndirectBranchCSPrefix, 1, 0) ///< if -mindirect-branch-cs-prefix
112
104
CODEGENOPT(XRayInstrumentFunctions , 1, 0) ///< Set when -fxray-instrument is
113
105
///< enabled.
114
106
CODEGENOPT(StackSizeSection , 1, 0) ///< Set when -fstack-size-section is enabled.
115
- CODEGENOPT(ForceDwarfFrameSection , 1, 0) ///< Set when -fforce-dwarf-frame is
116
- ///< enabled.
117
107
118
108
///< Set when -femit-compact-unwind-non-canonical is enabled.
119
109
CODEGENOPT(EmitCompactUnwindNonCanonical, 1, 0)
120
110
121
- ///< Set when -femit-dwarf-unwind is passed.
122
- ENUM_CODEGENOPT(EmitDwarfUnwind, llvm::EmitDwarfUnwindType, 2,
123
- llvm::EmitDwarfUnwindType::Default)
124
-
125
111
///< Set when -fxray-always-emit-customevents is enabled.
126
112
CODEGENOPT(XRayAlwaysEmitCustomEvents , 1, 0)
127
113
@@ -177,17 +163,13 @@ CODEGENOPT(MergeAllConstants , 1, 1) ///< Merge identical constants.
177
163
CODEGENOPT(MergeFunctions , 1, 0) ///< Set when -fmerge-functions is enabled.
178
164
CODEGENOPT(SplitColdCode , 1, 0) ///< Set when -fsplit-cold-code is enabled.
179
165
CODEGENOPT(NoCommon , 1, 0) ///< Set when -fno-common or C++ is enabled.
180
- CODEGENOPT(NoDwarfDirectoryAsm , 1, 0) ///< Set when -fno-dwarf-directory-asm is
181
- ///< enabled.
182
166
CODEGENOPT(NoExecStack , 1, 0) ///< Set when -Wa,--noexecstack is enabled.
183
167
CODEGENOPT(FatalWarnings , 1, 0) ///< Set when -Wa,--fatal-warnings is
184
168
///< enabled.
185
169
CODEGENOPT(NoWarn , 1, 0) ///< Set when -Wa,--no-warn is enabled.
186
170
CODEGENOPT(NoTypeCheck , 1, 0) ///< Set when -Wa,--no-type-check is enabled.
187
171
CODEGENOPT(MisExpect , 1, 0) ///< Set when -Wmisexpect is enabled
188
172
CODEGENOPT(EnableSegmentedStacks , 1, 0) ///< Set when -fsplit-stack is enabled.
189
- CODEGENOPT(NoInlineLineTables, 1, 0) ///< Whether debug info should contain
190
- ///< inline line tables.
191
173
CODEGENOPT(StackClashProtector, 1, 0) ///< Set when -fstack-clash-protection is enabled.
192
174
CODEGENOPT(NoImplicitFloat , 1, 0) ///< Set when -mno-implicit-float is enabled.
193
175
CODEGENOPT(NullPointerIsValid , 1, 0) ///< Assume Null pointer deference is defined.
@@ -340,37 +322,6 @@ VALUE_CODEGENOPT(StackProbeSize , 32, 4096) ///< Overrides default stack
340
322
///< probe size, even if 0.
341
323
VALUE_CODEGENOPT(WarnStackSize , 32, UINT_MAX) ///< Set via -fwarn-stack-size.
342
324
CODEGENOPT(NoStackArgProbe, 1, 0) ///< Set when -mno-stack-arg-probe is used
343
- CODEGENOPT(DebugStrictDwarf, 1, 1) ///< Whether or not to use strict DWARF info.
344
-
345
- /// Control the Assignment Tracking debug info feature.
346
- ENUM_CODEGENOPT(AssignmentTrackingMode, AssignmentTrackingOpts, 2, AssignmentTrackingOpts::Disabled)
347
-
348
- CODEGENOPT(DebugColumnInfo, 1, 0) ///< Whether or not to use column information
349
- ///< in debug info.
350
-
351
- CODEGENOPT(DebugTypeExtRefs, 1, 0) ///< Whether or not debug info should contain
352
- ///< external references to a PCH or module.
353
-
354
- CODEGENOPT(DebugExplicitImport, 1, 0) ///< Whether or not debug info should
355
- ///< contain explicit imports for
356
- ///< anonymous namespaces
357
-
358
- /// Set debug info source file hashing algorithm.
359
- ENUM_CODEGENOPT(DebugSrcHash, DebugSrcHashKind, 2, DSH_MD5)
360
-
361
- CODEGENOPT(SplitDwarfInlining, 1, 1) ///< Whether to include inlining info in the
362
- ///< skeleton CU to allow for symbolication
363
- ///< of inline stack frames without .dwo files.
364
- CODEGENOPT(DebugFwdTemplateParams, 1, 0) ///< Whether to emit complete
365
- ///< template parameter descriptions in
366
- ///< forward declarations (versus just
367
- ///< including them in the name).
368
- ENUM_CODEGENOPT(DebugSimpleTemplateNames, llvm::codegenoptions::DebugTemplateNamesKind, 2, llvm::codegenoptions::DebugTemplateNamesKind::Full) ///< Whether to emit template parameters
369
- ///< in the textual names of template
370
- ///< specializations.
371
- ///< Implies DebugFwdTemplateNames to
372
- ///< allow decorated names to be
373
- ///< reconstructed when needed.
374
325
CODEGENOPT(EmitLLVMUseLists, 1, 0) ///< Control whether to serialize use-lists.
375
326
376
327
CODEGENOPT(WholeProgramVTables, 1, 0) ///< Whether to apply whole-program
@@ -394,33 +345,6 @@ VALUE_CODEGENOPT(SmallDataLimit, 32, 0)
394
345
/// The lower bound for a buffer to be considered for stack protection.
395
346
VALUE_CODEGENOPT(SSPBufferSize, 32, 0)
396
347
397
- /// The kind of generated debug info.
398
- ENUM_CODEGENOPT(DebugInfo, llvm::codegenoptions::DebugInfoKind, 4, llvm::codegenoptions::NoDebugInfo)
399
-
400
- /// Whether to make debug info reproducible.
401
- CODEGENOPT(ReproducibleDebugInfo, 1, 0)
402
-
403
- /// Whether to generate macro debug info.
404
- CODEGENOPT(MacroDebugInfo, 1, 0)
405
-
406
- /// Tune the debug info for this debugger.
407
- ENUM_CODEGENOPT(DebuggerTuning, llvm::DebuggerKind, 3,
408
- llvm::DebuggerKind::Default)
409
-
410
- /// Dwarf version. Version zero indicates to LLVM that no DWARF should be
411
- /// emitted.
412
- VALUE_CODEGENOPT(DwarfVersion, 3, 0)
413
-
414
- /// Whether we should emit CodeView debug information. It's possible to emit
415
- /// CodeView and DWARF into the same object.
416
- CODEGENOPT(EmitCodeView, 1, 0)
417
-
418
- /// Whether to emit the .debug$H section containing hashes of CodeView types.
419
- CODEGENOPT(CodeViewGHash, 1, 0)
420
-
421
- /// Whether to emit the compiler path and command line into the CodeView debug information.
422
- CODEGENOPT(CodeViewCommandLine, 1, 0)
423
-
424
348
/// The kind of inlining to perform.
425
349
ENUM_CODEGENOPT(Inlining, InliningMethod, 2, NormalInlining)
426
350
@@ -453,26 +377,14 @@ CODEGENOPT(DirectAccessExternalData, 1, 0)
453
377
/// paths that reach the end of a function without executing a required return.
454
378
CODEGENOPT(StrictReturn, 1, 1)
455
379
456
- /// Whether emit extra debug info for sample pgo profile collection.
457
- CODEGENOPT(DebugInfoForProfiling, 1, 0)
458
-
459
380
/// Whether emit pseudo probes for sample pgo profile collection.
460
381
CODEGENOPT(PseudoProbeForProfiling, 1, 0)
461
382
462
383
/// Whether 3-component vector type is preserved.
463
384
CODEGENOPT(PreserveVec3Type, 1, 0)
464
385
465
- /// Whether to emit .debug_gnu_pubnames section instead of .debug_pubnames.
466
- CODEGENOPT(DebugNameTable, 2, 0)
467
-
468
- /// Whether to use DWARF base address specifiers in .debug_ranges.
469
- CODEGENOPT(DebugRangesBaseAddress, 1, 0)
470
-
471
386
CODEGENOPT(NoPLT, 1, 0)
472
387
473
- /// Whether to embed source in DWARF debug line section.
474
- CODEGENOPT(EmbedSource, 1, 0)
475
-
476
388
/// Whether to emit all vtables
477
389
CODEGENOPT(ForceEmitVTables, 1, 0)
478
390
@@ -527,6 +439,9 @@ ENUM_CODEGENOPT(CASObjMode, llvm::CASBackendMode,
527
439
/// non-deleting destructors. (No effect on Microsoft ABI.)
528
440
CODEGENOPT(CtorDtorReturnThis, 1, 0)
529
441
442
+ /// FIXME: Make DebugOptions its own top-level .def file.
443
+ #include "DebugOptions.def"
444
+
530
445
#undef CODEGENOPT
531
446
#undef ENUM_CODEGENOPT
532
447
#undef VALUE_CODEGENOPT
0 commit comments