enum SectionKind::Kind

Declared at: llvm/include/llvm/MC/SectionKind.h:23

Enumerators

NameValueComment
Metadata0Metadata - Debug info sections or other metadata.
Exclude1Exclude - This section will be excluded from the final executable or shared library. Only valid for ELF / COFF targets.
Text2Text - Text section, used for functions and other executable code.
ExecuteOnly3ExecuteOnly, Text section that is not readable.
ReadOnly4ReadOnly - Data that is never written to at program runtime by the program or the dynamic linker. Things in the top-level readonly SectionKind are not mergeable.
Mergeable1ByteCString5Mergeable1ByteCString - 1 byte mergable, null terminated, string.
Mergeable2ByteCString6Mergeable2ByteCString - 2 byte mergable, null terminated, string.
Mergeable4ByteCString7Mergeable4ByteCString - 4 byte mergable, null terminated, string.
MergeableConst48MergeableConst4 - This is a section used by 4-byte constants, for example, floats.
MergeableConst89MergeableConst8 - This is a section used by 8-byte constants, for example, doubles.
MergeableConst1610MergeableConst16 - This is a section used by 16-byte constants, for example, vectors.
MergeableConst3211MergeableConst32 - This is a section used by 32-byte constants, for example, vectors.
ThreadBSS12ThreadBSS - Zero-initialized TLS data objects.
ThreadData13ThreadData - Initialized TLS data objects.
ThreadBSSLocal14ThreadBSSLocal - Zero-initialized TLS data objects with local linkage.
BSS15BSS - Zero initialized writeable data.
BSSLocal16BSSLocal - This is BSS (zero initialized and writable) data which has local linkage.
BSSExtern17BSSExtern - This is BSS data with normal external linkage.
Common18Common - Data with common linkage. These represent tentative definitions, which always have a zero initializer and are never marked 'constant'.
Data19This is writeable data that has a non-zero initializer.
ReadOnlyWithRel20ReadOnlyWithRel - These are global variables that are never written to by the program, but that have relocations, so they must be stuck in a writeable section so that the dynamic linker can write to them. If it chooses to, the dynamic linker can mark the pages these globals end up on as read-only after it is done with its relocation phase.