amd64 acid files aren't compatable with any 32-bit acid files. and in general, different architectures may have different alignment requirements, &c. so it seems best to have a way to distinguish acid files generated for libraries. since the initial report was for the thread library, go fix it up so the proper .acid$O files are included. Reference: /n/patches.lsub.org/patch/alltheworldsavax Date: Fri Sep 21 22:05:16 CES 2012 Signed-off-by: quanstro@quanstro.net --- /sys/src/cmd/mksyslib Thu Apr 12 12:25:55 2012 +++ /sys/src/cmd/mksyslib Fri Sep 21 20:57:59 2012 @@ -39,7 +39,7 @@ nuke:V: rm -f *.[$OS] [$OS].out $CLEANFILES $LIB -%.acid: %.$O $HFILES +%.acid$O: %.$O $HFILES $CC $CFLAGS -a $stem.c >$target update:V: --- /sys/src/libthread/mkfile Thu Apr 12 12:26:26 2012 +++ /sys/src/libthread/mkfile Fri Sep 21 20:59:04 2012 @@ -72,7 +72,7 @@ $CFILES\ $SFILES\ -all:V: $LIB sched.acid channel.acid +all:V: $LIB sched.acid$O channel.acid$O acid || rm acid +acid.$O: $HFILES packet.c + $CC $INC -a packet.c > acid$O || rm acid$O test: $O.vttest $O.vttest --- /sys/lib/acid/thread Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/thread Fri Sep 21 20:58:03 2012 @@ -1,4 +1,4 @@ -include("/sys/src/libthread/sched.acid"); +include("/sys/src/libthread/sched.acid" + objchar); defn labpc(l) { --- /sys/lib/acid/386 Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/386 Fri Sep 21 20:58:04 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/386/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -160,4 +160,6 @@ }; sizeofUreg = 76; +objchar = '8'; +objtype = "386"; print("/sys/lib/acid/386"); --- /sys/lib/acid/68020 Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/68020 Fri Sep 21 20:58:06 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/68020/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -134,4 +134,6 @@ print(" microstate ", addr.microstate, "\n"); }; +objchar = '2'; +objtype = "68020"; print("/sys/lib/acid/68020"); --- /sys/lib/acid/alpha Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/alpha Fri Sep 21 20:58:07 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/alpha/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -201,5 +201,7 @@ return addr.r26\X; } +objchar = '7'; +objtype = "alpha"; print("/sys/lib/acid/alpha"); --- /sys/lib/acid/amd64 Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/amd64 Fri Sep 21 20:58:08 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/amd64/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -115,6 +115,11 @@ } } +defn linkreg(addr) +{ + return 0; +} + defn lstk() // trace with locals { _stk(*PC, *SP, 0, 1); @@ -187,4 +192,6 @@ }; sizeofUreg = 184; +objchar = "6"; +objtype = "amd64"; print("/sys/lib/acid/amd64"); --- /sys/lib/acid/arm Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/arm Fri Sep 21 20:58:10 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/arm/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -114,4 +114,6 @@ print(" pc ", addr.pc, "\n"); }; +objchar = '5'; +objtype = "arm"; print("/sys/lib/acid/arm"); --- /sys/lib/acid/mips Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/mips Fri Sep 21 20:58:11 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/mips/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -214,4 +214,6 @@ return addr.r31\X; } +objchar = 'v'; +objtype = "mips"; print("/sys/lib/acid/mips"); --- /sys/lib/acid/power Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/power Fri Sep 21 20:58:13 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/power/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -117,4 +117,6 @@ return *LR; } +objchar = 'q'; +objtype = "power"; print("/sys/lib/acid/power"); --- /sys/lib/acid/sparc Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/sparc Fri Sep 21 20:58:14 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/sparc/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -215,4 +215,6 @@ return addr.r15\X; } +objchar = 'k'; +objtype = "sparc"; print("/sys/lib/acid/sparc"); --- /sys/lib/acid/sparc64 Thu Apr 12 12:24:41 2012 +++ /sys/lib/acid/sparc64 Fri Sep 21 20:58:16 2012 @@ -9,7 +9,7 @@ "./", "/sys/src/libc/port/", "/sys/src/libc/9sys/", - "/sys/src/libc/sparc64/" + "/sys/src/libc/" + objtype + "/" }; srcfiles = {}; // list of loaded files @@ -219,4 +219,6 @@ }; sizeofUreg = 152; +objchar = 'u'; +objtype = "sparc"; print("/sys/lib/acid/sparc64"); --- /sys/src/cmd/acid/main.c Wed Jun 6 17:23:13 2012 +++ /sys/src/cmd/acid/main.c Fri Sep 21 20:58:17 2012 @@ -43,15 +43,13 @@ mtype = 0; ARGBEGIN{ case 'm': - mtype = ARGF(); + mtype = EARGF(usage()); break; case 'w': wtflag = 1; break; case 'l': - s = ARGF(); - if(s == 0) - usage(); + s = EARGF(usage()); lm[nlm++] = s; break; case 'k':