189#define SYMS_ELF_ST_INFO(b,t) (((b) << 4) + ((t) & 0xF))
190#define SYMS_ELF_ST_BIND(x) ((x) >> 4)
191#define SYMS_ELF_ST_TYPE(x) ((x) & 0xF)
192#define SYMS_ELF_ST_VISIBILITY(v) ((v) & 0x3)
220#define SYMS_ELF32_R_SYM(x) ((x) >> 8)
221#define SYMS_ELF32_R_TYPE(x) ((x) & 0xFF)
223#define SYMS_ELF64_R_INFO(s,t) (((SYMS_U64)(s) << 32) | (SYMS_U64)t)
224#define SYMS_ELF64_R_SYM(x) ((x) >> 32)
225#define SYMS_ELF64_R_TYPE(x) ((x) & 0xffffffff)
228#define SYMS_ELF_EXTERNAL_VERSYM_HIDDEN 0x8000
229#define SYMS_ELF_EXTERNAL_VERSYM_MASK 0x7FFF
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition syms_elf.h:127
SYMS_U32 a_type
Definition syms_elf.h:128
SYMS_U32 a_val
Definition syms_elf.h:129
Definition syms_elf.h:132
SYMS_U64 a_type
Definition syms_elf.h:133
SYMS_U64 a_val
Definition syms_elf.h:134
Definition syms_elf.h:303
SYMS_U32 ch_addr_align
Definition syms_elf.h:306
SYMS_U32 ch_size
Definition syms_elf.h:305
SYMS_U32 ch_type
Definition syms_elf.h:304
Definition syms_elf.h:310
SYMS_U64 ch_addr_align
Definition syms_elf.h:314
SYMS_U64 ch_size
Definition syms_elf.h:313
SYMS_U32 ch_type
Definition syms_elf.h:311
SYMS_U32 ch_reserved
Definition syms_elf.h:312
Definition syms_elf.h:142
SYMS_U32 tag
Definition syms_elf.h:143
SYMS_U32 val
Definition syms_elf.h:144
Definition syms_elf.h:147
SYMS_U64 tag
Definition syms_elf.h:148
SYMS_U64 val
Definition syms_elf.h:149
SYMS_U32 e_version
Definition syms_elf.h:53
SYMS_U32 e_phoff
Definition syms_elf.h:55
SYMS_U16 e_shnum
Definition syms_elf.h:62
SYMS_U32 e_shoff
Definition syms_elf.h:56
SYMS_U16 e_type
Definition syms_elf.h:51
SYMS_U16 e_shstrndx
Definition syms_elf.h:63
SYMS_U16 e_ehsize
Definition syms_elf.h:58
SYMS_U16 e_machine
Definition syms_elf.h:52
SYMS_U32 e_flags
Definition syms_elf.h:57
SYMS_U8 e_ident[SYMS_ElfIdentifier_NIDENT]
Definition syms_elf.h:50
SYMS_U32 e_entry
Definition syms_elf.h:54
SYMS_U16 e_shentsize
Definition syms_elf.h:61
SYMS_U16 e_phentsize
Definition syms_elf.h:59
SYMS_U16 e_phnum
Definition syms_elf.h:60
SYMS_U64 e_shoff
Definition syms_elf.h:37
SYMS_U64 e_entry
Definition syms_elf.h:35
SYMS_U64 e_phoff
Definition syms_elf.h:36
SYMS_U16 e_shstrndx
Definition syms_elf.h:44
SYMS_U16 e_ehsize
Definition syms_elf.h:39
SYMS_U16 e_phnum
Definition syms_elf.h:41
SYMS_U8 e_ident[SYMS_ElfIdentifier_NIDENT]
Definition syms_elf.h:31
SYMS_U16 e_machine
Definition syms_elf.h:33
SYMS_U16 e_type
Definition syms_elf.h:32
SYMS_U32 e_flags
Definition syms_elf.h:38
SYMS_U16 e_shentsize
Definition syms_elf.h:42
SYMS_U16 e_phentsize
Definition syms_elf.h:40
SYMS_U32 e_version
Definition syms_elf.h:34
SYMS_U16 e_shnum
Definition syms_elf.h:43
Definition syms_elf.h:245
SYMS_U32 vda_next
Definition syms_elf.h:247
SYMS_U32 vda_name
Definition syms_elf.h:246
Definition syms_elf.h:233
SYMS_U16 vd_ndx
Definition syms_elf.h:236
SYMS_U16 vd_version
Definition syms_elf.h:234
SYMS_U16 vd_flags
Definition syms_elf.h:235
SYMS_U32 vd_hash
Definition syms_elf.h:238
SYMS_U32 vd_aux
Definition syms_elf.h:239
SYMS_U16 vd_cnt
Definition syms_elf.h:237
SYMS_U32 vd_next
Definition syms_elf.h:240
Definition syms_elf.h:262
SYMS_U32 vna_hash
Definition syms_elf.h:263
SYMS_U32 vna_name
Definition syms_elf.h:266
SYMS_U16 vna_other
Definition syms_elf.h:265
SYMS_U32 vna_next
Definition syms_elf.h:267
SYMS_U16 vna_flags
Definition syms_elf.h:264
Definition syms_elf.h:252
SYMS_U16 vn_version
Definition syms_elf.h:253
SYMS_U16 vn_cnt
Definition syms_elf.h:254
SYMS_U32 vn_next
Definition syms_elf.h:257
SYMS_U32 vn_file
Definition syms_elf.h:255
SYMS_U32 vn_aux
Definition syms_elf.h:256
Definition syms_elf.h:272
SYMS_U16 vs_vers
Definition syms_elf.h:273
Definition syms_elf.h:152
SYMS_U32 name
Definition syms_elf.h:154
SYMS_U32 ld
Definition syms_elf.h:155
SYMS_U32 base
Definition syms_elf.h:153
SYMS_U32 next
Definition syms_elf.h:156
Definition syms_elf.h:159
SYMS_U64 next
Definition syms_elf.h:163
SYMS_U64 base
Definition syms_elf.h:160
SYMS_U64 ld
Definition syms_elf.h:162
SYMS_U64 name
Definition syms_elf.h:161
Definition syms_elf.h:277
SYMS_U32 name_size
Definition syms_elf.h:278
SYMS_U32 type
Definition syms_elf.h:280
SYMS_U32 desc_size
Definition syms_elf.h:279
Definition syms_elf.h:111
SYMS_U32 p_vaddr
Definition syms_elf.h:114
SYMS_U32 p_flags
Definition syms_elf.h:118
SYMS_U32 p_filesz
Definition syms_elf.h:116
SYMS_U32 p_paddr
Definition syms_elf.h:115
SYMS_U32 p_align
Definition syms_elf.h:119
SYMS_U32 p_type
Definition syms_elf.h:112
SYMS_U32 p_offset
Definition syms_elf.h:113
SYMS_U32 p_memsz
Definition syms_elf.h:117
SYMS_U32 p_flags
Definition syms_elf.h:100
SYMS_U64 p_align
Definition syms_elf.h:106
SYMS_U64 p_offset
Definition syms_elf.h:101
SYMS_U32 p_type
Definition syms_elf.h:99
SYMS_U64 p_memsz
Definition syms_elf.h:105
SYMS_U64 p_vaddr
Definition syms_elf.h:102
SYMS_U64 p_filesz
Definition syms_elf.h:104
SYMS_U64 p_paddr
Definition syms_elf.h:103
Definition syms_elf.h:195
SYMS_U32 r_info
Definition syms_elf.h:197
SYMS_U32 r_offset
Definition syms_elf.h:196
Definition syms_elf.h:208
SYMS_U64 r_offset
Definition syms_elf.h:209
SYMS_U64 r_info
Definition syms_elf.h:210
Definition syms_elf.h:201
SYMS_U32 r_info
Definition syms_elf.h:203
SYMS_U32 r_offset
Definition syms_elf.h:202
SYMS_S32 r_addend
Definition syms_elf.h:204
Definition syms_elf.h:214
SYMS_U64 r_info
Definition syms_elf.h:216
SYMS_U64 r_offset
Definition syms_elf.h:215
SYMS_S64 r_addend
Definition syms_elf.h:217
SYMS_U32 sh_addr
Definition syms_elf.h:87
SYMS_U32 sh_info
Definition syms_elf.h:91
SYMS_U32 sh_entsize
Definition syms_elf.h:93
SYMS_U32 sh_link
Definition syms_elf.h:90
SYMS_U32 sh_flags
Definition syms_elf.h:86
SYMS_U32 sh_type
Definition syms_elf.h:85
SYMS_U32 sh_offset
Definition syms_elf.h:88
SYMS_U32 sh_addralign
Definition syms_elf.h:92
SYMS_U32 sh_size
Definition syms_elf.h:89
SYMS_U32 sh_name
Definition syms_elf.h:84
SYMS_U64 sh_flags
Definition syms_elf.h:71
SYMS_U64 sh_size
Definition syms_elf.h:74
SYMS_U32 sh_name
Definition syms_elf.h:69
SYMS_U32 sh_type
Definition syms_elf.h:70
SYMS_U32 sh_info
Definition syms_elf.h:76
SYMS_U64 sh_addr
Definition syms_elf.h:72
SYMS_U32 sh_link
Definition syms_elf.h:75
SYMS_U64 sh_offset
Definition syms_elf.h:73
SYMS_U64 sh_addralign
Definition syms_elf.h:77
SYMS_U64 sh_entsize
Definition syms_elf.h:78
Definition syms_elf.h:170
SYMS_U8 st_info
Definition syms_elf.h:174
SYMS_U32 st_size
Definition syms_elf.h:173
SYMS_U32 st_value
Definition syms_elf.h:172
SYMS_U16 st_shndx
Definition syms_elf.h:176
SYMS_U8 st_other
Definition syms_elf.h:175
SYMS_U32 st_name
Definition syms_elf.h:171
Definition syms_elf.h:180
SYMS_U16 st_shndx
Definition syms_elf.h:184
SYMS_U32 st_name
Definition syms_elf.h:181
SYMS_U64 st_size
Definition syms_elf.h:186
SYMS_U8 st_other
Definition syms_elf.h:183
SYMS_U8 st_info
Definition syms_elf.h:182
SYMS_U64 st_value
Definition syms_elf.h:185
Definition syms_base.h:296
#define SYMS_API
Definition syms_base.h:29
#define SYMS_C_LINKAGE_BEGIN
Definition syms_base.h:37
#define SYMS_C_LINKAGE_END
Definition syms_base.h:38
int32_t SYMS_S32
Definition syms_crt_overrides.h:34
uint32_t SYMS_U32
Definition syms_crt_overrides.h:38
uint64_t SYMS_U64
Definition syms_crt_overrides.h:39
uint16_t SYMS_U16
Definition syms_crt_overrides.h:37
int64_t SYMS_S64
Definition syms_crt_overrides.h:35
uint8_t SYMS_U8
Definition syms_crt_overrides.h:36
SYMS_ElfCompressTypeEnum
Definition syms_elf.h:290
@ SYMS_ElfCompressType_LoProc
Definition syms_elf.h:298
@ SYMS_ElfCompressType_HiProc
Definition syms_elf.h:299
@ SYMS_ElfCompressType_LoOs
Definition syms_elf.h:295
@ SYMS_ElfCompressType_ZLib
Definition syms_elf.h:292
@ SYMS_ElfCompressType_ZStd
Definition syms_elf.h:293
@ SYMS_ElfCompressType_HiOs
Definition syms_elf.h:296
@ SYMS_ElfCompressType_None
Definition syms_elf.h:291
SYMS_API SYMS_ElfPhdr64 syms_elf_phdr64_from_phdr32(SYMS_ElfPhdr32 h32)
Definition syms_elf.c:53
SYMS_API SYMS_U32 syms_elf_gnu_debuglink_crc32(SYMS_U32 crc, SYMS_String8 data)
Definition syms_elf.c:116
SYMS_API SYMS_ElfRela64 syms_elf_rela64_from_rela32(SYMS_ElfRela32 rela32)
Definition syms_elf.c:100
SYMS_API SYMS_ElfShdr64 syms_elf_shdr64_from_shdr32(SYMS_ElfShdr32 h32)
Definition syms_elf.c:36
SYMS_API SYMS_ElfSym64 syms_elf_sym64_from_sym32(SYMS_ElfSym32 sym32)
Definition syms_elf.c:76
SYMS_API SYMS_ElfDyn64 syms_elf_dyn64_from_dyn32(SYMS_ElfDyn32 h32)
Definition syms_elf.c:68
SYMS_API SYMS_ElfRel64 syms_elf_rel64_from_rel32(SYMS_ElfRel32 rel32)
Definition syms_elf.c:89
SYMS_U8 SYMS_ElfCompressType
Definition syms_elf.h:288
SYMS_C_LINKAGE_BEGIN SYMS_API SYMS_ElfEhdr64 syms_elf_ehdr64_from_ehdr32(SYMS_ElfEhdr32 h32)
Definition syms_elf.c:15
SYMS_ElfIdentifier
Definition syms_elf.h:15
@ SYMS_ElfIdentifier_MAG3
Definition syms_elf.h:19
@ SYMS_ElfIdentifier_MAG1
Definition syms_elf.h:17
@ SYMS_ElfIdentifier_OSABI
Definition syms_elf.h:23
@ SYMS_ElfIdentifier_VERSION
Definition syms_elf.h:22
@ SYMS_ElfIdentifier_MAG0
Definition syms_elf.h:16
@ SYMS_ElfIdentifier_MAG2
Definition syms_elf.h:18
@ SYMS_ElfIdentifier_CLASS
Definition syms_elf.h:20
@ SYMS_ElfIdentfiier_ABIVERSION
Definition syms_elf.h:24
@ SYMS_ElfIdentifier_NIDENT
Definition syms_elf.h:25
@ SYMS_ElfIdentifier_DATA
Definition syms_elf.h:21