diff --git a/sys/i386/include/elf.h b/sys/i386/include/elf.h index 46d512c05929..c9ec741181c3 100644 --- a/sys/i386/include/elf.h +++ b/sys/i386/include/elf.h @@ -34,8 +34,14 @@ */ #include /* Definitions common to all 32 bit architectures. */ +#if defined(__ELF_WORD_SIZE) && __ELF_WORD_SIZE == 64 +#include /* Definitions common to all 64 bit architectures. */ +#endif +#ifndef __ELF_WORD_SIZE #define __ELF_WORD_SIZE 32 /* Used by */ +#endif + #include #define ELF_ARCH EM_386 @@ -58,6 +64,13 @@ typedef struct { /* Auxiliary vector entry on initial stack */ } a_un; } Elf32_Auxinfo; +#if __ELF_WORD_SIZE == 64 +/* Fake for amd64 loader support */ +typedef struct { + int fake; +} Elf64_Auxinfo; +#endif + __ElfType(Auxinfo); /* Values for a_type. */