commit 39dbe6e72b5e0ffc7989da7f1e59f41498d2b492 from: rsc date: Fri Jan 07 18:45:17 2005 UTC small hidings commit - 60efa1d2b90cbcfedcd93a988834fc595a5368bb commit + 39dbe6e72b5e0ffc7989da7f1e59f41498d2b492 blob - def8925e1547fcd098a64a4e6dafe0676c6d5927 blob + 9127434fd9f8a6784339095e008085fbde469ac5 --- src/libmach/Linux.c +++ src/libmach/Linux.c @@ -42,7 +42,7 @@ static int ptraceregrw(Regs*, char*, ulong*, int); static int attachedpids[1000]; static int nattached; -int +static int ptraceattach(int pid) { int i; @@ -90,8 +90,6 @@ unmapproc(Map *map) (map->nseg-i)*sizeof(map->seg[0])); } } - - int mapproc(int pid, Map *map, Regs **rp) blob - a5cf0314116b2122a7f5b1a30e1c65f27824f14a blob + b5d3eacf5df903294e3686ac5b9d8f673de7ef0f --- src/libmach/sym.c +++ src/libmach/sym.c @@ -439,7 +439,7 @@ bynamecmp(const void *va, const void *vb) } int -syminit(Fhdr *hdr) +symopen(Fhdr *hdr) { int i; Symbol *r, *w, *es; @@ -474,8 +474,21 @@ syminit(Fhdr *hdr) return 0; } +void +symclose(Fhdr *hdr) +{ + _delhdr(hdr); + if(hdr->symclose) + hdr->symclose(hdr); + free(hdr->byname); + hdr->byname = nil; + free(hdr->sym); + hdr->sym = nil; + hdr->nsym = 0; +} + Symbol* -addsym(Fhdr *fp, Symbol *sym) +_addsym(Fhdr *fp, Symbol *sym) { Symbol *s; blob - 3ac1257759627739c2cfeedab87f45bd82d4fb02 blob + c56667b16c12cbbd72015f843d2794e500391527 --- src/libmach/symdwarf.c +++ src/libmach/symdwarf.c @@ -212,7 +212,7 @@ dwarfsyminit(Fhdr *fp) case TagVariable: if(dwarftosym(fp, d, &s, &sym, 0) < 0) continue; - addsym(fp, &sym); + _addsym(fp, &sym); } } } blob - 0b9f410e1c85e7817f709ed5c0731b115a93b8f0 blob + 40dec1132e6ce9a5c14c2cc5faedc8b8a2a9a1ca --- src/libmach/symelf.c +++ src/libmach/symelf.c @@ -46,7 +46,7 @@ elfsyminit(Fhdr *fp) sym.type = 'U'; if(esym.bind==ElfSymBindLocal) sym.type += 'a' - 'A'; - addsym(fp, &sym); + _addsym(fp, &sym); } for(i=0; inprog; i++){ @@ -60,7 +60,7 @@ elfsyminit(Fhdr *fp) sym.hiloc = locaddr(p->vaddr+p->filesz); sym.type = 'D'; sym.class = CDATA; - addsym(fp, &sym); + _addsym(fp, &sym); } return 0; } blob - 07bbd9fca6d23313fb5a3e8ff4816d5b2e0a36be blob + 472dd87218ef2efe196f65dc5d3f3a9d9c7ad53a --- src/libmach/symstabs.c +++ src/libmach/symstabs.c @@ -196,7 +196,7 @@ stabssyminit(Fhdr *fp) fun = nil; if(stabcvtsym(&sym, &s, dir, file, i) < 0) continue; - if((fun = addsym(fp, &s)) == nil) + if((fun = _addsym(fp, &s)) == nil) goto err; locals = 0; params = 0; @@ -249,7 +249,7 @@ stabssyminit(Fhdr *fp) /* create new symbol, add it */ if(stabcvtsym(&sym, &s, dir, file, i) < 0) continue; - if(addsym(fp, &s) == nil) + if(_addsym(fp, &s) == nil) goto err; break; } blob - d11cb7dda39229692e949dace288c200ec1a4dfb blob + 68d2bdfcade814519979a5f9df87ce2fc9c787c0 --- src/libmach/t.c +++ src/libmach/t.c @@ -162,10 +162,10 @@ main(int argc, char **argv) attachargs(argc, argv, OREAD); attachdynamic(); - - if(!corpid && !corhdr) - sysfatal("could not attach to process"); +// if(!corpid && !corhdr) +// sysfatal("could not attach to process"); +// p.pid = corpid; if((e = td_ta_new(&p, &ta)) != TD_OK) sysfatal("td_ta_new: %s", terr(e));