Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/tools/mips-elf2ecoff/machine refresh



details:   https://anonhg.NetBSD.org/src/rev/923ed5bd2a80
branches:  trunk
changeset: 351731:923ed5bd2a80
user:      christos <christos%NetBSD.org@localhost>
date:      Fri Feb 24 03:44:54 2017 +0000

description:
refresh

diffstat:

 tools/mips-elf2ecoff/machine/ecoff_machdep.h |  65 ++++++++++++++++++++++-----
 1 files changed, 53 insertions(+), 12 deletions(-)

diffs (105 lines):

diff -r a47d50660235 -r 923ed5bd2a80 tools/mips-elf2ecoff/machine/ecoff_machdep.h
--- a/tools/mips-elf2ecoff/machine/ecoff_machdep.h      Fri Feb 24 01:26:17 2017 +0000
+++ b/tools/mips-elf2ecoff/machine/ecoff_machdep.h      Fri Feb 24 03:44:54 2017 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ecoff_machdep.h,v 1.2 2002/03/23 17:13:45 bouyer Exp $ */
+/*     $NetBSD: ecoff_machdep.h,v 1.3 2017/02/24 03:44:54 christos Exp $       */
 
 /*
  * Copyright (c) 1997 Jonathan Stone
@@ -34,23 +34,25 @@
  * SUCH DAMAGE.
  */
 
-typedef u_int16_t      ECOFF_USHORT;
-typedef u_int32_t      ECOFF_UINT;
-typedef u_int32_t      ECOFF_ULONG;
-
 #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 \
-        ECOFF_ULONG gprmask; \
-        ECOFF_ULONG cprmask[4]; \
-        ECOFF_ULONG gp_value
+        u_long gprmask; \
+        u_long cprmask[4]; \
+        u_long gp_value
 #ifdef _KERNEL
-#include <mips/cpu.h>          /* mips CPU architecture levels */
+#include <mips/locore.h>               /* mips CPU architecture levels */
 #define _MIPS3_OK() CPUISMIPS3
 #else
-#define _MIPS3_OK() 1
+#define _MIPS3_OK() /*CONSTCOND*/1
 #endif
 
 
@@ -71,15 +73,43 @@
 
 
 #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;
 struct exec_package;
-void   cpu_exec_ecoff_setregs __P((
-    struct proc *, struct exec_package *, u_long));
+void   cpu_exec_ecoff_setregs(struct lwp *, struct exec_package *, vaddr_t);
 #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.
@@ -126,3 +156,14 @@
        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;
+};



Home | Main Index | Thread Index | Old Index