about summary refs log tree commit diff
path: root/sysdeps
diff options
context:
space:
mode:
authorChung-Lin Tang <cltang@codesourcery.com>2015-07-26 05:27:18 -0700
committerChung-Lin Tang <cltang@codesourcery.com>2015-07-26 05:27:18 -0700
commitae5eae7cfc9c4a8297ff82ec6b794faca1976ecc (patch)
tree192719301e27a8a2acf24eeac3116d91e27147ca /sysdeps
parent34e3f83fe17b27a4c618a33661eb5412350f1147 (diff)
downloadglibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.tar.gz
glibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.tar.xz
glibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.zip
Fixes extern protected data handling testcases elf/tst-protected1a
and elf/tst-protected1b for Nios II.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/nios2/dl-machine.h3
-rw-r--r--sysdeps/nios2/dl-sysdep.h2
2 files changed, 4 insertions, 1 deletions
diff --git a/sysdeps/nios2/dl-machine.h b/sysdeps/nios2/dl-machine.h
index 1a8397ffc5..10ec821bcb 100644
--- a/sysdeps/nios2/dl-machine.h
+++ b/sysdeps/nios2/dl-machine.h
@@ -193,7 +193,8 @@ _start:\n\
      || (type) == R_NIOS2_TLS_DTPMOD				\
      || (type) == R_NIOS2_TLS_DTPREL				\
      || (type) == R_NIOS2_TLS_TPREL) * ELF_RTYPE_CLASS_PLT)	\
-   | (((type) == R_NIOS2_COPY) * ELF_RTYPE_CLASS_COPY))
+   | (((type) == R_NIOS2_COPY) * ELF_RTYPE_CLASS_COPY)		\
+   | (((type) == R_NIOS2_GLOB_DAT) * ELF_RTYPE_CLASS_EXTERN_PROTECTED_DATA))
 
 /* A reloc type used for ld.so cmdline arg lookups to reject PLT entries.  */
 #define ELF_MACHINE_JMP_SLOT  R_NIOS2_JUMP_SLOT
diff --git a/sysdeps/nios2/dl-sysdep.h b/sysdeps/nios2/dl-sysdep.h
index 4f49c2d2ff..ef6d3f39eb 100644
--- a/sysdeps/nios2/dl-sysdep.h
+++ b/sysdeps/nios2/dl-sysdep.h
@@ -21,3 +21,5 @@
 /* _dl_argv cannot be attribute_relro, because _dl_start_user
    might write into it after _dl_start returns.  */
 #define DL_ARGV_NOT_RELRO 1
+
+#define DL_EXTERN_PROTECTED_DATA