Module Name: src Committed By: snj Date: Fri May 12 06:23:29 UTC 2017
Modified Files: src/sys/arch/mips/include [netbsd-7]: ecoff_machdep.h Log Message: Pull up following revision(s) (requested by skrll in ticket #1406): sys/arch/mips/include/ecoff_machdep.h: revision 1.23 sys/sys/exec_ecoff.h: revision 1.21 tools/Makefile.nbincludes: revision 1.5 tools/mips-elf2ecoff/Makefile: revision 1.3 tools/mips-elf2ecoff/machine/ecoff_machdep.h: revision 1.3 tools/mips-elf2ecoff/sys/exec_elf.h: file removal tools/mips-elf2ecoff/sys/exec_ecoff.h: file removal usr.bin/elf2ecoff/elf2ecoff.c: revision 1.30-1.33 use the nbcompat copies for those files -- ignore the abiflags section -- Add exec_ecoff.h -- provide ecoff 32 defines. -- This only works with 32 bit Elf and COFF files, make it specific this way and use sized types so that it works on 64 bit systems (so it can become a tool). -- Provided sized definitions for ecoff 32 bit headers. -- refresh -- fix printf format. -- fix printf format To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.21.14.1 src/sys/arch/mips/include/ecoff_machdep.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/mips/include/ecoff_machdep.h diff -u src/sys/arch/mips/include/ecoff_machdep.h:1.21 src/sys/arch/mips/include/ecoff_machdep.h:1.21.14.1 --- src/sys/arch/mips/include/ecoff_machdep.h:1.21 Tue Mar 20 11:28:04 2012 +++ src/sys/arch/mips/include/ecoff_machdep.h Fri May 12 06:23:28 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: ecoff_machdep.h,v 1.21 2012/03/20 11:28:04 nonaka Exp $ */ +/* $NetBSD: ecoff_machdep.h,v 1.21.14.1 2017/05/12 06:23:28 snj Exp $ */ /* * Copyright (c) 1997 Jonathan Stone @@ -37,6 +37,12 @@ #define ECOFF_LDPGSZ 4096 #define ECOFF_PAD +#define ECOFF32_PAD + +#define ECOFF32_MACHDEP \ + ecoff32_ulong gprmask; \ + ecoff32_ulong cprmask[4]; \ + ecoff32_ulong gp_value #define ECOFF_MACHDEP \ u_long gprmask; \ @@ -67,6 +73,7 @@ #define ECOFF_SEGMENT_ALIGNMENT(ep) ((ep)->a.vstamp < 23 ? 8 : 16) +#define ECOFF32_SEGMENT_ALIGNMENT(ep) ((ep)->a.vstamp < 23 ? 8 : 16) #ifdef _KERNEL struct proc; @@ -75,6 +82,34 @@ void cpu_exec_ecoff_setregs(struct lwp * #endif /* _KERNEL */ +struct ecoff32_symhdr { + int16_t magic; + int16_t vstamp; + int32_t ilineMax; + int32_t cbLine; + int32_t cbLineOffset; + int32_t idnMax; + int32_t cbDnOffset; + int32_t ipdMax; + int32_t cbPdOffset; + int32_t isymMax; + int32_t cbSymOffset; + int32_t ioptMax; + int32_t cbOptOffset; + int32_t iauxMax; + int32_t cbAuxOffset; + int32_t issMax; + int32_t cbSsOffset; + int32_t issExtMax; + int32_t cbSsExtOffset; + int32_t ifdMax; + int32_t cbFdOffset; + int32_t crfd; + int32_t cbRfdOffset; + int32_t iextMax; + int32_t cbExtOffset; +}; + /* * ECOFF symbol definitions for 32-bit mips. * XXX 64-bit (mips3?) may be different. @@ -121,3 +156,14 @@ struct ecoff_extsym { unsigned :1; unsigned es_symauxindex:20; }; + +struct ecoff32_extsym { + uint16_t es_flags; + uint16_t es_ifd; + int32_t es_strindex; + int32_t es_value; + unsigned es_type:6; + unsigned es_class:5; + unsigned :1; + unsigned es_symauxindex:20; +};