diff options
author | Russ Cox <rsc@swtch.com> | 2012-03-05 16:36:31 -0500 |
---|---|---|
committer | Russ Cox <rsc@swtch.com> | 2012-03-05 16:36:31 -0500 |
commit | 4a000a28d30ea9a7df06088bcd4bed0ab431f0ad (patch) | |
tree | eb01eecada873fb4b301902ef59516054af8f23a /src/libmach | |
parent | a31903778164deec9e58a525e2203bb416cafe0e (diff) | |
parent | a31903778164deec9e58a525e2203bb416cafe0e (diff) | |
download | plan9port-4a000a28d30ea9a7df06088bcd4bed0ab431f0ad.tar.gz plan9port-4a000a28d30ea9a7df06088bcd4bed0ab431f0ad.tar.bz2 plan9port-4a000a28d30ea9a7df06088bcd4bed0ab431f0ad.zip |
merge
Diffstat (limited to 'src/libmach')
-rw-r--r-- | src/libmach/elfcorefreebsdamd64.c | 3 | ||||
-rw-r--r-- | src/libmach/regs.c | 5 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/libmach/elfcorefreebsdamd64.c b/src/libmach/elfcorefreebsdamd64.c index aefed432..dd7f6f94 100644 --- a/src/libmach/elfcorefreebsdamd64.c +++ b/src/libmach/elfcorefreebsdamd64.c @@ -113,7 +113,8 @@ elfcorefreebsdamd64(Fhdr *fp, Elf *elf, ElfNote *note) u->flags = l->rflags; u->sp = l->rsp; u->ss = l->ss; - +print("core PC=%#llux SP=%#llux\n", u->ip, u->sp); + if((fp->thread = realloc(fp->thread, (1+fp->nthread)*sizeof(fp->thread[0]))) == nil){ fprint(2, "warning: out of memory saving thread info\n"); return; diff --git a/src/libmach/regs.c b/src/libmach/regs.c index 4df03cbd..07616c1f 100644 --- a/src/libmach/regs.c +++ b/src/libmach/regs.c @@ -27,7 +27,7 @@ int rget(Regs *regs, char *name, u64int *u) { if(regs == nil){ - *u = ~(ulong)0; + *u = ~(u64int)0; werrstr("registers not mapped"); return -1; } @@ -54,6 +54,9 @@ _uregrw(Regs *regs, char *name, u64int *u, int isr) case 'X': *u = mach->swap4(*(u32int*)ureg); return 0; + case 'Y': + *u = mach->swap8(*(u64int*)ureg); + return 0; } } |