diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-03-27 01:16:50 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-03-27 01:16:50 +0000 |
commit | 18ef464b2fd20dcfdb57e1ad8eb86a912c874538 (patch) | |
tree | 0d78c2a46f58aaf39330b12672902c6fa860f623 /sysdeps/generic | |
parent | 11d52c3193215e20d860fa1ae36daa0eb5ca5938 (diff) | |
download | glibc-18ef464b2fd20dcfdb57e1ad8eb86a912c874538.zip glibc-18ef464b2fd20dcfdb57e1ad8eb86a912c874538.tar.gz glibc-18ef464b2fd20dcfdb57e1ad8eb86a912c874538.tar.bz2 |
Update.
2003-03-26 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
only if DL_NO_COPY_RELOCS is not defined.
* sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
Diffstat (limited to 'sysdeps/generic')
-rw-r--r-- | sysdeps/generic/ldsodefs.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index 8bd2efb..e823402 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -97,9 +97,16 @@ typedef ElfW(Addr) lookup_t; /* Reloc type classes as returned by elf_machine_type_class(). ELF_RTYPE_CLASS_PLT means this reloc should not be satisfied by some PLT symbol, ELF_RTYPE_CLASS_COPY means this reloc should not be - satisfied by any symbol in the executable. */ + satisfied by any symbol in the executable. Some architectures do + not support copy relocations. In this case we define the macro to + zero so that the code for handling them gets automatically optimized + out. */ #define ELF_RTYPE_CLASS_PLT 1 -#define ELF_RTYPE_CLASS_COPY 2 +#ifndef DL_NO_COPY_RELOCS +# define ELF_RTYPE_CLASS_COPY 2 +#else +# define ELF_RTYPE_CLASS_COPY 0 +#endif /* ELF uses the PF_x macros to specify the segment permissions, mmap uses PROT_xxx. In most cases the three macros have the values 1, 2, |