about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--NEWS7
-rw-r--r--libc-abis2
-rw-r--r--sysdeps/unix/sysv/linux/mips/libc-abis2
4 files changed, 19 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 27927257ce..d134e1f29d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2018-07-05  Maciej W. Rozycki  <macro@mips.com>
+
+	[BZ #19818]
+	[BZ #23307]
+	* libc-abis (ABSOLUTE): New ABI.
+	* sysdeps/unix/sysv/linux/mips/libc-abis (ABSOLUTE): New ABI.
+	* NEWS: Mention the new ABI.
+
 2018-07-05  Florian Weimer  <fweimer@redhat.com>
 
 	[BZ # 17662]
diff --git a/NEWS b/NEWS
index 5d253910b5..716d11cda1 100644
--- a/NEWS
+++ b/NEWS
@@ -9,6 +9,13 @@ Version 2.28
 
 Major new features:
 
+* The GNU C Library now has correct support for ABSOLUTE symbols
+  (SHN_ABS-relative symbols).  Previously such ABSOLUTE symbols were
+  relocated incorrectly or in some cases discarded.  The GNU linker can
+  make use of the newer semantics, but it must communicate it to the
+  dynamic loader by setting the ELF file's identification (EI_ABIVERSION
+  field) to indicate such support is required.
+
 * Unicode 11.0.0 Support: Character encoding, character type info, and
   transliteration tables are all updated to Unicode 11.0.0, using
   generator scripts contributed by Mike FABIAN (Red Hat).
diff --git a/libc-abis b/libc-abis
index 8668e49d88..e702f6ae24 100644
--- a/libc-abis
+++ b/libc-abis
@@ -46,3 +46,5 @@ IFUNC		powerpc64-*-linux*
 IFUNC		powerpc-*-linux*
 IFUNC		sparc64-*-linux*
 IFUNC		sparc-*-linux*
+# Absolute (SHN_ABS) symbols working correctly.
+ABSOLUTE
diff --git a/sysdeps/unix/sysv/linux/mips/libc-abis b/sysdeps/unix/sysv/linux/mips/libc-abis
index 14ff60322a..eaea558720 100644
--- a/sysdeps/unix/sysv/linux/mips/libc-abis
+++ b/sysdeps/unix/sysv/linux/mips/libc-abis
@@ -14,3 +14,5 @@ UNIQUE
 #
 # MIPS O32 FP64
 MIPS_O32_FP64   mips*-*-linux*
+# Absolute (SHN_ABS) symbols working correctly.
+ABSOLUTE