summaryrefslogtreecommitdiff
path: root/utils/libmach/executable.c
diff options
context:
space:
mode:
authorDavid Boddie <david@boddie.org.uk>2021-02-03 13:22:12 +0000
committerCharles Forsyth <charles.forsyth@gmail.com>2021-02-03 13:22:12 +0000
commit7bb791f115f350b3d65936061110ef08f6a5434f (patch)
tree72c24a577de5faf8b9d16ca4333d5e554070e8f6 /utils/libmach/executable.c
parent206fe115321515fd30686e46f830e26205053831 (diff)
parentc6b7177527d6244e733dd51c900028140d0dc947 (diff)
Merged in Linux/spim (pull request #11)
Fixes for spim architecture running on a Linux host Approved-by: Charles Forsyth
Diffstat (limited to 'utils/libmach/executable.c')
-rw-r--r--utils/libmach/executable.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/utils/libmach/executable.c b/utils/libmach/executable.c
index 2734cf44..ce12ca83 100644
--- a/utils/libmach/executable.c
+++ b/utils/libmach/executable.c
@@ -17,7 +17,7 @@ typedef struct {
uvlong hdr[1];
} exechdr64;
Ehdr elfhdr32; /* elf.h */
- struct mipsexec mips; /* bootexec.h */
+ struct mipsexec mips32; /* bootexec.h */
struct mips4kexec mips4k; /* bootexec.h */
struct sparcexec sparc; /* bootexec.h */
struct nextexec next; /* bootexec.h */
@@ -451,22 +451,22 @@ mipsboot(int fd, Fhdr *fp, ExecHdr *hp)
{
USED(fd);
fp->type = FMIPSB;
- switch(hp->e.mips.amagic) {
+ switch(hp->e.mips32.amagic) {
default:
case 0407: /* some kind of mips */
- settext(fp, (u32int)hp->e.mips.mentry, (u32int)hp->e.mips.text_start,
- hp->e.mips.tsize, sizeof(struct mipsexec)+4);
- setdata(fp, (u32int)hp->e.mips.data_start, hp->e.mips.dsize,
- fp->txtoff+hp->e.mips.tsize, hp->e.mips.bsize);
+ settext(fp, (u32int)hp->e.mips32.mentry, (u32int)hp->e.mips32.text_start,
+ hp->e.mips32.tsize, sizeof(struct mipsexec)+4);
+ setdata(fp, (u32int)hp->e.mips32.data_start, hp->e.mips32.dsize,
+ fp->txtoff+hp->e.mips32.tsize, hp->e.mips32.bsize);
break;
case 0413: /* some kind of mips */
- settext(fp, (u32int)hp->e.mips.mentry, (u32int)hp->e.mips.text_start,
- hp->e.mips.tsize, 0);
- setdata(fp, (u32int)hp->e.mips.data_start, hp->e.mips.dsize,
- hp->e.mips.tsize, hp->e.mips.bsize);
+ settext(fp, (u32int)hp->e.mips32.mentry, (u32int)hp->e.mips32.text_start,
+ hp->e.mips32.tsize, 0);
+ setdata(fp, (u32int)hp->e.mips32.data_start, hp->e.mips32.dsize,
+ hp->e.mips32.tsize, hp->e.mips32.bsize);
break;
}
- setsym(fp, hp->e.mips.nsyms, 0, hp->e.mips.pcsize, hp->e.mips.symptr);
+ setsym(fp, hp->e.mips32.nsyms, 0, hp->e.mips32.pcsize, hp->e.mips32.symptr);
fp->hdrsz = 0; /* header stripped */
return 1;
}