Avoid smashing error string. Remove redundant n<0.
[rsc] --rw-rw-r-- M 107020 glenda sys 15915 Nov 19 10:56 sys/src/cmd/ramfs.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ramfs.c:791,803 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ramfs.c:791,801
*/
n = read9pmsg(mfd[0], mdata, messagesize);
if(n < 0){
- errstr(buf, sizeof buf);
+ rerrstr(buf, sizeof buf);
if(buf[0]=='\0' || strstr(buf, "hungup"))
exits("");
error("mount read");
}
- if(n < 0)
- error("mount read");
if(n == 0)
continue;
if(convM2S(mdata, n, &thdr) == 0)
Minor changes.
[jmk] --rw-rw-r-- M 107020 glenda sys 50964 Nov 19 20:00 sys/src/9/alphapc/sd53c8xx.c
/n/sourcesdump/2005/1119/plan9/sys/src/9/alphapc/sd53c8xx.c:1987,1993 -
/n/sourcesdump/2005/1120/plan9/sys/src/9/alphapc/sd53c8xx.c:1987,1993
/*
* Because we don't yet have an abstraction for the
* addresses as seen from the controller side (and on
- * the 386 it doesn't matter), the follwong two lines
+ * the 386 it doesn't matter), the following two lines
* are different between the 386 and alpha copies of
* this driver.
*/
[jmk] --rw-rw-r-- M 107020 presotto sys 7502 Nov 19 19:59 sys/src/9/pc/devlml.c
/n/sourcesdump/2005/1119/plan9/sys/src/9/pc/devlml.c:159,165 -
/n/sourcesdump/2005/1120/plan9/sys/src/9/pc/devlml.c:159,165
print("zr36067 found at 0x%.8lux", pcidev->mem[0].bar & ~0x0F);
regpa = pcidev->mem[0].bar & ~0x0F;
- regva = vmap(regpa, pcidev->mem[0].size, 0);
+ regva = vmap(regpa, pcidev->mem[0].size);
if (regva == 0) {
print("lml: failed to map registers\n");
return;
Fix memory leak.
[rsc] --rw-rw-r-- M 107020 glenda sys 6651 Nov 19 19:47 sys/src/lib9p/file.c
/n/sourcesdump/2005/1119/plan9/sys/src/lib9p/file.c:310,322 -
/n/sourcesdump/2005/1120/plan9/sys/src/lib9p/file.c:310,320
f = allocfile();
f->name = estrdup9p("/");
if(uid == nil){
- if(uid = getuser())
- uid = estrdup9p(uid);
+ uid = getuser();
+ if(uid == nil)
+ uid = "none";
}
- if(uid == nil)
- uid = estrdup9p("none");
- else
- uid = estrdup9p(uid);
+ uid = estrdup9p(uid);
if(gid == nil)
gid = estrdup9p(uid);
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 14280 Nov 19 20:27 sys/src/cmd/troff2html/troff2html.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:7,19 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:7,22
Wid = 20, /* tmac.anhtml sets page width to 20" so we can recognize .nf text */
};
- typedef ulong Char;
+ typedef uintptr Char;
typedef struct Troffchar Troffchar;
typedef struct Htmlchar Htmlchar;
typedef struct Font Font;
typedef struct HTMLfont HTMLfont;
- /* a Char is 32 bits. low 16 bits are the rune. higher are attributes */
+ /*
+ * a Char is >= 32 bits. low 16 bits are the rune. higher are attributes.
+ * must be able to hold a pointer.
+ */
enum
{
Italic = 16,
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:66,77 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:69,80
/* R must be first; it's the default representation for fonts we don't recognize */
HTMLfont htmlfonts[] =
{
- "R", nil, 0,
- "LucidaSans", nil, 0,
- "I", "i", Italic,
+ "R", nil, 0,
+ "LucidaSans", nil, 0,
+ "I", "i", Italic,
"LucidaSansI", "i", Italic,
- "CW", "tt", CW,
- "LucidaCW", "tt", CW,
+ "CW", "tt", CW,
+ "LucidaCW", "tt", CW,
nil, nil,
};
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:78,121 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:81,124
#define TABLE "<table border=0 cellpadding=0 cellspacing=0>"
char*
- onattr[8*sizeof(ulong)] =
+ onattr[8*sizeof(int)] =
{
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- "<i>", /* italic */
- "<b>", /* bold */
+ "<i>", /* italic */
+ "<b>", /* bold */
"<tt><font size=+1>", /* cw */
- "<+table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>\n", /* indent1 */
- "<+table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>\n", /* indent2 */
- "<+table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>\n", /* indent3 */
+ "<+table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>\n", /* indent1 */
+ "<+table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>\n", /* indent2 */
+ "<+table border=0 cellpadding=0 cellspacing=0><tr height=2><td><tr><td width=20><td>\n", /* indent3 */
0,
0,
0,
"<p><font size=+1><b>", /* heading 25 */
- "<unused>", /* anchor 26 */
+ "<unused>", /* anchor 26 */
};
char*
- offattr[8*sizeof(ulong)] =
+ offattr[8*sizeof(int)] =
{
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
- "</i>", /* italic */
- "</b>", /* bold */
- "</font></tt>", /* cw */
- "<-/table>", /* indent1 */
- "<-/table>", /* indent2 */
- "<-/table>", /* indent3 */
+ "</i>", /* italic */
+ "</b>", /* bold */
+ "</font></tt>", /* cw */
+ "<-/table>", /* indent1 */
+ "<-/table>", /* indent2 */
+ "<-/table>", /* indent3 */
0,
0,
0,
- "</b></font>", /* heading 25 */
- "</a>", /* anchor 26 */
+ "</b></font>", /* heading 25 */
+ "</a>", /* anchor 26 */
};
- Font *font[Nfont];
+ Font *font[Nfont];
- Biobuf bout;
+ Biobuf bout;
int debug = 0;
/* troff state */
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:126,141 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:129,144
int ps = 1;
int res = 720;
- int didP = 0;
- int atnewline = 1;
- int prevlineH = 0;
- ulong attr = 0; /* or'ed into each Char */
+ int didP = 0;
+ int atnewline = 1;
+ int prevlineH = 0;
+ Char attr = 0; /* or'ed into each Char */
- Char *chars;
- int nchars;
- int nalloc;
+ Char *chars;
+ int nchars;
+ int nalloc;
char** anchors; /* allocated in order */
- int nanchors;
+ int nanchors;
char *filename;
int cno;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:245,251 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:248,254
}
void
- emitul(ulong ul)
+ emitchar(Char c)
{
if(nalloc == nchars){
nalloc += 10000;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:253,265 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:256,268
if(chars == nil)
sysfatal("malloc failed: %r");
}
- chars[nchars++] = ul;
+ chars[nchars++] = c;
}
void
emit(Rune r)
{
- emitul(r | attr);
+ emitchar(r | attr);
/*
* Close man page references early, so that
* .IR proof (1),
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:272,279 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:275,282
void
emitstr(char *s)
{
- emitul(Estring);
- emitul((ulong)s);
+ emitchar(Estring);
+ emitchar((Char)s);
}
int indentlevel;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:312,320 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:315,324
}
void
- setattr(ulong a)
+ setattr(Char a)
{
- int on, off, i, j;
+ Char on, off;
+ int i, j;
on = a & ~attr;
off = attr & ~a;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:348,353 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:352,359
if(j == Anchor)
onattr[j] = anchors[nanchors++];
iputs(&bout, onattr[j]);
+ if(nnest >= nelem(nest))
+ sysfatal("nesting too deep");
nest[nnest++] = j;
}
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:358,364 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:364,370
flush(void)
{
int i;
- ulong c, a;
+ Char c, a;
nanchors = 0;
for(i=0; i<nchars; i++){
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/troff2html/troff2html.c:561,572 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/troff2html/troff2html.c:567,578
}
}else if(strcmp(fld[2], "manPP") == 0){
didP = 1;
- emitul(Epp);
+ emitchar(Epp);
}else if(nfld<4 || strcmp(fld[2], "manref")!=0){
if(nfld>2 && strcmp(fld[2], "<P>")==0){ /* avoid triggering extra <br> */
didP = 1;
/* clear all font attributes before paragraph */
- emitul(' ' | (attr & ~(0xFFFF|((1<<Italic)|(1<<Bold)|(1<<CW)))));
+ emitchar(' ' | (attr & ~(0xFFFF|((1<<Italic)|(1<<Bold)|(1<<CW)))));
emitstr("<P>");
/* next emittec char will turn font attributes back on */
}else if(nfld>2 && strcmp(fld[2], "<H4>")==0)
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 23687 Nov 19 20:17 sys/src/cmd/webcookies.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:25,67 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:25,67
char* dom; /* starts with . */
char* path;
char* version;
- char* comment; /* optional, may be nil */
+ char* comment; /* optional, may be nil */
- uint expire; /* time of expiration: ~0 means when webcookies dies */
- int secure;
- int explicitdom; /* dom was explicitly set */
- int explicitpath; /* path was explicitly set */
- int netscapestyle;
+ uint expire; /* time of expiration: ~0 means when webcookies dies */
+ int secure;
+ int explicitdom; /* dom was explicitly set */
+ int explicitpath; /* path was explicitly set */
+ int netscapestyle;
/* internal info */
- int deleted;
- int mark;
- int ondisk;
+ int deleted;
+ int mark;
+ int ondisk;
};
struct Jar
{
Cookie *c;
- int nc;
- int mc;
+ int nc;
+ int mc;
- Qid qid;
- int dirty;
- char *file;
- char *lockfile;
+ Qid qid;
+ int dirty;
+ char *file;
+ char *lockfile;
};
struct {
- char *s;
+ char *s;
int offset;
int ishttp;
} stab[] = {
"domain", offsetof(Cookie, dom), 1,
- "path", offsetof(Cookie, path), 1,
- "name", offsetof(Cookie, name), 0,
- "value", offsetof(Cookie, value), 0,
- "comment", offsetof(Cookie, comment), 1,
- "version", offsetof(Cookie, version), 1,
+ "path", offsetof(Cookie, path), 1,
+ "name", offsetof(Cookie, name), 0,
+ "value", offsetof(Cookie, value), 0,
+ "comment", offsetof(Cookie, comment), 1,
+ "version", offsetof(Cookie, version), 1,
};
struct {
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:68,75 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:68,75
char *s;
int offset;
} itab[] = {
- "expire", offsetof(Cookie, expire),
- "secure", offsetof(Cookie, secure),
+ "expire", offsetof(Cookie, expire),
+ "secure", offsetof(Cookie, secure),
"explicitdomain", offsetof(Cookie, explicitdom),
"explicitpath", offsetof(Cookie, explicitpath),
"netscapestyle", offsetof(Cookie, netscapestyle),
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:110,116 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:110,116
first = 1;
for(j=0; j<nelem(stab); j++){
- t = *(char**)((ulong)c+stab[j].offset);
+ t = *(char**)((char*)c+stab[j].offset);
if(t == nil)
continue;
if(first)
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:120,126 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:120,126
fmtprint(fmt, "%s=%q", stab[j].s, t);
}
for(j=0; j<nelem(itab); j++){
- k = *(int*)((ulong)c+itab[j].offset);
+ k = *(int*)((char*)c+itab[j].offset);
if(k == 0)
continue;
if(first)
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:199,205 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:199,205
int i;
for(i=0; i<nelem(stab); i++)
- free(*(char**)((ulong)c+stab[i].offset));
+ free(*(char**)((char*)c+stab[i].offset));
}
void
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:209,215 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:209,215
char **ps;
for(i=0; i<nelem(stab); i++){
- ps = (char**)((ulong)c+stab[i].offset);
+ ps = (char**)((char*)c+stab[i].offset);
if(*ps)
*ps = estrdup9p(*ps);
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:297,303 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:297,303
/* string attributes */
for(j=0; j<nelem(stab); j++){
if(strcmp(stab[j].s, attr) == 0){
- pstr = (char**)((ulong)&c+stab[j].offset);
+ pstr = (char**)((char*)&c+stab[j].offset);
*pstr = val;
}
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:304,310 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:304,310
/* integer attributes */
for(j=0; j<nelem(itab); j++){
if(strcmp(itab[j].s, attr) == 0){
- pint = (int*)((ulong)&c+itab[j].offset);
+ pint = (int*)((char*)&c+itab[j].offset);
if(val[0]=='\0')
*pint = 1;
else
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:933,939 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:933,939
}
for(i=0; i<nelem(stab); i++)
if(stab[i].ishttp && cistrcmp(stab[i].s, attr)==0)
- *(char**)((ulong)c+stab[i].offset) = val;
+ *(char**)((char*)c+stab[i].offset) = val;
if(cistrcmp(attr, "expires") == 0){
if(!isns)
return "non-netscape cookie has Expires tag";
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:1003,1009 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:1003,1009
int i, sz;
Aux *a;
- switch((int)r->fid->file->aux){
+ switch((uintptr)r->fid->file->aux){
case Xhttp:
syncjar(jar);
a = emalloc9p(sizeof(Aux));
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:1039,1045 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:1039,1045
Aux *a;
a = r->fid->aux;
- switch((int)r->fid->file->aux){
+ switch((uintptr)r->fid->file->aux){
case Xhttp:
if(a->state == NeedUrl){
respond(r, "must write url before read");
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:1071,1077 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:1071,1077
Jar *j;
a = r->fid->aux;
- switch((int)r->fid->file->aux){
+ switch((uintptr)r->fid->file->aux){
case Xhttp:
if(a->state == NeedUrl){
if(r->ifcall.count >= sizeof buf){
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/webcookies.c:1157,1163 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/webcookies.c:1157,1163
a = fid->aux;
if(a == nil)
return;
- switch((int)fid->file->aux){
+ switch((uintptr)fid->file->aux){
case Xhttp:
parsehttp(jar, a->inhttp, a->dom, a->path);
break;
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 10774 Nov 19 20:09 sys/src/cmd/sam/cmd.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/cmd.c:50,59 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/cmd.c:50,61
Rune *linep = line;
Rune *terminp = termline;
Rune *termoutp = termline;
- List cmdlist;
- List addrlist;
- List relist;
- List stringlist;
+
+ List cmdlist = { 'p' };
+ List addrlist = { 'p' };
+ List relist = { 'p' };
+ List stringlist = { 'p' };
+
int eof;
void
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/cmd.c:244,250 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/cmd.c:246,252
Cmd *p;
p = emalloc(sizeof(Cmd));
- inslist(&cmdlist, cmdlist.nused, (long)p);
+ inslist(&cmdlist, cmdlist.nused, p);
return p;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/cmd.c:254,260 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/cmd.c:256,262
Addr *p;
p = emalloc(sizeof(Addr));
- inslist(&addrlist, addrlist.nused, (long)p);
+ inslist(&addrlist, addrlist.nused, p);
return p;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/cmd.c:264,270 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/cmd.c:266,272
String *p;
p = emalloc(sizeof(String));
- inslist(&relist, relist.nused, (long)p);
+ inslist(&relist, relist.nused, p);
Strinit(p);
return p;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/cmd.c:275,281 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/cmd.c:277,283
String *p;
p = emalloc(sizeof(String));
- inslist(&stringlist, stringlist.nused, (long)p);
+ inslist(&stringlist, stringlist.nused, p);
Strinit(p);
return p;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/cmd.c:286,294 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/cmd.c:288,296
int i;
while(cmdlist.nused > 0)
- free(cmdlist.ucharpptr[--cmdlist.nused]);
+ free(cmdlist.voidpptr[--cmdlist.nused]);
while(addrlist.nused > 0)
- free(addrlist.ucharpptr[--addrlist.nused]);
+ free(addrlist.voidpptr[--addrlist.nused]);
while(relist.nused > 0){
i = --relist.nused;
Strclose(relist.stringpptr[i]);
[jmk] --rw-rw-r-- M 107020 glenda sys 1431 Nov 19 20:09 sys/src/cmd/sam/list.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/list.c:3,18 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/list.c:3,22
/*
* Check that list has room for one more element.
*/
- void
- growlist(List *l)
+ static void
+ growlist(List *l, int esize)
{
- if(l->listptr==0 || l->nalloc==0){
+ uchar *p;
+
+ if(l->listptr == nil || l->nalloc == 0){
l->nalloc = INCR;
- l->listptr = emalloc(INCR*sizeof(long));
+ l->listptr = emalloc(INCR*esize);
l->nused = 0;
- }else if(l->nused == l->nalloc){
- l->listptr = erealloc(l->listptr, (l->nalloc+INCR)*sizeof(long));
- memset((void*)(l->longptr+l->nalloc), 0, INCR*sizeof(long));
+ }
+ else if(l->nused == l->nalloc){
+ p = erealloc(l->listptr, (l->nalloc+INCR)*esize);
+ l->listptr = p;
+ memset(p+l->nalloc, 0, INCR*esize);
l->nalloc += INCR;
}
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/list.c:23,30 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/list.c:27,47
void
dellist(List *l, int i)
{
- memmove(&l->longptr[i], &l->longptr[i+1], (l->nused-(i+1))*sizeof(long));
+ Posn *pp;
+ void **vpp;
+
l->nused--;
+
+ switch(l->type){
+ case 'P':
+ pp = l->posnptr+i;
+ memmove(pp, pp+1, (l->nused-i)*sizeof(*pp));
+ break;
+ case 'p':
+ vpp = l->voidpptr+i;
+ memmove(vpp, vpp+1, (l->nused-i)*sizeof(*vpp));
+ break;
+ }
}
/*
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/list.c:31,41 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/list.c:48,77
* Add a new element, whose position is i, to the list
*/
void
- inslist(List *l, int i, long val)
+ inslist(List *l, int i, ...)
{
- growlist(l);
- memmove(&l->longptr[i+1], &l->longptr[i], (l->nused-i)*sizeof(long));
- l->longptr[i] = val;
+ Posn *pp;
+ void **vpp;
+ va_list list;
+
+
+ va_start(list, i);
+ switch(l->type){
+ case 'P':
+ growlist(l, sizeof(*pp));
+ pp = l->posnptr+i;
+ memmove(pp+1, pp, (l->nused-i)*sizeof(*pp));
+ *pp = va_arg(list, Posn);
+ break;
+ case 'p':
+ growlist(l, sizeof(*vpp));
+ vpp = l->voidpptr+i;
+ memmove(vpp+1, vpp, (l->nused-i)*sizeof(*vpp));
+ *vpp = va_arg(list, void*);
+ break;
+ }
+ va_end(list);
+
l->nused++;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/list.c:44,47 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/list.c:80,96
{
free(l->listptr);
free(l);
+ }
+
+ List*
+ listalloc(int type)
+ {
+ List *l;
+
+ l = emalloc(sizeof(List));
+ l->type = type;
+ l->nalloc = 0;
+ l->nused = 0;
+
+ return l;
}
[jmk] --rw-rw-r-- M 107020 glenda sys 14291 Nov 19 20:09 sys/src/cmd/sam/mesg.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:13,22 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:13,30
int noflush;
int tversion;
- long inlong(void);
- long invlong(void);
int inshort(void);
+ long inlong(void);
+ vlong invlong(void);
int inmesg(Tmesg);
+
+ void outshort(int);
+ void outlong(long);
+ void outvlong(vlong);
+ void outcopy(int, void*);
+ void outsend(void);
+ void outstart(Hmesg);
+
void setgenstr(File*, Posn, Posn);
#ifdef DEBUG
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:90,101 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:98,119
{
char buf[32];
- sprint(buf, "%ld", n);
+ snprint(buf, sizeof(buf), "%ld", n);
journal(out, buf);
}
+
+ void
+ journalv(int out, vlong v)
+ {
+ char buf[32];
+
+ sprint(buf, sizeof(buf), "%lld", v);
+ journal(out, buf);
+ }
#else
#define journal(a, b)
#define journaln(a, b)
+ #define journalv(a, b)
#endif
int
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:176,181 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:194,200
int i, m;
short s;
long l, l1;
+ vlong v;
File *f;
Posn p0, p1, p;
Range r;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:204,218 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:223,237
break;
case Tstartcmdfile:
- l = invlong(); /* for 64-bit pointers */
- journaln(0, l);
+ v = invlong(); /* for 64-bit pointers */
+ journalv(0, v);
Strdupl(&genstr, samname);
cmd = newfile();
cmd->unread = 0;
- outTsv(Hbindname, cmd->tag, l);
+ outTsv(Hbindname, cmd->tag, v);
outTs(Hcurrent, cmd->tag);
logsetname(cmd, &genstr);
- cmd->rasp = emalloc(sizeof(List));
+ cmd->rasp = listalloc('P');
cmd->mod = 0;
if(cmdstr.n){
loginsert(cmd, 0L, cmdstr.s, cmdstr.n);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:263,269 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:282,288
termlocked++;
f = whichfile(inshort());
if(!f->rasp) /* this might be a duplicate message */
- f->rasp = emalloc(sizeof(List));
+ f->rasp = listalloc('P');
current(f);
outTsv(Hbindname, f->tag, invlong()); /* for 64-bit pointers */
outTs(Hcurrent, f->tag);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:353,363 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:372,382
break;
case Tstartnewfile:
- l = invlong();
+ v = invlong();
Strdupl(&genstr, empty);
f = newfile();
- f->rasp = emalloc(sizeof(List));
- outTsv(Hbindname, f->tag, l);
+ f->rasp = listalloc('P');
+ outTsv(Hbindname, f->tag, v);
logsetname(f, &genstr);
outTs(Hcurrent, f->tag);
current(f);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:593,608 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:612,627
return n;
}
- long
+ vlong
invlong(void)
{
- ulong n;
+ vlong v;
- n = (inp[7]<<24) | (inp[6]<<16) | (inp[5]<<8) | inp[4];
- n = (n<<16) | (inp[3]<<8) | inp[2];
- n = (n<<16) | (inp[1]<<8) | inp[0];
+ v = (inp[7]<<24) | (inp[6]<<16) | (inp[5]<<8) | inp[4];
+ v = (v<<16) | (inp[3]<<8) | inp[2];
+ v = (v<<16) | (inp[1]<<8) | inp[0];
inp += 8;
- return n;
+ return v;
}
void
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:732,743 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:751,762
}
void
- outTsv(Hmesg type, int s, Posn l)
+ outTsv(Hmesg type, int s, vlong v)
{
outstart(type);
outshort(s);
- outvlong((void*)l);
- journaln(1, l);
+ outvlong(v);
+ journalv(1, v);
outsend();
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/mesg.c:773,786 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/mesg.c:792,805
}
void
- outvlong(void *v)
+ outvlong(vlong v)
{
int i;
- ulong l;
- l = (ulong) v;
- for(i = 0; i < 8; i++, l >>= 8)
- *outp++ = l;
+ for(i = 0; i < 8; i++){
+ *outp++ = v;
+ v >>= 8;
+ }
}
void
[jmk] --rw-rw-r-- M 107020 glenda sys 1844 Nov 19 20:09 sys/src/cmd/sam/multi.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/multi.c:1,6 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/multi.c:1,6
#include "sam.h"
- List file;
+ List file = { 'p' };
ushort tag;
File *
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/multi.c:9,15 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/multi.c:9,15
File *f;
f = fileopen();
- inslist(&file, 0, (long)f);
+ inslist(&file, 0, f);
f->tag = tag++;
if(downloaded)
outTs(Hnewname, f->tag);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/multi.c:88,94 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/multi.c:88,94
break;
}
}
- inslist(&file, i, (long)f);
+ inslist(&file, i, f);
if(downloaded)
outTsS(Hmovname, f->tag, &f->name);
}
[jmk] --rw-rw-r-- M 107020 glenda sys 5618 Nov 19 20:09 sys/src/cmd/sam/rasp.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/rasp.c:177,183 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/rasp.c:177,183
}
#define M 0x80000000L
- #define P(i) r->longptr[i]
+ #define P(i) r->posnptr[i]
#define T(i) (P(i)&M) /* in terminal */
#define L(i) (P(i)&~M) /* length of this piece */
[jmk] --rw-rw-r-- M 107020 glenda sys 12016 Nov 19 20:09 sys/src/cmd/sam/sam.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/sam.c:14,20 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/sam.c:14,20
File *flist;
File *cmd;
jmp_buf mainloop;
- List tempfile;
+ List tempfile = { 'p' };
int quitok = TRUE;
int downloaded;
int dflag;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/sam.c:73,79 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/sam.c:73,78
Strinit0(&genstr);
Strinit0(&rhs);
Strinit0(&curwd);
- tempfile.listptr = emalloc(1); /* so it can be freed later */
Strinit0(&plan9cmd);
home = getenv(HOME);
disk = diskinit();
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/sam.c:707,716 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/sam.c:706,716
settempfile(void)
{
if(tempfile.nalloc < file.nused){
- free(tempfile.listptr);
- tempfile.listptr = emalloc(sizeof(*tempfile.filepptr)*file.nused);
+ if(tempfile.filepptr)
+ free(tempfile.filepptr);
+ tempfile.filepptr = emalloc(sizeof(File*)*file.nused);
tempfile.nalloc = file.nused;
}
+ memmove(tempfile.filepptr, file.filepptr, sizeof(File*)*file.nused);
tempfile.nused = file.nused;
- memmove(&tempfile.filepptr[0], &file.filepptr[0], file.nused*sizeof(File*));
}
[jmk] --rw-rw-r-- M 107020 glenda sys 9345 Nov 19 20:09 sys/src/cmd/sam/sam.h
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/sam.h:64,91 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/sam.h:64,89
Rune *s;
};
- struct List /* code depends on a long being able to hold a pointer */
+ struct List
{
+ int type;
int nalloc;
int nused;
union{
- void *listp;
- Block *blkp;
- long *longp;
- uchar* *ucharp;
- String* *stringp;
- File* *filep;
- long listv;
+ void* listp;
+ Block* blkp;
+ void** voidp;
+ Posn* posnp;
+ String**stringp;
+ File** filep;
}g;
};
#define listptr g.listp
- #define blkptr g.blkp
- #define longptr g.longp
- #define ucharpptr g.ucharp
+ #define voidpptr g.voidp
+ #define posnptr g.posnp
#define stringpptr g.stringp
#define filepptr g.filep
- #define listval g.listv
enum
{
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/sam.h:262,269 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/sam.h:260,268
int getname(File*, String*, int);
long getnum(int);
void hiccough(char*);
- void inslist(List*, int, long);
+ void inslist(List*, int, ...);
Address lineaddr(Posn, Address, int);
+ List *listalloc(int);
void listfree(List*);
void load(File*);
File *lookfile(String*);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/sam/sam.h:396,406 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/sam/sam.h:395,399
void outTsllS(Hmesg, int, long, long, String*);
void outTsll(Hmesg, int, long, long);
void outTsl(Hmesg, int, long);
- void outTsv(Hmesg, int, long);
- void outstart(Hmesg);
- void outcopy(int, void*);
- void outshort(int);
- void outlong(long);
- void outvlong(void*);
- void outsend(void);
+ void outTsv(Hmesg, int, vlong);
void outflush(void);
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 50 Nov 19 20:14 sys/src/libc/68020/getcallerpc.s
[jmk] --rw-rw-r-- M 107020 glenda sys 632 Nov 19 20:14 sys/src/libc/68020/mkfile
/n/sourcesdump/2005/1119/plan9/sys/src/libc/68020/mkfile:4,9 -
/n/sourcesdump/2005/1120/plan9/sys/src/libc/68020/mkfile:4,10
LIB=/$objtype/lib/libc.a
SFILES=\
argv0.s\
+ getcallerpc.$O\
getfcr.s\
main9.s\
main9p.s\
[jmk] --rw-rw-r-- M 107020 jmk sys 48 Nov 19 20:12 sys/src/libc/arm/getcallerpc.s
[jmk] --rw-rw-r-- M 107020 glenda sys 402 Nov 19 20:11 sys/src/libc/arm/mkfile
/n/sourcesdump/2005/1119/plan9/sys/src/libc/arm/mkfile:5,10 -
/n/sourcesdump/2005/1120/plan9/sys/src/libc/arm/mkfile:5,11
SFILES=\
argv0.s\
div.s\
+ getcallerpc.$O\
getfcr.s\
main9.s\
main9p.s\
[jmk] --rw-rw-r-- M 107020 jmk sys 49 Nov 19 20:14 sys/src/libc/sparc/getcallerpc.s
[jmk] --rw-rw-r-- M 107020 glenda sys 451 Nov 19 20:15 sys/src/libc/sparc/mkfile
/n/sourcesdump/2005/1119/plan9/sys/src/libc/sparc/mkfile:4,9 -
/n/sourcesdump/2005/1120/plan9/sys/src/libc/sparc/mkfile:4,10
LIB=/$objtype/lib/libc.a
SFILES=\
argv0.s\
+ getcallerpc.$O\
getfcr.s\
main9.s\
main9p.s\
-
[rsc] --rw-rw-r-- M 107020 rsc sys 3122 Nov 19 21:48 sys/src/cmd/vnc/compat.c
[rsc] --rw-rw-r-- M 107020 rsc sys 3122 Nov 19 21:48 sys/src/cmd/vnc/compat.c
[jmk] --rw-rw-r-- M 107020 rsc sys 6786 Nov 19 22:14 sys/src/cmd/vnc/devcons.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/vnc/devcons.c:289,296 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/vnc/devcons.c:289,295
static long
consread(Chan *c, void *buf, long n, vlong off)
{
- char *cbuf, ch;
- int i, eol;
+ char ch;
int send;
if(n <= 0)
64-bit fixes
[jmk] --rw-rw-r-- M 107020 glenda sys 3752 Nov 19 20:04 sys/src/cmd/rc/io.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/io.c:28,34 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/io.c:28,35
poct(f, va_arg(ap, unsigned));
break;
case 'p':
- phex(f, (long)va_arg(ap, char *)); break; /*unportable*/
+ pptr(f, va_arg(ap, void*));
+ break;
case 'Q':
pquo(f, va_arg(ap, char *));
break;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/io.c:94,102 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/io.c:95,109
}
void
- phex(io *f, long p)
+ pptr(io *f, void *v)
{
int n;
+ uintptr p;
+
+ p = (uintptr)v;
+ if(sizeof(uintptr) == sizeof(uvlong) && p>>32)
+ for(n = 60;n>=32;n-=4) pchr(f, "0123456789ABCDEF"[(p>>n)&0xF]);
+
for(n = 28;n>=0;n-=4) pchr(f, "0123456789ABCDEF"[(p>>n)&0xF]);
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/io.c:109,115 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/io.c:116,122
}
void
- pdec(io *f, long n)
+ pdec(io *f, int n)
{
if(n<0){
n=-n;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/io.c:131,137 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/io.c:138,144
}
void
- poct(io *f, ulong n)
+ poct(io *f, unsigned n)
{
if(n>7)
poct(f, n>>3);
[jmk] --rw-rw-r-- M 107020 glenda sys 535 Nov 19 20:04 sys/src/cmd/rc/io.h
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/io.h:13,21 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/io.h:13,21
void closeio(io*);
void flush(io*);
int fullbuf(io*, int);
- void pdec(io*, long);
- void poct(io*, ulong);
- void phex(io*, long);
+ void pdec(io*, int);
+ void poct(io*, unsigned);
+ void pptr(io*, void*);
void pquo(io*, char*);
void pwrd(io*, char*);
void pstr(io*, char*);
[jmk] --rw-rw-r-- M 107020 glenda sys 9330 Nov 19 20:04 sys/src/cmd/rc/plan9.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/plan9.c:350,356 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/plan9.c:350,356
int
Globsize(char *p)
{
- ulong isglob = 0, globlen = NDIR+1;
+ int isglob = 0, globlen = NDIR+1;
for(;*p;p++){
if(*p==GLOB){
p++;
[jmk] --rw-rw-r-- M 107020 rsc sys 8697 Nov 19 20:04 sys/src/cmd/rc/win32.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/rc/win32.c:307,313 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/rc/win32.c:307,313
int
Globsize(char *p)
{
- ulong isglob = 0, globlen = NDIR+1;
+ int isglob = 0, globlen = NDIR+1;
for(;*p;p++){
if(*p==GLOB){
p++;
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 12581 Nov 19 20:09 sys/src/cmd/samterm/mesg.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/mesg.c:21,27 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/mesg.c:21,27
void inmesg(Hmesg, int);
int inshort(int);
long inlong(int);
- long invlong(int);
+ vlong invlong(int);
void hsetdot(int, long, long);
void hmoveto(int, long);
void hsetsnarf(int);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/mesg.c:323,329 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/mesg.c:323,329
void
startfile(Text *t)
{
- outTsv(Tstartfile, t->tag, t); /* for 64-bit pointers */
+ outTsv(Tstartfile, t->tag, (vlong)t); /* for 64-bit pointers */
setlock();
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/mesg.c:331,337 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/mesg.c:331,337
startnewfile(int type, Text *t)
{
t->tag = Untagged;
- outTv(type, t); /* for 64-bit pointers */
+ outTv(type, (vlong)t); /* for 64-bit pointers */
}
int
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/mesg.c:347,361 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/mesg.c:347,361
((long)indata[n+2]<<16)|((long)indata[n+3]<<24);
}
- long
+ vlong
invlong(int n)
{
- long l;
+ vlong v;
- l = (indata[n+7]<<24) | (indata[n+6]<<16) | (indata[n+5]<<8) | indata[n+4];
- l = (l<<16) | (indata[n+3]<<8) | indata[n+2];
- l = (l<<16) | (indata[n+1]<<8) | indata[n];
- return l;
+ v = (indata[n+7]<<24) | (indata[n+6]<<16) | (indata[n+5]<<8) | indata[n+4];
+ v = (v<<16) | (indata[n+3]<<8) | indata[n+2];
+ v = (v<<16) | (indata[n+1]<<8) | indata[n];
+ return v;
}
void
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/mesg.c:410,428 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/mesg.c:410,428
}
void
- outTsv(Tmesg type, int s1, void *l1)
+ outTsv(Tmesg type, int s1, vlong v1)
{
outstart(type);
outshort(s1);
- outvlong(l1);
+ outvlong(v1);
outsend();
}
void
- outTv(Tmesg type, void *l1)
+ outTv(Tmesg type, vlong v1)
{
outstart(type);
- outvlong(l1);
+ outvlong(v1);
outsend();
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/mesg.c:490,504 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/mesg.c:490,504
}
void
- outvlong(void *v)
+ outvlong(vlong v)
{
int i;
- ulong l;
uchar buf[8];
- l = (ulong) v;
- for(i = 0; i < sizeof(buf); i++, l >>= 8)
- buf[i] = l;
+ for(i = 0; i < sizeof(buf); i++){
+ buf[i] = v;
+ v >>= 8;
+ }
outcopy(8, buf);
}
[jmk] --rw-rw-r-- M 107020 glenda sys 3773 Nov 19 20:09 sys/src/cmd/samterm/samterm.h
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/samterm/samterm.h:169,179 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/samterm/samterm.h:169,179
void outTslS(Tmesg, int, long, Rune*);
void outTsll(Tmesg, int, long, long);
void outTsl(Tmesg, int, long);
- void outTsv(Tmesg, int, void*);
- void outTv(Tmesg, void*);
+ void outTsv(Tmesg, int, vlong);
+ void outTv(Tmesg, vlong);
void outstart(Tmesg);
void outcopy(int, uchar*);
void outshort(int);
void outlong(long);
- void outvlong(void*);
+ void outvlong(vlong);
void outsend(void);
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 8706 Nov 19 20:18 sys/src/cmd/vl/pass.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/vl/pass.c:133,139 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/vl/pass.c:133,139
continue;
/* size should be 19 max */
if(strlen(s->name) >= 10) /* has loader address */
- sprint(literal, "$%lux.%lux", (long)s, p->from.offset);
+ sprint(literal, "$%p.%lux", s, p->from.offset);
else
sprint(literal, "$%s.%d.%lux", s->name, s->version, p->from.offset);
} else {
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 76 Nov 19 20:39 sys/src/ape/lib/9/386/getcallerpc.c
[jmk] --rw-rw-r-- M 107020 jmk sys 50 Nov 19 20:39 sys/src/ape/lib/9/68020/getcallerpc.s
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 17151 Nov 19 20:54 sys/src/cmd/9660srv/9660srv.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/9660srv/9660srv.c:159,165 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/9660srv/9660srv.c:159,165
if(getdrec(root, rd) >= 0){
n = rd->reclen-(34+rd->namelen);
s = (uchar*)rd->name + rd->namelen;
- if((ulong)s & 1){
+ if((uintptr)s & 1){
s++;
n--;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/9660srv/9660srv.c:620,626 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/9660srv/9660srv.c:620,626
sysl = dp->reclen-(34+dp->namelen);
s = (uchar*)dp->name + dp->namelen;
- if(((ulong)s) & 1) {
+ if(((uintptr)s) & 1) {
s++;
sysl--;
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/9660srv/9660srv.c:649,655 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/9660srv/9660srv.c:649,655
memset(d->gid, 0, ONAMELEN);
memmove(d->gid, s+1, nl);
s += 1 + *s;
- if(((ulong)s) & 1)
+ if(((uintptr)s) & 1)
s++;
d->mode = l32(s);
if(d->mode & DMDIR)
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/9660srv/9660srv.c:707,713 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/9660srv/9660srv.c:707,713
s += fs->suspoff;
sysl -= fs->suspoff;
for(; sysl >= 4 && have != (Hname|Hmode); sysl -= l, s += l){
- if(s[0] == 0 && ((ulong)s & 1)){
+ if(s[0] == 0 && ((uintptr)s & 1)){
/* MacOS pads individual entries, contrary to spec */
s++;
sysl--;
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 25875 Nov 19 20:55 sys/src/cmd/aux/depend.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/aux/depend.c:5,10 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/aux/depend.c:5,17
#include <thread.h>
#include <bio.h>
+ typedef struct Args Args;
+
+ struct Args {
+ int argc;
+ char **argv;
+ };
+
typedef struct Dfile Dfile;
typedef struct Fid Fid;
typedef struct File File;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/aux/depend.c:258,268 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/aux/depend.c:265,277
int srv;
char service[128];
struct Fsarg fsarg;
+ Args *args;
int argc;
char **argv;
- argc = (int)((void**)a)[0];
- argv = ((void**)a)[1];
+ args = a;
+ argc = args->argc;
+ argv = args->argv;
fmtinstall('F', fcallfmt);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/aux/depend.c:272,278 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/aux/depend.c:281,287
break;
}ARGEND
if(argc != 2){
- fprint(2, "usage: %s [-d] svc-name directory", argv0);
+ fprint(2, "usage: %s [-d] svc-name directory\n", argv0);
exits("usage");
}
snprint(service, sizeof service, "#s/%s", argv[0]);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/aux/depend.c:307,318 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/aux/depend.c:316,327
void
threadmain(int argc, char *argv[])
{
- static void *a[2];
+ static Args args;
- a[0] = (void*)argc;
- a[1] = argv;
+ args.argc = argc;
+ args.argv = argv;
rfork(RFNAMEG);
- proccreate(realmain, a, 16*1024);
+ proccreate(realmain, &args, 16*1024);
}
char*
Add for libraries.
[jmk] --rw-rw-r-- M 107020 glenda sys 454 Nov 19 20:52 sys/src/cmd/cc/compat.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/compat.c:40,42 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/compat.c:40,47
memset(v, 0, size);
return v;
}
+
+ void
+ setmalloctag(void*, ulong)
+ {
+ }
[jmk] --rw-rw-r-- M 107020 glenda sys 26833 Nov 19 20:52 sys/src/cmd/cc/dcl.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/dcl.c:374,382 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/dcl.c:374,381
a = a->left;
}
if(!sametype(t, a->type)) {
- diag(a, "initialization of incompatible pointers: %s",
- s->name);
- print("%T and %T\n", t, a->type);
+ diag(a, "initialization of incompatible pointers: %s\n%T and %T",
+ s->name, t, a->type);
}
if(a->op == OADDR)
a = a->left;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/dcl.c:1535,1540 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/dcl.c:1534,1540
{
Node *p, *r, *q, *m;
long w;
+ Type *zt;
if(debug['i']) {
print("contig v = %ld; s = %s\n", v, s->name);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/dcl.c:1558,1564 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/dcl.c:1558,1564
stkoff = maxround(stkoff, autoffset);
symadjust(s, n, v - s->offset);
}
- if(w <= 4)
+ if(w <= ewidth[TIND])
goto no;
if(n->op == OAS)
diag(Z, "oops in contig");
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/dcl.c:1572,1581 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/dcl.c:1572,1581
if(n->left->type)
if(n->left->type->width == w)
goto no;
- while(w & 3)
+ while(w & ewidth[TIND])
w++; /* is this a bug?? */
/*
- * insert the following code
+ * insert the following code, where long becomes vlong if pointers are fat
*
*(long**)&X = (long*)((char*)X + sizeof(X));
do {
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/dcl.c:1587,1595 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/dcl.c:1587,1597
for(q=n; q->op != ONAME; q=q->left)
;
+ zt = ewidth[TIND] > ewidth[TLONG]? types[TVLONG]: types[TLONG];
+
p = new(ONAME, Z, Z);
*p = *q;
- p->type = typ(TIND, types[TLONG]);
+ p->type = typ(TIND, zt);
p->xoffset = s->offset;
r = new(ONAME, Z, Z);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/cc/dcl.c:1602,1608 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/cc/dcl.c:1604,1610
m = new(OCONST, Z, Z);
m->vconst = 0;
- m->type = types[TLONG];
+ m->type = zt;
q = new(OAS, q, m);
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 10050 Nov 19 20:57 sys/src/cmd/hoc/code.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/hoc/code.c:165,171 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/hoc/code.c:165,171
execerror(sp->name, "call nested too deeply");
fp++;
fp->sp = sp;
- fp->nargs = (int)pc[1];
+ fp->nargs = (int)(uintptr)pc[1];
fp->retpc = pc + 2;
fp->argn = stackp - 1; /* last argument */
if(fp->nargs != sp->u.defn->nargs)
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 9340 Nov 19 20:52 sys/src/cmd/kl/pass.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/kl/pass.c:131,137 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/kl/pass.c:131,137
continue;
/* size should be 19 max */
if(strlen(s->name) >= 10) /* has loader address */
- sprint(literal, "$%lux.%lux", (long)s, p->from.offset);
+ sprint(literal, "$%p.%lux", s, p->from.offset);
else
sprint(literal, "$%s.%d.%lux", s->name, s->version, p->from.offset);
} else {
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 41032 Nov 19 21:00 sys/src/cmd/ms2html.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:25,30 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:25,32
};
char *delim = "$$";
+ char *basename;
+ char *title;
int eqnmode;
int quiet;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:38,45 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:40,48
int ifwastrue[Maxif];
int list, listnum, example;
- int hangingau, hangingdt, hanginghead;
+ int hangingau, hangingdt, hanginghead, hangingcenter;
int indirective, paragraph, sol, titleseen, ignore_nl, weBref;
+ void dohangingcenter(void);
typedef struct Goobie Goobie;
typedef struct Goobieif Goobieif;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:1363,1369 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:1366,1372
static void
usage(void)
{
- sysfatal("Usage: %s\n", argv0);
+ sysfatal("usage: ms2html [-q] [-b basename] [-d '$$'] [-t title]\n");
}
void
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:1371,1376 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:1374,1385
{
quiet = 1;
ARGBEGIN {
+ case 't':
+ title = EARGF(usage());
+ break;
+ case 'b':
+ basename = EARGF(usage());
+ break;
case 'q':
quiet = 0;
break;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:1580,1585 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:1589,1595
g_SH(int, char**)
{
dohanginghead();
+ dohangingcenter();
closel();
closefont();
Bprint(&bout, "<H%d>", HH);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:1594,1599 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:1604,1610
closel();
closefont();
+ dohangingcenter();
if(argc == 1)
level = 0;
else {
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:1624,1655 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:1635,1679
closefont();
if(!titleseen){
- /* get base part of filename */
- p = strrchr(ssp->filename, '/');
- if(p == nil)
- p = ssp->filename;
- else
- p++;
- strncpy(name, p, sizeof(name));
- name[sizeof(name)-1] = 0;
-
- /* dump any extensions */
- np = strchr(name, '.');
- if(np)
- *np = 0;
-
+ if(!title){
+ /* get base part of filename */
+ p = strrchr(ssp->filename, '/');
+ if(p == nil)
+ p = ssp->filename;
+ else
+ p++;
+ strncpy(name, p, sizeof(name));
+ name[sizeof(name)-1] = 0;
+
+ /* dump any extensions */
+ np = strchr(name, '.');
+ if(np)
+ *np = 0;
+ title = p;
+ }
Bprint(&bout, "<title>\n");
- Bprint(&bout, "%s\n", p);
+ Bprint(&bout, "%s\n", title);
Bprint(&bout, "</title>\n");
Bprint(&bout, "<body BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\" LINK=\"#0000FF\" VLINK=\"#330088\" ALINK=\"#FF0044\">\n");
titleseen = 1;
}
+ Bprint(&bout, "<center>");
+ hangingcenter = 1;
Bprint(&bout, "<H%d>", 1);
hanginghead = 1;
}
void
+ dohangingcenter(void)
+ {
+ if(hangingcenter){
+ Bprint(&bout, "</center>");
+ hangingcenter = 1;
+ }
+ }
+
+ void
g_AU(int, char**)
{
closel();
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:1895,1901 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:1919,1926
g_AB(int, char**)
{
closel();
- Bprint(&bout, "<DL><DD><H4>ABSTRACT</H4>\n");
+ dohangingcenter();
+ Bprint(&bout, "<center><H4>ABSTRACT</H4></center><DL><DD>\n");
}
void
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:2071,2082 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:2096,2111
else
return;
- p = strrchr(sstack[0].filename, '/');
- if(p != nil)
- p++;
- else
- p = sstack[0].filename;
- snprint(name, sizeof(name), "%s.%d%d.gif", p, getpid(), gif++);
+ if(basename)
+ p = basename;
+ else{
+ p = strrchr(sstack[0].filename, '/');
+ if(p != nil)
+ p++;
+ else
+ p = sstack[0].filename;
+ }
+ snprint(name, sizeof(name), "%s.%d.gif", p, gif++);
fd = create(name, OWRITE, 0664);
if(fd < 0){
fprint(2, "ms2html: can't create %s: %r\n", name);
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ms2html.c:2106,2113 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ms2html.c:2135,2142
close(fd);
close(pfd[0]);
fprint(pfd[1], ".ll 7i\n");
- fprint(pfd[1], ".EQ\ndelim %s\n.EN\n", delim);
- fprint(pfd[1], ".%s\n", argv[0]);
+ /* fprint(pfd[1], ".EQ\ndelim %s\n.EN\n", delim); */
+ /* fprint(pfd[1], ".%s\n", argv[0]); */
for(;;){
p = Brdline(&ssp->in, '\n');
if(p == nil)
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 48 Nov 19 20:39 sys/src/ape/lib/9/alpha/getcallerpc.s
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 6044 Nov 19 20:48 sys/src/cmd/1c/gc.h
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/1c/gc.h:318,323 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/1c/gc.h:318,324
void fpbranch(void);
void patch(Prog*, long);
void gpseudo(int, Sym*, int, long);
+ void gpseudotree(int, Sym*, Node*);
void indx(Node*);
void bcomplex(Node*);
[jmk] --rw-rw-r-- M 107020 glenda sys 15407 Nov 19 20:49 sys/src/cmd/1c/swt.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/1c/swt.c:882,888 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/1c/swt.c:882,888
p->from.displace = 4;
return;
}
- gpseudo(ADATA, s, D_TREE, (long)a);
+ gpseudotree(ADATA, s, a);
p->from.offset += o;
p->from.displace = w;
}
[jmk] --rw-rw-r-- M 107020 glenda sys 17123 Nov 19 20:49 sys/src/cmd/1c/txt.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/1c/txt.c:638,647 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/1c/txt.c:638,647
} else {
p->from.type = gf;
if(gf == D_CONST) {
- p->from.offset = (long)f;
+ p->from.offset = (long)(uintptr)f;
if(typefd[i]) {
p->from.type = D_FCONST;
- p->from.dval = (long)f;
+ p->from.dval = (long)(uintptr)f;
}
}
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/1c/txt.c:651,657 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/1c/txt.c:651,657
} else {
p->to.type = gt;
if(gt == D_CONST)
- p->to.offset = (long)t;
+ p->to.offset = (long)(uintptr)t;
}
if(o == OBIT) {
p->from.field = f->type->nbits;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/1c/txt.c:803,813 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/1c/txt.c:803,825
if(a == ADATA)
pc--;
p->as = a;
- if(g != D_TREE) {
- p->to.type = g;
- p->to.offset = v;
- } else
- naddr((Node*)v, &p->to, D_NONE);
+ p->to.type = g;
+ p->to.offset = v;
+ p->from.sym = s;
+ p->from.type = D_EXTERN;
+ if(s->class == CSTATIC)
+ p->from.type = D_STATIC;
+ }
+
+ void
+ gpseudotree(int a, Sym *s, Node *n)
+ {
+
+ nextpc();
+ if(a == ADATA)
+ pc--;
+ p->as = a;
+ naddr(n, &p->to, D_NONE);
p->from.sym = s;
p->from.type = D_EXTERN;
if(s->class == CSTATIC)
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 11861 Nov 19 20:33 sys/src/cmd/ql/pass.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/ql/pass.c:131,137 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/ql/pass.c:131,137
continue;
/* size should be 19 max */
if(strlen(s->name) >= 10) /* has loader address */
- sprint(literal, "$%lux.%lux", (long)s, p->from.offset);
+ sprint(literal, "$%p.%lux", s, p->from.offset);
else
sprint(literal, "$%s.%d.%lux", s->name, s->version, p->from.offset);
} else {
64-bit fixes.
[jmk] --rwxrwxr-- M 107020 glenda sys 8676 Nov 19 20:33 sys/src/cmd/7l/pass.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/7l/pass.c:130,138 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/7l/pass.c:130,138
continue;
/* size should be 19 max */
if(strlen(s->name) >= 10) /* has loader address */
- sprint(literal, "$%lux.%lux", (long)s, (long)p->from.offset);
+ sprint(literal, "$%p.%llux", s, p->from.offset);
else
- sprint(literal, "$%s.%d.%lux", s->name, s->version, (long)p->from.offset);
+ sprint(literal, "$%s.%d.%llux", s->name, s->version, p->from.offset);
} else {
if(p->from.name != D_NONE)
continue;
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 presotto sys 12318 Nov 19 20:57 sys/src/cmd/fossil/flfmt9660.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/fossil/flfmt9660.c:515,521 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/fossil/flfmt9660.c:515,521
ind++;
memset(&d, 0, sizeof d);
p = c->name + c->namelen;
- if(((ulong)p) & 1)
+ if(((uintptr)p) & 1)
p++;
sysl = (uchar*)c + c->len - p;
if(sysl <= 0)
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/fossil/flfmt9660.c:523,529 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/fossil/flfmt9660.c:523,529
d.name = getname(&p);
d.uid = getname(&p);
d.gid = getname(&p);
- if((ulong)p & 1)
+ if((uintptr)p & 1)
p++;
d.mode = little(p, 4);
if(d.name[0] == 0)
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 48 Nov 19 20:39 sys/src/ape/lib/9/arm/getcallerpc.s
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 47 Nov 19 20:39 sys/src/ape/lib/9/mips/getcallerpc.s
Add getcallerpc, sort.
[jmk] --rw-rw-r-- M 107020 glenda sys 392 Nov 19 20:39 sys/src/ape/lib/9/mkfile
/n/sourcesdump/2005/1119/plan9/sys/src/ape/lib/9/mkfile:4,18 -
/n/sourcesdump/2005/1120/plan9/sys/src/ape/lib/9/mkfile:4,20
LIB=/$objtype/lib/ape/lib9.a
OFILES=errstr.$O\
bind.$O\
+ getcallerpc.$O\
+ getfcr.$O\
mount.$O\
- unmount.$O\
+ rendezvous.$O\
rfork.$O\
segattach.$O\
segdetach.$O\
segflush.$O\
segfree.$O\
- rendezvous.$O\
- getfcr.$O\
+ setmalloctag.$O\
+ unmount.$O\
</sys/src/cmd/mksyslib
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 51 Nov 19 20:39 sys/src/ape/lib/9/power/getcallerpc.s
Add setmalloctag.
[jmk] --rw-rw-r-- M 107020 jmk sys 44 Nov 19 20:39 sys/src/ape/lib/9/setmalloctag.c
Add getcallerpc.
[jmk] --rw-rw-r-- M 107020 jmk sys 49 Nov 19 20:39 sys/src/ape/lib/9/sparc/getcallerpc.s
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 4248 Nov 19 20:50 sys/src/cmd/2c/enam.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/2c/enam.c:421,424 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/2c/enam.c:421,425
"UNPK",
"WORD",
"SIGNAME",
+ "LAST",
};
[jmk] --rw-rw-r-- M 107020 glenda sys 6241 Nov 19 20:50 sys/src/cmd/2c/gc.h
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/2c/gc.h:335,340 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/2c/gc.h:335,341
void fpbranch(void);
void patch(Prog*, long);
void gpseudo(int, Sym*, int, long);
+ void gpseudotree(int, Sym*, Node*);
void indx(Node*);
void bcomplex(Node*);
[jmk] --rw-rw-r-- M 107020 glenda sys 17160 Nov 19 20:50 sys/src/cmd/2c/swt.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/2c/swt.c:964,970 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/2c/swt.c:964,970
p->from.displace = 4;
return;
}
- gpseudo(ADATA, s, D_TREE, (long)a);
+ gpseudotree(ADATA, s, a);
p->from.offset += o;
p->from.displace = w;
}
[jmk] --rw-rw-r-- M 107020 glenda sys 17847 Nov 19 20:50 sys/src/cmd/2c/txt.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/2c/txt.c:674,683 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/2c/txt.c:674,683
} else {
p->from.type = gf;
if(gf == D_CONST) {
- p->from.offset = (long)f;
+ p->from.offset = (long)(uintptr)f;
if(typefd[i]) {
p->from.type = D_FCONST;
- p->from.dval = (long)f;
+ p->from.dval = (long)(uintptr)f;
}
}
}
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/2c/txt.c:687,693 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/2c/txt.c:687,693
} else {
p->to.type = gt;
if(gt == D_CONST)
- p->to.offset = (long)t;
+ p->to.offset = (long)(uintptr)t;
}
if(o == OBIT) {
p->from.field = f->type->nbits;
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/2c/txt.c:839,849 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/2c/txt.c:839,862
if(a == ADATA)
pc--;
p->as = a;
- if(g != D_TREE) {
- p->to.type = g;
- p->to.offset = v;
- } else
- naddr((Node*)v, &p->to, D_NONE);
+ if(g == D_TREE)
+ abort(); /* obsolete */
+ p->to.type = g;
+ p->to.offset = v;
+ p->from.sym = s;
+ p->from.type = D_EXTERN;
+ if(s->class == CSTATIC)
+ p->from.type = D_STATIC;
+ }
+
+ void
+ gpseudotree(int a, Sym *s, Node *n)
+ {
+ nextpc();
+ if(a == ADATA)
+ pc--;
+ p->as = a;
+ naddr(n, &p->to, D_NONE);
p->from.sym = s;
p->from.type = D_EXTERN;
if(s->class == CSTATIC)
Put date in title.
[jmk] --rw-rw-r-- M 107020 glenda sys 4522 Nov 19 21:11 sys/lib/dist/mkfile
/n/sourcesdump/2005/1119/plan9/sys/lib/dist/mkfile:19,25 -
/n/sourcesdump/2005/1120/plan9/sys/lib/dist/mkfile:19,28
bind pc/cddisk cdstub/bootdisk.img
if(! test -f $d/bootdisk.img)
bind -a cdstub $d
- disk/mk9660 -9cj -v 'Plan 9 4th Ed.' -s $d \
+ title=`{date | sed 's/(...) (...) (..) (..:..):.. (...) (....)/Plan 9 - \2 \3 \6 \4/'}
+ title=$"title
+ echo 'CD:' $title
+ disk/mk9660 -9cj -v $title -s $d \
-b bootdisk.img $target
/sys/lib/dist/web.protect/%.iso.bz2: /n/fsother/dist/%.iso.bz2
/n/sourcesdump/2005/1119/plan9/sys/lib/dist/mkfile:138,140 -
/n/sourcesdump/2005/1120/plan9/sys/lib/dist/mkfile:141,144
mail -s 'non-group-writable files on fs '^$dd 9trouble </sys/lib/dist/writable
}
status=''
+
Add dmamode.
[jmk] --rw-rw-r-- M 107020 glenda sys 369 Nov 19 21:09 sys/lib/dist/pc/plan9.ini.cd
/n/sourcesdump/2005/1119/plan9/sys/lib/dist/pc/plan9.ini.cd:9,14 -
/n/sourcesdump/2005/1120/plan9/sys/lib/dist/pc/plan9.ini.cd:9,15
mouseport=ask
monitor=ask
vgasize=ask
+ dmamode=ask
adisk=/dev/sdD0/cdboot
cdboot=yes
Add dmamode.
[jmk] --rw-rw-r-- M 107020 glenda sys 2448 Nov 19 21:10 sys/lib/dist/pc/sub/termrc
/n/sourcesdump/2005/1119/plan9/sys/lib/dist/pc/sub/termrc:59,64 -
/n/sourcesdump/2005/1120/plan9/sys/lib/dist/pc/sub/termrc:59,77
echo add 127.0.0.1 255.255.255.0
} >/net/ipifc/clone
+ if(~ $#dmamode 0)
+ dmamode=ask
+ if(~ $dmamode ask){
+ echo -n 'use DMA for ide drives[yes]: '
+ dmamode=`{read}
+ if(~ $#dmamode 0)
+ dmamode=yes
+ }
+ if(~ $dmamode yes)
+ for(i in /dev/sd*/ctl)
+ if(test -f $i)
+ {echo dma on; echo rwm on} >$i
+
if(~ $installmode ask){
echo -n 'install mode is (text, graphics)[graphics]: '
installmode=`{read}
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 2402 Nov 19 21:11 sys/man/6/snap
/n/sourcesdump/2005/1119/plan9/sys/man/6/snap:18,24 -
/n/sourcesdump/2005/1120/plan9/sys/man/6/snap:18,24
check that this line begins with the specified prefix.
.PP
Throughout the rest of the snapshot, decimal strings are
- always right-justified, blank-padded to 11 characters,
+ always right-justified, blank-padded to at least 11 characters,
and followed by a single space character.
.PP
The rest of the snapshot is one or more records,
Add -d flag for bargraph.
[jmk] --rw-rw-r-- M 107020 glenda sys 15346 Nov 19 21:03 sys/src/cmd/venti/dat.h
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/venti/dat.h:502,504 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/venti/dat.h:502,506
extern int readonly; /* only allowed to read the disk data */
extern Stats stats;
extern u8int zeroScore[VtScoreSize];
+
+ extern int chattyzero;
[jmk] --rw-rw-r-- M 107020 glenda sys 2213 Nov 19 21:03 sys/src/cmd/venti/fmtarenas.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/venti/fmtarenas.c:29,34 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/venti/fmtarenas.c:29,37
tabSize = 64 * 1024; /* BUG: should be determine from number of arenas */
zero = 1;
ARGBEGIN{
+ case 'd':
+ chattyzero++;
+ break;
case 'a':
asize = unittoull(ARGF());
if(asize == TWID64)
[jmk] --rw-rw-r-- M 107020 glenda sys 1326 Nov 19 21:03 sys/src/cmd/venti/fmtisect.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/venti/fmtisect.c:26,31 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/venti/fmtisect.c:26,34
setSize = 64 * 1024;
zero = 1;
ARGBEGIN{
+ case 'd':
+ chattyzero++;
+ break;
case 'b':
blockSize = unittoull(ARGF());
if(blockSize == ~0)
[jmk] --rw-rw-r-- M 107020 glenda sys 877 Nov 19 21:03 sys/src/cmd/venti/zeropart.c
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/venti/zeropart.c:2,7 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/venti/zeropart.c:2,13
#include "dat.h"
#include "fns.h"
+ int chattyzero;
+
+ enum
+ {
+ HugeIoSize = 2*1024*1024
+ };
void
zeroPart(Part *part, int blockSize)
{
/n/sourcesdump/2005/1119/plan9/sys/src/cmd/venti/zeropart.c:8,28 -
/n/sourcesdump/2005/1120/plan9/sys/src/cmd/venti/zeropart.c:14,42
ZBlock *b;
u64int addr;
int w;
+ int iosize;
+ iosize = HugeIoSize;
+ {char *p = getenv("XXXIOSIZE"); if(p) iosize = atoi(p); assert(iosize>0);}
fprint(2, "clearing the partition\n");
- b = allocZBlock(MaxIoSize, 1);
+ b = allocZBlock(iosize, 1);
w = 0;
- for(addr = PartBlank; addr + MaxIoSize <= part->size; addr += MaxIoSize){
- if(!writePart(part, addr, b->data, MaxIoSize))
+ for(addr = PartBlank; addr + iosize <= part->size; addr += iosize){
+ if(!writePart(part, addr, b->data, iosize))
fatal("can't initialize %s, writing block %d failed: %r", part->name, w);
w++;
+ if(chattyzero)
+ print("%lld %lld\n", addr, part->size);
}
- for(; addr + blockSize <= part->size; addr += blockSize)
+ for(; addr + blockSize <= part->size; addr += blockSize){
if(!writePart(part, addr, b->data, blockSize))
fatal("can't initialize %s: %r", part->name);
+ if(chattyzero)
+ print("%lld %lld\n", addr, part->size);
+ }
freeZBlock(b);
}
64-bit fixes.
[jmk] --rw-rw-r-- M 107020 glenda sys 1160 Nov 19 21:15 sys/src/libip/ptclbsum.c
/n/sourcesdump/2005/1119/plan9/sys/src/libip/ptclbsum.c:17,23 -
/n/sourcesdump/2005/1120/plan9/sys/src/libip/ptclbsum.c:17,23
mdsum = 0;
x = 0;
- if((ulong)addr & 1) {
+ if((uintptr)addr & 1) {
if(len) {
hisum += addr[0];
len--;
|