From a4d27d2d385db205a9e6a0983985e02085f910ef Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Thu, 19 Aug 2004 19:17:30 +0000 Subject: [PATCH] Patch from Rodney Radford adding x86_64 support. --- modutils/insmod.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/modutils/insmod.c b/modutils/insmod.c index d1aa24f14..c057774b6 100644 --- a/modutils/insmod.c +++ b/modutils/insmod.c @@ -2,12 +2,15 @@ /* * Mini insmod implementation for busybox * - * This version of insmod supports x86, ARM, SH3/4/5, powerpc, m68k, + * This version of insmod supports x86, x86_64, ARM, SH3/4/5, powerpc, m68k, * MIPS, v850e, and H8/300. * * Copyright (C) 1999-2004 by Erik Andersen * and Ron Alder * + * Rodney Radford 17-Aug-2004. + * Added x86_64 support. + * * Miles Bader added NEC V850E support. * * Modified by Bryan Rittmeyer to support SH4 @@ -148,6 +151,13 @@ extern int insmod_ng_main( int argc, char **argv); #define ELFCLASSM ELFCLASS32 #endif +#if defined(__x86_64__) +#define MATCH_MACHINE(x) (x == EM_X86_64) +#define SHT_RELM SHT_REL +#define Elf64_RelM Elf64_Rel +#define ELFCLASSM ELFCLASS64 +#endif + #if defined(__mc68000__) #define CONFIG_USE_GOT_ENTRIES #define CONFIG_GOT_ENTRY_SIZE 4 @@ -290,7 +300,7 @@ extern int insmod_ng_main( int argc, char **argv); #ifndef MODUTILS_MODULE_H static const int MODUTILS_MODULE_H = 1; -#ident "$Id: insmod.c,v 1.122 2004/07/20 15:43:57 sandman Exp $" +#ident "$Id: insmod.c,v 1.123 2004/08/19 19:17:30 andersen Exp $" /*======================================================================*/ /* For sizeof() which are related to the module platform and not to the @@ -448,7 +458,7 @@ int delete_module(const char *); #ifndef MODUTILS_OBJ_H static const int MODUTILS_OBJ_H = 1; -#ident "$Id: insmod.c,v 1.122 2004/07/20 15:43:57 sandman Exp $" +#ident "$Id: insmod.c,v 1.123 2004/08/19 19:17:30 andersen Exp $" /* The relocatable object is manipulated using elfin types. */