about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-02-13 09:26:53 +0000
committerRoland McGrath <roland@gnu.org>1996-02-13 09:26:53 +0000
commit01f3e03bcd992cc2917f5d228e763ef3d65e67ad (patch)
tree1ad618150324c534039e6810990fd57a1990243c /elf
parent38334018ff9ea088c24afd6c2a5b3baa12b6110e (diff)
downloadglibc-01f3e03bcd992cc2917f5d228e763ef3d65e67ad.tar.gz
glibc-01f3e03bcd992cc2917f5d228e763ef3d65e67ad.tar.xz
glibc-01f3e03bcd992cc2917f5d228e763ef3d65e67ad.zip
Sat Feb 10 13:09:03 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
	* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
	MAP_FILE if not already defined.

	* elf/elf.h: Add m68k reloc definitions.
	* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
Sat Feb 10 13:09:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>

	* sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
	MAP_FILE if not already defined.

	* elf/elf.h: Add m68k reloc definitions.
	* sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-runtime.c6
-rw-r--r--elf/elf.h28
2 files changed, 33 insertions, 1 deletions
diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
index 7e554bc831..6ee1a94128 100644
--- a/elf/dl-runtime.c
+++ b/elf/dl-runtime.c
@@ -48,7 +48,11 @@ static Elf32_Addr fixup (struct link_map *l, Elf32_Word reloc_offset)
    function.  */
 
 static Elf32_Addr
-fixup (struct link_map *l, Elf32_Word reloc_offset)
+fixup (
+#ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS
+       ELF_MACHINE_RUNTIME_FIXUP_ARGS,
+#endif
+       struct link_map *l, Elf32_Word reloc_offset)
 {
   const Elf32_Sym *const symtab
     = (const Elf32_Sym *) (l->l_addr + l->l_info[DT_SYMTAB]->d_un.d_ptr);
diff --git a/elf/elf.h b/elf/elf.h
index 6eaf31fc08..207db0010a 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -439,6 +439,34 @@ typedef struct
 #define AT_GID		13		/* Real gid */
 #define AT_EGID		14		/* Effective gid */
 
+/* Motorola 68k specific definitions.  */
+
+/* m68k relocs.  */
+
+#define R_68K_NONE	0		/* No reloc */
+#define R_68K_32	1		/* Direct 32 bit  */
+#define R_68K_16	2		/* Direct 16 bit  */
+#define R_68K_8		3		/* Direct 8 bit  */
+#define R_68K_PC32	4		/* PC relative 32 bit */
+#define R_68K_PC16	5		/* PC relative 16 bit */
+#define R_68K_PC8	6		/* PC relative 8 bit */
+#define R_68K_GOT32	7		/* 32 bit PC relative GOT entry */
+#define R_68K_GOT16	8		/* 16 bit PC relative GOT entry */
+#define R_68K_GOT8	9		/* 8 bit PC relative GOT entry */
+#define R_68K_GOT32O	10		/* 32 bit GOT offset */
+#define R_68K_GOT16O	11		/* 16 bit GOT offset */
+#define R_68K_GOT8O	12		/* 8 bit GOT offset */
+#define R_68K_PLT32	13		/* 32 bit PC relative PLT address */
+#define R_68K_PLT16	14		/* 16 bit PC relative PLT address */
+#define R_68K_PLT8	15		/* 8 bit PC relative PLT address */
+#define R_68K_PLT32O	16		/* 32 bit PLT offset */
+#define R_68K_PLT16O	17		/* 16 bit PLT offset */
+#define R_68K_PLT8O	18		/* 8 bit PLT offset */
+#define R_68K_COPY	19		/* Copy symbol at runtime */
+#define R_68K_GLOB_DAT	20		/* Create GOT entry */
+#define R_68K_JMP_SLOT	21		/* Create PLT entry */
+#define R_68K_RELATIVE	22		/* Adjust by program base */
+
 /* Intel 80386 specific definitions.  */
 
 /* i386 relocs.  */