aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/arm
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/arm')
-rw-r--r--sysdeps/arm/dl-machine-rel.h31
-rw-r--r--sysdeps/arm/dl-machine.h11
2 files changed, 33 insertions, 9 deletions
diff --git a/sysdeps/arm/dl-machine-rel.h b/sysdeps/arm/dl-machine-rel.h
new file mode 100644
index 0000000..bec1147
--- /dev/null
+++ b/sysdeps/arm/dl-machine-rel.h
@@ -0,0 +1,31 @@
+/* ELF dynamic relocation type supported by the architecture. ARM version.
+ Copyright (C) 2001-2021 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <https://www.gnu.org/licenses/>. */
+
+#ifndef _DL_MACHINE_REL_H
+#define _DL_MACHINE_REL_H
+
+/* ARM never uses Elf32_Rela relocations for the dynamic linker.
+ Prelinked libraries may use Elf32_Rela though. */
+#define ELF_MACHINE_NO_RELA defined RTLD_BOOTSTRAP
+#define ELF_MACHINE_NO_REL 0
+
+/* ARM never uses Elf32_Rela relocations for the dynamic linker.
+ Prelinked libraries may use Elf32_Rela though. */
+#define ELF_MACHINE_PLT_REL 1
+
+#endif
diff --git a/sysdeps/arm/dl-machine.h b/sysdeps/arm/dl-machine.h
index dfa05ee..c758bba 100644
--- a/sysdeps/arm/dl-machine.h
+++ b/sysdeps/arm/dl-machine.h
@@ -26,6 +26,8 @@
#include <tls.h>
#include <dl-tlsdesc.h>
#include <dl-irel.h>
+#include <dl-static-tls.h>
+#include <dl-machine-rel.h>
#ifndef CLEAR_CACHE
# error CLEAR_CACHE definition required to handle TEXTREL
@@ -231,10 +233,6 @@ _dl_start_user:\n\
/* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */
#define ELF_MACHINE_JMP_SLOT R_ARM_JUMP_SLOT
-/* ARM never uses Elf32_Rela relocations for the dynamic linker.
- Prelinked libraries may use Elf32_Rela though. */
-#define ELF_MACHINE_PLT_REL 1
-
/* We define an initialization functions. This is called very early in
_dl_sysdep_start. */
#define DL_PLATFORM_INIT dl_platform_init ()
@@ -267,11 +265,6 @@ elf_machine_plt_value (struct link_map *map, const Elf32_Rel *reloc,
#endif /* !dl_machine_h */
-/* ARM never uses Elf32_Rela relocations for the dynamic linker.
- Prelinked libraries may use Elf32_Rela though. */
-#define ELF_MACHINE_NO_RELA defined RTLD_BOOTSTRAP
-#define ELF_MACHINE_NO_REL 0
-
/* Names of the architecture-specific auditing callback functions. */
#define ARCH_LA_PLTENTER arm_gnu_pltenter
#define ARCH_LA_PLTEXIT arm_gnu_pltexit