aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/nios2
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/nios2
parent34e3f83fe17b27a4c618a33661eb5412350f1147 (diff)
downloadglibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.tar
glibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.tar.gz
glibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.tar.bz2
glibc-ae5eae7cfc9c4a8297ff82ec6b794faca1976ecc.zip
Fixes extern protected data handling testcases elf/tst-protected1a
and elf/tst-protected1b for Nios II.
Diffstat (limited to 'sysdeps/nios2')
-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