mailing list of musl libc
 help / color / mirror / code / Atom feed
* [PATCH 00/12] update elf.h to follow glibc changes
@ 2016-04-20 11:13 Szabolcs Nagy
  2016-04-20 11:14 ` [PATCH 01/12] add EM_OPENRISC again to elf.h Szabolcs Nagy
                   ` (11 more replies)
  0 siblings, 12 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:13 UTC (permalink / raw)
  To: musl

elf.h was last updated in detail on 2013-09-15 in commit
268375c1c017c0bdefeed1a330811e433c4dfaef

Szabolcs Nagy (12):
  add EM_OPENRISC again to elf.h
  add new powerpc64 relocations to elf.h
  update elf.h with powerpc64 elfv2 abi related macros
  update elf.h with new aarch64 relocs
  update elf.h with mips abi flags support
  add nios2 definitions to elf.h
  add powerpc tls optimization related definitions to elf.h
  add SHF_COMPRESSED section flag to elf.h
  add DT_MIPS_RLD_MAP_REL to elf.h
  add missing x86 relocs to elf.h
  add NT_ARM_SYSTEM_CALL to elf.h
  add EF_SH_ sh specific macros to elf.h

 include/elf.h | 223 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 210 insertions(+), 13 deletions(-)

-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 01/12] add EM_OPENRISC again to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
@ 2016-04-20 11:14 ` Szabolcs Nagy
  2016-04-20 11:14 ` [PATCH 02/12] add new powerpc64 relocations " Szabolcs Nagy
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:14 UTC (permalink / raw)
  To: musl

it was changed to EM_OR1K in 200d15479c0bc48471ee7b8e538ce33af990f82e
as that was meant to be the official name, but glibc and the latest
gabi spec still uses the EM_OPENRISC name:
http://www.sco.com/developers/gabi/latest/ch4.eheader.html
binutils defines both macros so we should do the same for backward
compatibility.
---
 include/elf.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/elf.h b/include/elf.h
index 8b3cd3e..745d899 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -210,6 +210,7 @@ typedef struct {
 #define EM_MN10200	90
 #define EM_PJ		91
 #define EM_OR1K		92
+#define EM_OPENRISC	92
 #define EM_ARC_A5	93
 #define EM_XTENSA	94
 #define EM_AARCH64	183
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 02/12] add new powerpc64 relocations to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
  2016-04-20 11:14 ` [PATCH 01/12] add EM_OPENRISC again to elf.h Szabolcs Nagy
@ 2016-04-20 11:14 ` Szabolcs Nagy
  2016-04-20 11:15 ` [PATCH 03/12] update elf.h with powerpc64 elfv2 abi related macros Szabolcs Nagy
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:14 UTC (permalink / raw)
  To: musl

following the corresponding binutils and glibc changes
https://sourceware.org/ml/binutils/2013-10/msg00372.html
---
 include/elf.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/include/elf.h b/include/elf.h
index 745d899..55d8cb2 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -2014,6 +2014,15 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_PPC64_DTPREL16_HIGHERA 104
 #define R_PPC64_DTPREL16_HIGHEST 105
 #define R_PPC64_DTPREL16_HIGHESTA 106
+#define R_PPC64_TLSGD		107
+#define R_PPC64_TLSLD		108
+#define R_PPC64_TOCSAVE		109
+#define R_PPC64_ADDR16_HIGH	110
+#define R_PPC64_ADDR16_HIGHA	111
+#define R_PPC64_TPREL16_HIGH	112
+#define R_PPC64_TPREL16_HIGHA	113
+#define R_PPC64_DTPREL16_HIGH	114
+#define R_PPC64_DTPREL16_HIGHA	115
 
 
 #define R_PPC64_JMP_IREL	247
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 03/12] update elf.h with powerpc64 elfv2 abi related macros
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
  2016-04-20 11:14 ` [PATCH 01/12] add EM_OPENRISC again to elf.h Szabolcs Nagy
  2016-04-20 11:14 ` [PATCH 02/12] add new powerpc64 relocations " Szabolcs Nagy
@ 2016-04-20 11:15 ` Szabolcs Nagy
  2016-04-20 11:15 ` [PATCH 04/12] update elf.h with new aarch64 relocs Szabolcs Nagy
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:15 UTC (permalink / raw)
  To: musl

see
https://sourceware.org/ml/libc-alpha/2013-11/msg00315.html
https://sourceware.org/ml/libc-alpha/2013-11/msg00314.html
---
 include/elf.h | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/include/elf.h b/include/elf.h
index 55d8cb2..1bfe016 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -2032,14 +2032,20 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_PPC64_REL16_HI	251
 #define R_PPC64_REL16_HA	252
 
+#define EF_PPC64_ABI	3
 
 #define DT_PPC64_GLINK  (DT_LOPROC + 0)
 #define DT_PPC64_OPD	(DT_LOPROC + 1)
 #define DT_PPC64_OPDSZ	(DT_LOPROC + 2)
-#define DT_PPC64_NUM    3
-
+#define DT_PPC64_OPT	(DT_LOPROC + 3)
+#define DT_PPC64_NUM	4
 
+#define PPC64_OPT_TLS		1
+#define PPC64_OPT_MULTI_TOC	2
 
+#define STO_PPC64_LOCAL_BIT	5
+#define STO_PPC64_LOCAL_MASK	0xe0
+#define PPC64_LOCAL_ENTRY_OFFSET(x) (1 << (((x)&0xe0)>>5) & 0xfc)
 
 
 #define EF_ARM_RELEXEC		0x01
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 04/12] update elf.h with new aarch64 relocs
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (2 preceding siblings ...)
  2016-04-20 11:15 ` [PATCH 03/12] update elf.h with powerpc64 elfv2 abi related macros Szabolcs Nagy
@ 2016-04-20 11:15 ` Szabolcs Nagy
  2016-04-20 17:18   ` Rich Felker
  2016-04-20 11:17 ` [PATCH 05/12] update elf.h with mips abi flags support Szabolcs Nagy
                   ` (7 subsequent siblings)
  11 siblings, 1 reply; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:15 UTC (permalink / raw)
  To: musl

add ilp32 related relocs and fix the names of a few macros following
https://sourceware.org/ml/libc-alpha/2014-11/msg00455.html
---
 include/elf.h | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/include/elf.h b/include/elf.h
index 1bfe016..0dcc1f2 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -2105,8 +2105,17 @@ typedef Elf32_Addr Elf32_Conflict;
 #define SHT_ARM_PREEMPTMAP	(SHT_LOPROC + 2)
 #define SHT_ARM_ATTRIBUTES	(SHT_LOPROC + 3)
 
-
 #define R_AARCH64_NONE            0
+#define R_AARCH64_P32_ABS32	1
+#define R_AARCH64_P32_COPY	180
+#define R_AARCH64_P32_GLOB_DAT	181
+#define R_AARCH64_P32_JUMP_SLOT	182
+#define R_AARCH64_P32_RELATIVE	183
+#define R_AARCH64_P32_TLS_DTPMOD 184
+#define R_AARCH64_P32_TLS_DTPREL 185
+#define R_AARCH64_P32_TLS_TPREL	186
+#define R_AARCH64_P32_TLSDESC	187
+#define R_AARCH64_P32_IRELATIVE	188
 #define R_AARCH64_ABS64         257
 #define R_AARCH64_ABS32         258
 #define R_AARCH64_ABS16		259
@@ -2224,9 +2233,9 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_AARCH64_GLOB_DAT     1025
 #define R_AARCH64_JUMP_SLOT    1026
 #define R_AARCH64_RELATIVE     1027
-#define R_AARCH64_TLS_DTPMOD64 1028
-#define R_AARCH64_TLS_DTPREL64 1029
-#define R_AARCH64_TLS_TPREL64  1030
+#define R_AARCH64_TLS_DTPMOD   1028
+#define R_AARCH64_TLS_DTPREL   1029
+#define R_AARCH64_TLS_TPREL    1030
 #define R_AARCH64_TLSDESC      1031
 
 
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 05/12] update elf.h with mips abi flags support
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (3 preceding siblings ...)
  2016-04-20 11:15 ` [PATCH 04/12] update elf.h with new aarch64 relocs Szabolcs Nagy
@ 2016-04-20 11:17 ` Szabolcs Nagy
  2016-04-20 11:17 ` [PATCH 06/12] add nios2 definitions to elf.h Szabolcs Nagy
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:17 UTC (permalink / raw)
  To: musl

following
https://sourceware.org/ml/libc-alpha/2014-05/msg00332.html
---
 include/elf.h | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 70 insertions(+), 1 deletion(-)

diff --git a/include/elf.h b/include/elf.h
index 0dcc1f2..2ba97b2 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -1154,6 +1154,7 @@ typedef struct {
 #define EF_MIPS_64BIT_WHIRL 16
 #define EF_MIPS_ABI2	    32
 #define EF_MIPS_ABI_ON32    64
+#define EF_MIPS_FP64	    512
 #define EF_MIPS_NAN2008     1024
 #define EF_MIPS_ARCH	    0xf0000000
 
@@ -1398,6 +1399,7 @@ typedef struct {
 #define PT_MIPS_REGINFO	0x70000000
 #define PT_MIPS_RTPROC  0x70000001
 #define PT_MIPS_OPTIONS 0x70000002
+#define PT_MIPS_ABIFLAGS 0x70000003
 
 
 
@@ -1517,7 +1519,74 @@ typedef struct
 
 typedef Elf32_Addr Elf32_Conflict;
 
-
+typedef struct
+{
+  Elf32_Half version;
+  unsigned char isa_level;
+  unsigned char isa_rev;
+  unsigned char gpr_size;
+  unsigned char cpr1_size;
+  unsigned char cpr2_size;
+  unsigned char fp_abi;
+  Elf32_Word isa_ext;
+  Elf32_Word ases;
+  Elf32_Word flags1;
+  Elf32_Word flags2;
+} Elf_MIPS_ABIFlags_v0;
+
+#define MIPS_AFL_REG_NONE	0x00
+#define MIPS_AFL_REG_32		0x01
+#define MIPS_AFL_REG_64		0x02
+#define MIPS_AFL_REG_128	0x03
+
+#define MIPS_AFL_ASE_DSP	0x00000001
+#define MIPS_AFL_ASE_DSPR2	0x00000002
+#define MIPS_AFL_ASE_EVA	0x00000004
+#define MIPS_AFL_ASE_MCU	0x00000008
+#define MIPS_AFL_ASE_MDMX	0x00000010
+#define MIPS_AFL_ASE_MIPS3D	0x00000020
+#define MIPS_AFL_ASE_MT		0x00000040
+#define MIPS_AFL_ASE_SMARTMIPS	0x00000080
+#define MIPS_AFL_ASE_VIRT	0x00000100
+#define MIPS_AFL_ASE_MSA	0x00000200
+#define MIPS_AFL_ASE_MIPS16	0x00000400
+#define MIPS_AFL_ASE_MICROMIPS	0x00000800
+#define MIPS_AFL_ASE_XPA	0x00001000
+#define MIPS_AFL_ASE_MASK	0x00001fff
+
+#define MIPS_AFL_EXT_XLR	  1
+#define MIPS_AFL_EXT_OCTEON2	  2
+#define MIPS_AFL_EXT_OCTEONP	  3
+#define MIPS_AFL_EXT_LOONGSON_3A  4
+#define MIPS_AFL_EXT_OCTEON	  5
+#define MIPS_AFL_EXT_5900	  6
+#define MIPS_AFL_EXT_4650	  7
+#define MIPS_AFL_EXT_4010	  8
+#define MIPS_AFL_EXT_4100	  9
+#define MIPS_AFL_EXT_3900	  10
+#define MIPS_AFL_EXT_10000	  11
+#define MIPS_AFL_EXT_SB1	  12
+#define MIPS_AFL_EXT_4111	  13
+#define MIPS_AFL_EXT_4120	  14
+#define MIPS_AFL_EXT_5400	  15
+#define MIPS_AFL_EXT_5500	  16
+#define MIPS_AFL_EXT_LOONGSON_2E  17
+#define MIPS_AFL_EXT_LOONGSON_2F  18
+
+#define MIPS_AFL_FLAGS1_ODDSPREG  1
+
+enum
+{
+  Val_GNU_MIPS_ABI_FP_ANY = 0,
+  Val_GNU_MIPS_ABI_FP_DOUBLE = 1,
+  Val_GNU_MIPS_ABI_FP_SINGLE = 2,
+  Val_GNU_MIPS_ABI_FP_SOFT = 3,
+  Val_GNU_MIPS_ABI_FP_OLD_64 = 4,
+  Val_GNU_MIPS_ABI_FP_XX = 5,
+  Val_GNU_MIPS_ABI_FP_64 = 6,
+  Val_GNU_MIPS_ABI_FP_64A = 7,
+  Val_GNU_MIPS_ABI_FP_MAX = 7
+};
 
 
 
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 06/12] add nios2 definitions to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (4 preceding siblings ...)
  2016-04-20 11:17 ` [PATCH 05/12] update elf.h with mips abi flags support Szabolcs Nagy
@ 2016-04-20 11:17 ` Szabolcs Nagy
  2016-04-20 11:17 ` [PATCH 07/12] add powerpc tls optimization related " Szabolcs Nagy
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:17 UTC (permalink / raw)
  To: musl

---
 include/elf.h | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/include/elf.h b/include/elf.h
index 2ba97b2..5de77e7 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -213,6 +213,7 @@ typedef struct {
 #define EM_OPENRISC	92
 #define EM_ARC_A5	93
 #define EM_XTENSA	94
+#define EM_ALTERA_NIOS2 113
 #define EM_AARCH64	183
 #define EM_TILEPRO	188
 #define EM_MICROBLAZE	189
@@ -2877,6 +2878,55 @@ enum
 #define R_MICROBLAZE_TLSGOTTPREL32 28
 #define R_MICROBLAZE_TLSTPREL32	 29
 
+#define DT_NIOS2_GP             0x70000002
+
+#define R_NIOS2_NONE		0
+#define R_NIOS2_S16		1
+#define R_NIOS2_U16		2
+#define R_NIOS2_PCREL16		3
+#define R_NIOS2_CALL26		4
+#define R_NIOS2_IMM5		5
+#define R_NIOS2_CACHE_OPX	6
+#define R_NIOS2_IMM6		7
+#define R_NIOS2_IMM8		8
+#define R_NIOS2_HI16		9
+#define R_NIOS2_LO16		10
+#define R_NIOS2_HIADJ16		11
+#define R_NIOS2_BFD_RELOC_32	12
+#define R_NIOS2_BFD_RELOC_16	13
+#define R_NIOS2_BFD_RELOC_8	14
+#define R_NIOS2_GPREL		15
+#define R_NIOS2_GNU_VTINHERIT	16
+#define R_NIOS2_GNU_VTENTRY	17
+#define R_NIOS2_UJMP		18
+#define R_NIOS2_CJMP		19
+#define R_NIOS2_CALLR		20
+#define R_NIOS2_ALIGN		21
+#define R_NIOS2_GOT16		22
+#define R_NIOS2_CALL16		23
+#define R_NIOS2_GOTOFF_LO	24
+#define R_NIOS2_GOTOFF_HA	25
+#define R_NIOS2_PCREL_LO	26
+#define R_NIOS2_PCREL_HA	27
+#define R_NIOS2_TLS_GD16	28
+#define R_NIOS2_TLS_LDM16	29
+#define R_NIOS2_TLS_LDO16	30
+#define R_NIOS2_TLS_IE16	31
+#define R_NIOS2_TLS_LE16	32
+#define R_NIOS2_TLS_DTPMOD	33
+#define R_NIOS2_TLS_DTPREL	34
+#define R_NIOS2_TLS_TPREL	35
+#define R_NIOS2_COPY		36
+#define R_NIOS2_GLOB_DAT	37
+#define R_NIOS2_JUMP_SLOT	38
+#define R_NIOS2_RELATIVE	39
+#define R_NIOS2_GOTOFF		40
+#define R_NIOS2_CALL26_NOAT	41
+#define R_NIOS2_GOT_LO		42
+#define R_NIOS2_GOT_HA		43
+#define R_NIOS2_CALL_LO		44
+#define R_NIOS2_CALL_HA		45
+
 #define R_OR1K_NONE		0
 #define R_OR1K_32		1
 #define R_OR1K_16		2
-- 
2.7.2




^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 07/12] add powerpc tls optimization related definitions to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (5 preceding siblings ...)
  2016-04-20 11:17 ` [PATCH 06/12] add nios2 definitions to elf.h Szabolcs Nagy
@ 2016-04-20 11:17 ` Szabolcs Nagy
  2016-04-20 11:19 ` [PATCH 08/12] add SHF_COMPRESSED section flag " Szabolcs Nagy
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:17 UTC (permalink / raw)
  To: musl

see
https://sourceware.org/ml/libc-alpha/2015-03/msg00580.html
---
 include/elf.h | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/include/elf.h b/include/elf.h
index 5de77e7..8e955a3 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -1928,7 +1928,8 @@ enum
 #define R_PPC_GOT_DTPREL16_LO	92
 #define R_PPC_GOT_DTPREL16_HI	93
 #define R_PPC_GOT_DTPREL16_HA	94
-
+#define R_PPC_TLSGD		95
+#define R_PPC_TLSLD		96
 
 
 #define R_PPC_EMB_NADDR32	101
@@ -1971,7 +1972,10 @@ enum
 
 
 #define DT_PPC_GOT		(DT_LOPROC + 0)
-#define DT_PPC_NUM		1
+#define DT_PPC_OPT		(DT_LOPROC + 1)
+#define DT_PPC_NUM		2
+
+#define PPC_OPT_TLS		1
 
 
 #define R_PPC64_NONE		R_PPC_NONE
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 08/12] add SHF_COMPRESSED section flag to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (6 preceding siblings ...)
  2016-04-20 11:17 ` [PATCH 07/12] add powerpc tls optimization related " Szabolcs Nagy
@ 2016-04-20 11:19 ` Szabolcs Nagy
  2016-04-20 11:19 ` [PATCH 09/12] add DT_MIPS_RLD_MAP_REL " Szabolcs Nagy
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:19 UTC (permalink / raw)
  To: musl

following
http://www.sco.com/developers/gabi/latest/ch4.sheader.html
---
 include/elf.h | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/include/elf.h b/include/elf.h
index 8e955a3..3309cdf 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -318,11 +318,34 @@ 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 {
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 09/12] add DT_MIPS_RLD_MAP_REL to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (7 preceding siblings ...)
  2016-04-20 11:19 ` [PATCH 08/12] add SHF_COMPRESSED section flag " Szabolcs Nagy
@ 2016-04-20 11:19 ` Szabolcs Nagy
  2016-04-20 11:19 ` [PATCH 10/12] add missing x86 relocs " Szabolcs Nagy
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:19 UTC (permalink / raw)
  To: musl

marks different RLD_MAP for debugging PIE binaries.
---
 include/elf.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/include/elf.h b/include/elf.h
index 3309cdf..8da8b53 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -1487,7 +1487,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
 
 
 
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 10/12] add missing x86 relocs to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (8 preceding siblings ...)
  2016-04-20 11:19 ` [PATCH 09/12] add DT_MIPS_RLD_MAP_REL " Szabolcs Nagy
@ 2016-04-20 11:19 ` Szabolcs Nagy
  2016-04-20 11:20 ` [PATCH 11/12] add NT_ARM_SYSTEM_CALL " Szabolcs Nagy
  2016-04-20 11:20 ` [PATCH 12/12] add EF_SH_ sh specific macros " Szabolcs Nagy
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:19 UTC (permalink / raw)
  To: musl

see
https://sourceware.org/ml/libc-alpha/2016-01/msg00822.html
---
 include/elf.h | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/include/elf.h b/include/elf.h
index 8da8b53..3f06de0 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -1045,7 +1045,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
 
 
 
@@ -2788,7 +2789,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
 
 
 
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 11/12] add NT_ARM_SYSTEM_CALL to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (9 preceding siblings ...)
  2016-04-20 11:19 ` [PATCH 10/12] add missing x86 relocs " Szabolcs Nagy
@ 2016-04-20 11:20 ` Szabolcs Nagy
  2016-04-20 11:20 ` [PATCH 12/12] add EF_SH_ sh specific macros " Szabolcs Nagy
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:20 UTC (permalink / raw)
  To: musl

new regset in linux v3.18 for ptrace.
---
 include/elf.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/include/elf.h b/include/elf.h
index 3f06de0..844bef7 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -566,6 +566,7 @@ typedef struct {
 #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_METAG_CBUF	0x500
 #define NT_METAG_RPIPE	0x501
 #define NT_METAG_TLS	0x502
-- 
2.7.2




^ permalink raw reply	[flat|nested] 15+ messages in thread

* [PATCH 12/12] add EF_SH_ sh specific macros to elf.h
  2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
                   ` (10 preceding siblings ...)
  2016-04-20 11:20 ` [PATCH 11/12] add NT_ARM_SYSTEM_CALL " Szabolcs Nagy
@ 2016-04-20 11:20 ` Szabolcs Nagy
  11 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-04-20 11:20 UTC (permalink / raw)
  To: musl

last time elf.h was thoroughly updated sh was not yet supported
so these processor specific e_flags were missing.
---
 include/elf.h | 23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/include/elf.h b/include/elf.h
index 844bef7..9412520 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -2584,7 +2584,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
-- 
2.7.2



^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 04/12] update elf.h with new aarch64 relocs
  2016-04-20 11:15 ` [PATCH 04/12] update elf.h with new aarch64 relocs Szabolcs Nagy
@ 2016-04-20 17:18   ` Rich Felker
  2016-07-03 20:13     ` Szabolcs Nagy
  0 siblings, 1 reply; 15+ messages in thread
From: Rich Felker @ 2016-04-20 17:18 UTC (permalink / raw)
  To: musl

On Wed, Apr 20, 2016 at 01:15:37PM +0200, Szabolcs Nagy wrote:
> add ilp32 related relocs and fix the names of a few macros following
> https://sourceware.org/ml/libc-alpha/2014-11/msg00455.html
> ---
>  include/elf.h | 17 +++++++++++++----
>  1 file changed, 13 insertions(+), 4 deletions(-)
> 
> diff --git a/include/elf.h b/include/elf.h
> index 1bfe016..0dcc1f2 100644
> --- a/include/elf.h
> +++ b/include/elf.h
> @@ -2105,8 +2105,17 @@ typedef Elf32_Addr Elf32_Conflict;
>  #define SHT_ARM_PREEMPTMAP	(SHT_LOPROC + 2)
>  #define SHT_ARM_ATTRIBUTES	(SHT_LOPROC + 3)
>  
> -
>  #define R_AARCH64_NONE            0
> +#define R_AARCH64_P32_ABS32	1
> +#define R_AARCH64_P32_COPY	180
> +#define R_AARCH64_P32_GLOB_DAT	181
> +#define R_AARCH64_P32_JUMP_SLOT	182
> +#define R_AARCH64_P32_RELATIVE	183
> +#define R_AARCH64_P32_TLS_DTPMOD 184
> +#define R_AARCH64_P32_TLS_DTPREL 185
> +#define R_AARCH64_P32_TLS_TPREL	186
> +#define R_AARCH64_P32_TLSDESC	187
> +#define R_AARCH64_P32_IRELATIVE	188
>  #define R_AARCH64_ABS64         257
>  #define R_AARCH64_ABS32         258
>  #define R_AARCH64_ABS16		259
> @@ -2224,9 +2233,9 @@ typedef Elf32_Addr Elf32_Conflict;
>  #define R_AARCH64_GLOB_DAT     1025
>  #define R_AARCH64_JUMP_SLOT    1026
>  #define R_AARCH64_RELATIVE     1027
> -#define R_AARCH64_TLS_DTPMOD64 1028
> -#define R_AARCH64_TLS_DTPREL64 1029
> -#define R_AARCH64_TLS_TPREL64  1030
> +#define R_AARCH64_TLS_DTPMOD   1028
> +#define R_AARCH64_TLS_DTPREL   1029
> +#define R_AARCH64_TLS_TPREL    1030
>  #define R_AARCH64_TLSDESC      1031

Did you test this? From what I can see, it breaks the build, though I
don't have a cross compiler handy to actually check. See
arch/aarch64/reloc.h. If there's a possibility any other software is
using the old names we should probably add rather than change (like
the OR1K/OPENRISC issue).

Rich


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [PATCH 04/12] update elf.h with new aarch64 relocs
  2016-04-20 17:18   ` Rich Felker
@ 2016-07-03 20:13     ` Szabolcs Nagy
  0 siblings, 0 replies; 15+ messages in thread
From: Szabolcs Nagy @ 2016-07-03 20:13 UTC (permalink / raw)
  To: musl

add ilp32 related relocs and alternative names for a few macros following
https://sourceware.org/ml/libc-alpha/2014-11/msg00455.html
---
 include/elf.h | 14 +++++++++++++-
 1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/include/elf.h b/include/elf.h
index 1bfe016..795b71d 100644
--- a/include/elf.h
+++ b/include/elf.h
@@ -2105,8 +2105,17 @@ typedef Elf32_Addr Elf32_Conflict;
 #define SHT_ARM_PREEMPTMAP	(SHT_LOPROC + 2)
 #define SHT_ARM_ATTRIBUTES	(SHT_LOPROC + 3)
 
-
 #define R_AARCH64_NONE            0
+#define R_AARCH64_P32_ABS32	1
+#define R_AARCH64_P32_COPY	180
+#define R_AARCH64_P32_GLOB_DAT	181
+#define R_AARCH64_P32_JUMP_SLOT	182
+#define R_AARCH64_P32_RELATIVE	183
+#define R_AARCH64_P32_TLS_DTPMOD 184
+#define R_AARCH64_P32_TLS_DTPREL 185
+#define R_AARCH64_P32_TLS_TPREL	186
+#define R_AARCH64_P32_TLSDESC	187
+#define R_AARCH64_P32_IRELATIVE	188
 #define R_AARCH64_ABS64         257
 #define R_AARCH64_ABS32         258
 #define R_AARCH64_ABS16		259
@@ -2224,8 +2233,11 @@ typedef Elf32_Addr Elf32_Conflict;
 #define R_AARCH64_GLOB_DAT     1025
 #define R_AARCH64_JUMP_SLOT    1026
 #define R_AARCH64_RELATIVE     1027
+#define R_AARCH64_TLS_DTPMOD   1028
 #define R_AARCH64_TLS_DTPMOD64 1028
+#define R_AARCH64_TLS_DTPREL   1029
 #define R_AARCH64_TLS_DTPREL64 1029
+#define R_AARCH64_TLS_TPREL    1030
 #define R_AARCH64_TLS_TPREL64  1030
 #define R_AARCH64_TLSDESC      1031
 
-- 
2.8.1



^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2016-07-03 20:13 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-20 11:13 [PATCH 00/12] update elf.h to follow glibc changes Szabolcs Nagy
2016-04-20 11:14 ` [PATCH 01/12] add EM_OPENRISC again to elf.h Szabolcs Nagy
2016-04-20 11:14 ` [PATCH 02/12] add new powerpc64 relocations " Szabolcs Nagy
2016-04-20 11:15 ` [PATCH 03/12] update elf.h with powerpc64 elfv2 abi related macros Szabolcs Nagy
2016-04-20 11:15 ` [PATCH 04/12] update elf.h with new aarch64 relocs Szabolcs Nagy
2016-04-20 17:18   ` Rich Felker
2016-07-03 20:13     ` Szabolcs Nagy
2016-04-20 11:17 ` [PATCH 05/12] update elf.h with mips abi flags support Szabolcs Nagy
2016-04-20 11:17 ` [PATCH 06/12] add nios2 definitions to elf.h Szabolcs Nagy
2016-04-20 11:17 ` [PATCH 07/12] add powerpc tls optimization related " Szabolcs Nagy
2016-04-20 11:19 ` [PATCH 08/12] add SHF_COMPRESSED section flag " Szabolcs Nagy
2016-04-20 11:19 ` [PATCH 09/12] add DT_MIPS_RLD_MAP_REL " Szabolcs Nagy
2016-04-20 11:19 ` [PATCH 10/12] add missing x86 relocs " Szabolcs Nagy
2016-04-20 11:20 ` [PATCH 11/12] add NT_ARM_SYSTEM_CALL " Szabolcs Nagy
2016-04-20 11:20 ` [PATCH 12/12] add EF_SH_ sh specific macros " Szabolcs Nagy

Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).