Handle kernel load addresses better.
[jmk] --rw-rw-r-- M 1428987 glenda sys 2085 Jan 28 12:56 sys/src/libmach/2.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/2.c:76,82 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/2.c:76,82
0, /* value */
0x2000, /* page size */
0x80000000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0x80000000ULL, /* kernel text mask */
0x7FFFFFFFULL, /* user stack top */
2, /* quantization of pc */
4, /* szaddr */
[jmk] --rw-rw-r-- M 1428987 glenda sys 1564 Jan 28 12:56 sys/src/libmach/5.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/5.c:54,60 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/5.c:54,60
0, /* static base register value */
0x1000, /* page size */
0xC0000000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0xC0000000ULL, /* kernel text mask */
0x7FFFFFFFULL, /* user stack top */
4, /* quantization of pc */
4, /* szaddr */
[jmk] --rw-rw-r-- M 1428987 jmk sys 3482 Jan 28 12:56 sys/src/libmach/6.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/6.c:107,113 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/6.c:107,113
0, /* static base register value */
0x1000, /* page size */
0xFFFFFFFF80110000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0xFFFF800000000000ULL, /* kernel text mask */
0x00007FFFFFFFF000ULL, /* user stack top */
1, /* quantization of pc */
8, /* szaddr */
[jmk] --rw-rw-r-- M 1428987 glenda sys 3310 Jan 28 12:57 sys/src/libmach/7.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/7.c:104,110 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/7.c:104,110
0, /* static base register value */
0x2000, /* page size */
0x80000000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0xF0000000ULL, /* kernel text mask */
0x7FFFFFFFULL, /* user stack top */
4, /* quantization of pc */
4, /* szaddr */
[jmk] --rw-rw-r-- M 1428987 glenda sys 2071 Jan 28 12:57 sys/src/libmach/8.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/8.c:69,75 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/8.c:69,75
0, /* static base register value */
0x1000, /* page size */
0x80100000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0xF0000000ULL, /* kernel text mask */
0x7FFFFFFFULL, /* user stack top */
1, /* quantization of pc */
4, /* szaddr */
[jmk] --rw-rw-r-- M 1428987 glenda sys 16006 Jan 28 12:56 sys/src/libmach/executable.c
[diffs elided - too long]
[diff -c /n/sourcesdump/2006/0128/plan9/sys/src/libmach/executable.c /n/sourcesdump/2006/0129/plan9/sys/src/libmach/executable.c]
[jmk] --rw-rw-r-- M 1428987 glenda sys 3381 Jan 28 12:57 sys/src/libmach/k.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/k.c:108,114 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/k.c:108,114
0, /* value */
0x1000, /* page size */
0xE0000000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0xE0000000ULL, /* kernel text mask */
0x7FFFFFFFULL, /* user stack top */
4, /* quantization of pc */
4, /* szaddr */
[jmk] --rw-rw-r-- M 1428987 glenda sys 26745 Jan 28 12:56 sys/src/libmach/sym.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/sym.c:103,109 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/sym.c:103,109
nsym = 0;
size = 0;
for(p = symbols; size < fp->symsz; p++, nsym++) {
- if(fp->magic & HDR_MAGIC){
+ if(fp->_magic && (fp->magic & HDR_MAGIC)){
svalsz = 8;
if(Bread(&b, &vl, 8) != 8)
return symerrmsg(8, "symbol");
[jmk] --rw-rw-r-- M 1428987 jmk sys 3447 Jan 28 12:56 sys/src/libmach/u.c
/n/sourcesdump/2006/0128/plan9/sys/src/libmach/u.c:109,115 -
/n/sourcesdump/2006/0129/plan9/sys/src/libmach/u.c:109,115
0, /* value */
0x2000, /* page size */
0x80000000ULL, /* kernel base */
- 0, /* kernel text mask */
+ 0x80000000ULL, /* kernel text mask */
0x7FFFFFFFULL, /* user stack top */
4, /* quantization of pc */
4, /* szaddr */
|