| Index: include/llvm/Support/ELF.h
|
| ===================================================================
|
| --- include/llvm/Support/ELF.h (revision 152141)
|
| +++ include/llvm/Support/ELF.h (working copy)
|
| @@ -734,6 +734,9 @@
|
| SHT_GROUP = 17, // Section group.
|
| SHT_SYMTAB_SHNDX = 18, // Indices for SHN_XINDEX entries.
|
| SHT_LOOS = 0x60000000, // Lowest operating system-specific type.
|
| + SHT_GNU_verdef = 0x6ffffffd, // GNU version definitions.
|
| + SHT_GNU_verneed = 0x6ffffffe, // GNU version references.
|
| + SHT_GNU_versym = 0x6fffffff, // GNU symbol versions table.
|
| SHT_HIOS = 0x6fffffff, // Highest operating system-specific type.
|
| SHT_LOPROC = 0x70000000, // Lowest processor architecture-specific type.
|
| // Fixme: All this is duplicated in MCSectionELF. Why??
|
| @@ -1102,6 +1105,33 @@
|
| DF_STATIC_TLS = 0x10 // Reject attempts to load dynamically.
|
| };
|
|
|
| +// ElfXX_VerDef structure version (GNU versioning)
|
| +enum {
|
| + VER_DEF_NONE = 0,
|
| + VER_DEF_CURRENT = 1
|
| +};
|
| +
|
| +// VerDef Flags (ElfXX_VerDef::vd_flags)
|
| +enum {
|
| + VER_FLG_BASE = 0x1,
|
| + VER_FLG_WEAK = 0x2,
|
| + VER_FLG_INFO = 0x4
|
| +};
|
| +
|
| +// Special constants for the version table. (SHT_GNU_versym/.gnu.version)
|
| +enum {
|
| + VER_NDX_LOCAL = 0, // Unversioned local symbol
|
| + VER_NDX_GLOBAL = 1, // Unversioned global symbol
|
| + VERSYM_VERSION = 0x7fff, // Version Index mask
|
| + VERSYM_HIDDEN = 0x8000 // Hidden bit (non-default version)
|
| +};
|
| +
|
| +// ElfXX_VerNeed structure version (GNU versioning)
|
| +enum {
|
| + VER_NEED_NONE = 0,
|
| + VER_NEED_CURRENT = 1
|
| +};
|
| +
|
| } // end namespace ELF
|
|
|
| } // end namespace llvm
|
|
|