patch-2.1.80 linux/include/asm-arm/elf.h
Next file: linux/include/asm-arm/errno.h
Previous file: linux/include/asm-arm/ecard.h
Back to the patch index
Back to the overall index
- Lines: 55
- Date:
Tue Jan 20 16:39:42 1998
- Orig file:
v2.1.79/linux/include/asm-arm/elf.h
- Orig date:
Wed Dec 31 16:00:00 1969
diff -u --recursive --new-file v2.1.79/linux/include/asm-arm/elf.h linux/include/asm-arm/elf.h
@@ -0,0 +1,54 @@
+#ifndef __ASMARM_ELF_H
+#define __ASMARM_ELF_H
+
+/*
+ * ELF register definitions..
+ */
+
+#include <asm/ptrace.h>
+
+typedef unsigned long elf_greg_t;
+
+#define EM_ARM 40
+
+#define ELF_NGREG (sizeof (struct pt_regs) / sizeof(elf_greg_t))
+typedef elf_greg_t elf_gregset_t[ELF_NGREG];
+
+typedef struct { void *null; } elf_fpregset_t;
+
+/*
+ * This is used to ensure we don't load something for the wrong architecture.
+ */
+#define elf_check_arch(x) ( ((x) == EM_ARM) )
+
+/*
+ * These are used to set parameters in the core dumps.
+ */
+#define ELF_CLASS ELFCLASS32
+#define ELF_DATA ELFDATA2LSB;
+#define ELF_ARCH EM_ARM
+
+#define USE_ELF_CORE_DUMP
+#define ELF_EXEC_PAGESIZE 32768
+
+/* This is the location that an ET_DYN program is loaded if exec'ed. Typical
+ use of this is to invoke "./ld.so someprog" to test out a new version of
+ the loader. We need to make sure that it is out of the way of the program
+ that it will "exec", and that there is sufficient room for the brk. */
+
+#define ELF_ET_DYN_BASE (2 * TASK_SIZE / 3)
+
+#define R_ARM_NONE (0)
+#define R_ARM_32 (1) /* => ld 32 */
+#define R_ARM_PC26 (2) /* => ld b/bl branches */
+#define R_ARM_PC32 (3)
+#define R_ARM_GOT32 (4) /* -> object relocation into GOT */
+#define R_ARM_PLT32 (5)
+#define R_ARM_COPY (6) /* => dlink copy object */
+#define R_ARM_GLOB_DAT (7) /* => dlink 32bit absolute address for .got */
+#define R_ARM_JUMP_SLOT (8) /* => dlink 32bit absolute address for .got.plt */
+#define R_ARM_RELATIVE (9) /* => ld resolved 32bit absolute address requiring load address adjustment */
+#define R_ARM_GOTOFF (10) /* => ld calculates offset of data from base of GOT */
+#define R_ARM_GOTPC (11) /* => ld 32-bit relative offset */
+
+#endif
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov