remove __vfork alias
[musl] / include / elf.h
index eefcbc1..c229735 100644 (file)
@@ -212,13 +212,110 @@ typedef struct {
 #define EM_OR1K                92
 #define EM_OPENRISC    92
 #define EM_ARC_A5      93
+#define EM_ARC_COMPACT 93
 #define EM_XTENSA      94
+#define EM_VIDEOCORE   95
+#define EM_TMM_GPP     96
+#define EM_NS32K       97
+#define EM_TPC         98
+#define EM_SNP1K       99
+#define EM_ST200       100
+#define EM_IP2K                101
+#define EM_MAX         102
+#define EM_CR          103
+#define EM_F2MC16      104
+#define EM_MSP430      105
+#define EM_BLACKFIN    106
+#define EM_SE_C33      107
+#define EM_SEP         108
+#define EM_ARCA                109
+#define EM_UNICORE     110
+#define EM_EXCESS      111
+#define EM_DXP         112
 #define EM_ALTERA_NIOS2 113
+#define EM_CRX         114
+#define EM_XGATE       115
+#define EM_C166                116
+#define EM_M16C                117
+#define EM_DSPIC30F    118
+#define EM_CE          119
+#define EM_M32C                120
+#define EM_TSK3000     131
+#define EM_RS08                132
+#define EM_SHARC       133
+#define EM_ECOG2       134
+#define EM_SCORE7      135
+#define EM_DSP24       136
+#define EM_VIDEOCORE3  137
+#define EM_LATTICEMICO32 138
+#define EM_SE_C17      139
+#define EM_TI_C6000    140
+#define EM_TI_C2000    141
+#define EM_TI_C5500    142
+#define EM_TI_ARP32    143
+#define EM_TI_PRU      144
+#define EM_MMDSP_PLUS  160
+#define EM_CYPRESS_M8C 161
+#define EM_R32C                162
+#define EM_TRIMEDIA    163
+#define EM_QDSP6       164
+#define EM_8051                165
+#define EM_STXP7X      166
+#define EM_NDS32       167
+#define EM_ECOG1X      168
+#define EM_MAXQ30      169
+#define EM_XIMO16      170
+#define EM_MANIK       171
+#define EM_CRAYNV2     172
+#define EM_RX          173
+#define EM_METAG       174
+#define EM_MCST_ELBRUS 175
+#define EM_ECOG16      176
+#define EM_CR16                177
+#define EM_ETPU                178
+#define EM_SLE9X       179
+#define EM_L10M                180
+#define EM_K10M                181
 #define EM_AARCH64     183
+#define EM_AVR32       185
+#define EM_STM8                186
+#define EM_TILE64      187
 #define EM_TILEPRO     188
 #define EM_MICROBLAZE  189
+#define EM_CUDA                190
 #define EM_TILEGX      191
-#define EM_NUM         192
+#define EM_CLOUDSHIELD 192
+#define EM_COREA_1ST   193
+#define EM_COREA_2ND   194
+#define EM_ARC_COMPACT2        195
+#define EM_OPEN8       196
+#define EM_RL78                197
+#define EM_VIDEOCORE5  198
+#define EM_78KOR       199
+#define EM_56800EX     200
+#define EM_BA1         201
+#define EM_BA2         202
+#define EM_XCORE       203
+#define EM_MCHP_PIC    204
+#define EM_KM32                210
+#define EM_KMX32       211
+#define EM_EMX16       212
+#define EM_EMX8                213
+#define EM_KVARC       214
+#define EM_CDP         215
+#define EM_COGE                216
+#define EM_COOL                217
+#define EM_NORC                218
+#define EM_CSR_KALIMBA 219
+#define EM_Z80         220
+#define EM_VISIUM      221
+#define EM_FT32                222
+#define EM_MOXIE       223
+#define EM_AMDGPU      224
+#define EM_RISCV       243
+#define EM_BPF         247
+#define EM_NUM         248
+
 #define EM_ALPHA       0x9026
 
 #define EV_NONE                0
@@ -318,11 +415,32 @@ typedef struct {
 
 #define SHF_GROUP           (1 << 9)
 #define SHF_TLS                     (1 << 10)
+#define SHF_COMPRESSED      (1 << 11)
 #define SHF_MASKOS          0x0ff00000
 #define SHF_MASKPROC        0xf0000000
 #define SHF_ORDERED         (1 << 30)
 #define SHF_EXCLUDE         (1U << 31)
 
+typedef struct {
+  Elf32_Word   ch_type;
+  Elf32_Word   ch_size;
+  Elf32_Word   ch_addralign;
+} Elf32_Chdr;
+
+typedef struct {
+  Elf64_Word   ch_type;
+  Elf64_Word   ch_reserved;
+  Elf64_Xword  ch_size;
+  Elf64_Xword  ch_addralign;
+} Elf64_Chdr;
+
+#define ELFCOMPRESS_ZLIB       1
+#define ELFCOMPRESS_LOOS       0x60000000
+#define ELFCOMPRESS_HIOS       0x6fffffff
+#define ELFCOMPRESS_LOPROC     0x70000000
+#define ELFCOMPRESS_HIPROC     0x7fffffff
+
+
 #define GRP_COMDAT     0x1
 
 typedef struct {
@@ -411,8 +529,7 @@ typedef struct {
 
 
 
-typedef struct
-{
+typedef struct {
   Elf32_Addr   r_offset;
   Elf32_Word   r_info;
 } Elf32_Rel;
@@ -506,6 +623,7 @@ typedef struct {
 
 
 #define NT_PRSTATUS    1
+#define NT_PRFPREG     2
 #define NT_FPREGSET    2
 #define NT_PRPSINFO    3
 #define NT_PRXREG      4
@@ -527,6 +645,19 @@ typedef struct {
 #define NT_PPC_VMX     0x100
 #define NT_PPC_SPE     0x101
 #define NT_PPC_VSX     0x102
+#define NT_PPC_TAR     0x103
+#define NT_PPC_PPR     0x104
+#define NT_PPC_DSCR    0x105
+#define NT_PPC_EBB     0x106
+#define NT_PPC_PMU     0x107
+#define NT_PPC_TM_CGPR 0x108
+#define NT_PPC_TM_CFPR 0x109
+#define NT_PPC_TM_CVMX 0x10a
+#define NT_PPC_TM_CVSX 0x10b
+#define NT_PPC_TM_SPR  0x10c
+#define NT_PPC_TM_CTAR 0x10d
+#define NT_PPC_TM_CPPR 0x10e
+#define NT_PPC_TM_CDSCR        0x10f
 #define NT_386_TLS     0x200
 #define NT_386_IOPERM  0x201
 #define NT_X86_XSTATE  0x202
@@ -539,13 +670,21 @@ typedef struct {
 #define NT_S390_LAST_BREAK     0x306
 #define NT_S390_SYSTEM_CALL    0x307
 #define NT_S390_TDB    0x308
+#define NT_S390_VXRS_LOW       0x309
+#define NT_S390_VXRS_HIGH      0x30a
+#define NT_S390_GS_CB  0x30b
+#define NT_S390_GS_BC  0x30c
+#define NT_S390_RI_CB  0x30d
 #define NT_ARM_VFP     0x400
 #define NT_ARM_TLS     0x401
 #define NT_ARM_HW_BREAK        0x402
 #define NT_ARM_HW_WATCH        0x403
+#define NT_ARM_SYSTEM_CALL     0x404
+#define NT_ARM_SVE     0x405
 #define NT_METAG_CBUF  0x500
 #define NT_METAG_RPIPE 0x501
 #define NT_METAG_TLS   0x502
+#define NT_ARC_V2      0x600
 #define NT_VERSION     1
 
 
@@ -603,7 +742,8 @@ typedef struct {
 #define DT_ENCODING    32
 #define DT_PREINIT_ARRAY 32
 #define DT_PREINIT_ARRAYSZ 33
-#define        DT_NUM          34
+#define DT_SYMTAB_SHNDX        34
+#define        DT_NUM          35
 #define DT_LOOS                0x6000000d
 #define DT_HIOS                0x6ffff000
 #define DT_LOPROC      0x70000000
@@ -703,6 +843,8 @@ typedef struct {
 #define        DF_1_SYMINTPOSE 0x00800000
 #define        DF_1_GLOBAUDIT  0x01000000
 #define        DF_1_SINGLETON  0x02000000
+#define        DF_1_STUB       0x04000000
+#define        DF_1_PIE        0x08000000
 
 #define DTF_1_PARINIT  0x00000001
 #define DTF_1_CONFEXP  0x00000002
@@ -884,6 +1026,14 @@ typedef struct {
 #define AT_L2_CACHESHAPE       36
 #define AT_L3_CACHESHAPE       37
 
+#define AT_L1I_CACHESIZE       40
+#define AT_L1I_CACHEGEOMETRY   41
+#define AT_L1D_CACHESIZE       42
+#define AT_L1D_CACHEGEOMETRY   43
+#define AT_L2_CACHESIZE                44
+#define AT_L2_CACHEGEOMETRY    45
+#define AT_L3_CACHESIZE                46
+#define AT_L3_CACHEGEOMETRY    47
 
 
 
@@ -979,7 +1129,25 @@ typedef struct {
 #define R_68K_GLOB_DAT 20
 #define R_68K_JMP_SLOT 21
 #define R_68K_RELATIVE 22
-#define R_68K_NUM      23
+#define R_68K_TLS_GD32 25
+#define R_68K_TLS_GD16 26
+#define R_68K_TLS_GD8  27
+#define R_68K_TLS_LDM32        28
+#define R_68K_TLS_LDM16        29
+#define R_68K_TLS_LDM8 30
+#define R_68K_TLS_LDO32        31
+#define R_68K_TLS_LDO16        32
+#define R_68K_TLS_LDO8 33
+#define R_68K_TLS_IE32 34
+#define R_68K_TLS_IE16 35
+#define R_68K_TLS_IE8  36
+#define R_68K_TLS_LE32 37
+#define R_68K_TLS_LE16 38
+#define R_68K_TLS_LE8  39
+#define R_68K_TLS_DTPMOD32     40
+#define R_68K_TLS_DTPREL32     41
+#define R_68K_TLS_TPREL32      42
+#define R_68K_NUM      43
 
 #define R_386_NONE        0
 #define R_386_32          1
@@ -1022,7 +1190,8 @@ typedef struct {
 #define R_386_TLS_DESC_CALL 40
 #define R_386_TLS_DESC     41
 #define R_386_IRELATIVE           42
-#define R_386_NUM         43
+#define R_386_GOT32X      43
+#define R_386_NUM         44
 
 
 
@@ -1464,7 +1633,8 @@ typedef struct {
 #define DT_MIPS_PLTGOT      0x70000032
 
 #define DT_MIPS_RWPLT        0x70000034
-#define DT_MIPS_NUM         0x35
+#define DT_MIPS_RLD_MAP_REL  0x70000035
+#define DT_MIPS_NUM         0x36
 
 
 
@@ -1487,8 +1657,7 @@ typedef struct {
 
 
 
-typedef struct
-{
+typedef struct {
   Elf32_Word l_name;
   Elf32_Word l_time_stamp;
   Elf32_Word l_checksum;
@@ -1496,8 +1665,7 @@ typedef struct
   Elf32_Word l_flags;
 } Elf32_Lib;
 
-typedef struct
-{
+typedef struct {
   Elf64_Word l_name;
   Elf64_Word l_time_stamp;
   Elf64_Word l_checksum;
@@ -1520,8 +1688,7 @@ typedef struct
 
 typedef Elf32_Addr Elf32_Conflict;
 
-typedef struct
-{
+typedef struct {
   Elf32_Half version;
   unsigned char isa_level;
   unsigned char isa_rev;
@@ -2116,6 +2283,7 @@ enum
 
 #define PPC64_OPT_TLS          1
 #define PPC64_OPT_MULTI_TOC    2
+#define PPC64_OPT_LOCALENTRY   4
 
 #define STO_PPC64_LOCAL_BIT    5
 #define STO_PPC64_LOCAL_MASK   0xe0
@@ -2561,7 +2729,28 @@ enum
 #define R_IA64_LTOFF_DTPREL22  0xba
 
 
-
+#define EF_SH_MACH_MASK                0x1f
+#define EF_SH_UNKNOWN          0x0
+#define EF_SH1                 0x1
+#define EF_SH2                 0x2
+#define EF_SH3                 0x3
+#define EF_SH_DSP              0x4
+#define EF_SH3_DSP             0x5
+#define EF_SH4AL_DSP           0x6
+#define EF_SH3E                        0x8
+#define EF_SH4                 0x9
+#define EF_SH2E                        0xb
+#define EF_SH4A                        0xc
+#define EF_SH2A                        0xd
+#define EF_SH4_NOFPU           0x10
+#define EF_SH4A_NOFPU          0x11
+#define EF_SH4_NOMMU_NOFPU     0x12
+#define EF_SH2A_NOFPU          0x13
+#define EF_SH3_NOMMU           0x14
+#define EF_SH2A_SH4_NOFPU      0x15
+#define EF_SH2A_SH3_NOFPU      0x16
+#define EF_SH2A_SH4            0x17
+#define EF_SH2A_SH3E           0x18
 
 #define        R_SH_NONE               0
 #define        R_SH_DIR32              1
@@ -2767,7 +2956,9 @@ enum
 #define R_X86_64_TLSDESC        36
 #define R_X86_64_IRELATIVE     37
 #define R_X86_64_RELATIVE64    38
-#define R_X86_64_NUM           39
+#define R_X86_64_GOTPCRELX     41
+#define R_X86_64_REX_GOTPCRELX 42
+#define R_X86_64_NUM           43
 
 
 
@@ -2970,6 +3161,9 @@ enum
 #define R_OR1K_TLS_DTPOFF      33
 #define R_OR1K_TLS_DTPMOD      34
 
+#define R_BPF_NONE             0
+#define R_BPF_MAP_FD           1
+
 #ifdef __cplusplus
 }
 #endif