svn commit: r197014 - projects/mips/sys/mips/mips
Warner Losh
imp at FreeBSD.org
Wed Sep 9 03:57:10 UTC 2009
Author: imp
Date: Wed Sep 9 03:57:10 2009
New Revision: 197014
URL: http://svn.freebsd.org/changeset/base/197014
Log:
Ugly hack to get this to compile. I'm sure there's a better way...
Modified:
projects/mips/sys/mips/mips/elf_trampoline.c
Modified: projects/mips/sys/mips/mips/elf_trampoline.c
==============================================================================
--- projects/mips/sys/mips/mips/elf_trampoline.c Wed Sep 9 03:54:55 2009 (r197013)
+++ projects/mips/sys/mips/mips/elf_trampoline.c Wed Sep 9 03:57:10 2009 (r197014)
@@ -27,7 +27,11 @@ __FBSDID("$FreeBSD$");
#include <machine/asm.h>
#include <sys/param.h>
+#ifdef __mips_n64
+#include <sys/elf64.h>
+#else
#include <sys/elf32.h>
+#endif
#include <sys/inflate.h>
#include <machine/elf.h>
#include <machine/cpufunc.h>
@@ -89,12 +93,21 @@ bzero(void *addr, size_t count)
void *
load_kernel(void * kstart)
{
+#ifdef __mips_n64
+ Elf64_Ehdr *eh;
+ Elf64_Phdr phdr[64] /* XXX */;
+#else
Elf32_Ehdr *eh;
Elf32_Phdr phdr[64] /* XXX */;
+#endif
int i;
void *entry_point;
+#ifdef __mips_n64
+ eh = (Elf64_Ehdr *)kstart;
+#else
eh = (Elf32_Ehdr *)kstart;
+#endif
entry_point = (void*)eh->e_entry;
memcpy(phdr, (void *)(kstart + eh->e_phoff ),
eh->e_phnum * sizeof(phdr[0]));
More information about the svn-src-projects
mailing list