diff options
Diffstat (limited to 'src/runtime')
| -rw-r--r-- | src/runtime/386/asm.s | 4 | ||||
| -rw-r--r-- | src/runtime/386/traceback.c | 2 | ||||
| -rw-r--r-- | src/runtime/amd64/asm.s | 4 | ||||
| -rw-r--r-- | src/runtime/amd64/traceback.c | 2 | ||||
| -rw-r--r-- | src/runtime/chan.c | 10 | ||||
| -rw-r--r-- | src/runtime/darwin/386/signal.c | 6 | ||||
| -rw-r--r-- | src/runtime/darwin/386/sys.s | 2 | ||||
| -rw-r--r-- | src/runtime/darwin/amd64/signal.c | 6 | ||||
| -rw-r--r-- | src/runtime/darwin/amd64/sys.s | 2 | ||||
| -rw-r--r-- | src/runtime/linux/386/signal.c | 6 | ||||
| -rwxr-xr-x | src/runtime/linux/386/sys.s | 2 | ||||
| -rw-r--r-- | src/runtime/linux/amd64/signal.c | 6 | ||||
| -rw-r--r-- | src/runtime/linux/amd64/sys.s | 2 | ||||
| -rw-r--r-- | src/runtime/proc.c | 30 | ||||
| -rw-r--r-- | src/runtime/runtime.c | 28 | ||||
| -rw-r--r-- | src/runtime/runtime.h | 12 | ||||
| -rw-r--r-- | src/runtime/sema.c | 2 | ||||
| -rw-r--r-- | src/runtime/string.c | 2 |
18 files changed, 70 insertions, 58 deletions
diff --git a/src/runtime/386/asm.s b/src/runtime/386/asm.s index 3ef8d8e47..9dd9c11a9 100644 --- a/src/runtime/386/asm.s +++ b/src/runtime/386/asm.s @@ -84,12 +84,12 @@ TEXT mainstart(SB),7,$0 CALL initdone(SB) CALL main·main(SB) PUSHL $0 - CALL sys·Exit(SB) + CALL exit(SB) POPL AX INT $3 RET -TEXT sys·Breakpoint(SB),7,$0 +TEXT breakpoint(SB),7,$0 BYTE $0xcc RET diff --git a/src/runtime/386/traceback.c b/src/runtime/386/traceback.c index b60512ab1..23e92d892 100644 --- a/src/runtime/386/traceback.c +++ b/src/runtime/386/traceback.c @@ -82,7 +82,7 @@ traceback(byte *pc0, byte *sp, G *g) // func caller(n int) (pc uint64, file string, line int, ok bool) void -sys·Caller(int32 n, uint64 retpc, string retfile, int32 retline, bool retbool) +runtime·Caller(int32 n, uint64 retpc, string retfile, int32 retline, bool retbool) { uint64 pc; byte *sp; diff --git a/src/runtime/amd64/asm.s b/src/runtime/amd64/asm.s index cad656e70..b69259e31 100644 --- a/src/runtime/amd64/asm.s +++ b/src/runtime/amd64/asm.s @@ -55,12 +55,12 @@ TEXT mainstart(SB),7,$0 CALL initdone(SB) CALL main·main(SB) PUSHQ $0 - CALL sys·Exit(SB) + CALL exit(SB) POPQ AX CALL notok(SB) RET -TEXT sys·Breakpoint(SB),7,$0 +TEXT breakpoint(SB),7,$0 BYTE $0xcc RET diff --git a/src/runtime/amd64/traceback.c b/src/runtime/amd64/traceback.c index 2e237a21f..16d7bed72 100644 --- a/src/runtime/amd64/traceback.c +++ b/src/runtime/amd64/traceback.c @@ -79,7 +79,7 @@ traceback(byte *pc0, byte *sp, G *g) // func caller(n int) (pc uint64, file string, line int, ok bool) void -sys·Caller(int32 n, uint64 retpc, String retfile, int32 retline, bool retbool) +runtime·Caller(int32 n, uint64 retpc, String retfile, int32 retline, bool retbool) { uint64 pc; byte *sp; diff --git a/src/runtime/chan.c b/src/runtime/chan.c index 59ac78d79..be65bcbc1 100644 --- a/src/runtime/chan.c +++ b/src/runtime/chan.c @@ -211,7 +211,7 @@ loop: g->status = Gwaiting; enqueue(&c->sendq, sg); unlock(&chanlock); - sys·Gosched(); + gosched(); lock(&chanlock); sg = g->param; @@ -237,7 +237,7 @@ asynch: g->status = Gwaiting; enqueue(&c->sendq, sg); unlock(&chanlock); - sys·Gosched(); + gosched(); lock(&chanlock); goto asynch; @@ -311,7 +311,7 @@ loop: g->status = Gwaiting; enqueue(&c->recvq, sg); unlock(&chanlock); - sys·Gosched(); + gosched(); lock(&chanlock); sg = g->param; @@ -339,7 +339,7 @@ asynch: g->status = Gwaiting; enqueue(&c->recvq, sg); unlock(&chanlock); - sys·Gosched(); + gosched(); lock(&chanlock); goto asynch; @@ -748,7 +748,7 @@ loop: g->param = nil; g->status = Gwaiting; unlock(&chanlock); - sys·Gosched(); + gosched(); lock(&chanlock); sg = g->param; diff --git a/src/runtime/darwin/386/signal.c b/src/runtime/darwin/386/signal.c index a6c782294..3a63c4b38 100644 --- a/src/runtime/darwin/386/signal.c +++ b/src/runtime/darwin/386/signal.c @@ -33,7 +33,7 @@ sighandler(int32 sig, Siginfo *info, void *context) Regs *r; if(panicking) // traceback already printed - sys_Exit(2); + exit(2); panicking = 1; if(sig < 0 || sig >= NSIG){ @@ -56,8 +56,8 @@ sighandler(int32 sig, Siginfo *info, void *context) dumpregs(r); } - sys·Breakpoint(); - sys_Exit(2); + breakpoint(); + exit(2); } void diff --git a/src/runtime/darwin/386/sys.s b/src/runtime/darwin/386/sys.s index 93dd4e300..1ad6d2ace 100644 --- a/src/runtime/darwin/386/sys.s +++ b/src/runtime/darwin/386/sys.s @@ -11,7 +11,7 @@ TEXT notok(SB),7,$0 RET // Exit the entire program (like C exit) -TEXT sys·Exit(SB),7,$0 +TEXT exit(SB),7,$0 MOVL $1, AX INT $0x80 CALL notok(SB) diff --git a/src/runtime/darwin/amd64/signal.c b/src/runtime/darwin/amd64/signal.c index 88cddeb00..45e5e8d47 100644 --- a/src/runtime/darwin/amd64/signal.c +++ b/src/runtime/darwin/amd64/signal.c @@ -41,7 +41,7 @@ sighandler(int32 sig, Siginfo *info, void *context) Regs *r; if(panicking) // traceback already printed - sys_Exit(2); + exit(2); panicking = 1; if(sig < 0 || sig >= NSIG){ @@ -64,8 +64,8 @@ sighandler(int32 sig, Siginfo *info, void *context) dumpregs(r); } - sys·Breakpoint(); - sys_Exit(2); + breakpoint(); + exit(2); } void diff --git a/src/runtime/darwin/amd64/sys.s b/src/runtime/darwin/amd64/sys.s index e16983346..4238cd185 100644 --- a/src/runtime/darwin/amd64/sys.s +++ b/src/runtime/darwin/amd64/sys.s @@ -9,7 +9,7 @@ // // Exit the entire program (like C exit) -TEXT sys·Exit(SB),7,$-8 +TEXT exit(SB),7,$-8 MOVL 8(SP), DI // arg 1 exit status MOVL $(0x2000000+1), AX // syscall entry SYSCALL diff --git a/src/runtime/linux/386/signal.c b/src/runtime/linux/386/signal.c index 9cbd9fa85..7dfca6bb4 100644 --- a/src/runtime/linux/386/signal.c +++ b/src/runtime/linux/386/signal.c @@ -40,7 +40,7 @@ sighandler(int32 sig, Siginfo* info, void* context) Sigcontext *sc; if(panicking) // traceback already printed - sys_Exit(2); + exit(2); panicking = 1; uc = context; @@ -61,8 +61,8 @@ sighandler(int32 sig, Siginfo* info, void* context) dumpregs(sc); } - sys·Breakpoint(); - sys_Exit(2); + breakpoint(); + exit(2); } void diff --git a/src/runtime/linux/386/sys.s b/src/runtime/linux/386/sys.s index 379d153e4..419973a5c 100755 --- a/src/runtime/linux/386/sys.s +++ b/src/runtime/linux/386/sys.s @@ -20,7 +20,7 @@ TEXT syscall(SB),7,$0 INT $3 // not reached RET -TEXT sys·Exit(SB),7,$0 +TEXT exit(SB),7,$0 MOVL $252, AX // syscall number MOVL 4(SP), BX INT $0x80 diff --git a/src/runtime/linux/amd64/signal.c b/src/runtime/linux/amd64/signal.c index 5f3574f8e..55215176d 100644 --- a/src/runtime/linux/amd64/signal.c +++ b/src/runtime/linux/amd64/signal.c @@ -49,7 +49,7 @@ sighandler(int32 sig, Siginfo* info, void* context) Sigcontext *sc; if(panicking) // traceback already printed - sys_Exit(2); + exit(2); panicking = 1; uc = context; @@ -71,8 +71,8 @@ sighandler(int32 sig, Siginfo* info, void* context) dumpregs(sc); } - sys·Breakpoint(); - sys_Exit(2); + breakpoint(); + exit(2); } void diff --git a/src/runtime/linux/amd64/sys.s b/src/runtime/linux/amd64/sys.s index 5c4d98f97..f90c704fa 100644 --- a/src/runtime/linux/amd64/sys.s +++ b/src/runtime/linux/amd64/sys.s @@ -6,7 +6,7 @@ // System calls and other sys.stuff for AMD64, Linux // -TEXT sys·Exit(SB),7,$0-8 +TEXT exit(SB),7,$0-8 MOVL 8(SP), DI MOVL $231, AX // exitgroup - force all os threads to exi SYSCALL diff --git a/src/runtime/proc.c b/src/runtime/proc.c index 3875916e7..d52adf94c 100644 --- a/src/runtime/proc.c +++ b/src/runtime/proc.c @@ -129,7 +129,7 @@ initdone(void) } void -sys·Goexit(void) +goexit(void) { if(debug > 1){ lock(&debuglock); @@ -137,7 +137,7 @@ sys·Goexit(void) unlock(&debuglock); } g->status = Gmoribund; - sys·Gosched(); + gosched(); } void @@ -431,7 +431,7 @@ scheduler(void) case Gmoribund: gp->status = Gdead; if(--sched.gcount == 0) - sys_Exit(0); + exit(0); break; } if(gp->readyonstop){ @@ -461,7 +461,7 @@ scheduler(void) // before running g again. If g->status is Gmoribund, // kills off g. void -sys·Gosched(void) +gosched(void) { if(g == m->g0) throw("gosched of g0"); @@ -529,7 +529,7 @@ sys·exitsyscall(void) // The scheduler will ready g and put this m to sleep. // When the scheduler takes g awa from m, // it will undo the sched.mcpu++ above. - sys·Gosched(); + gosched(); } /* @@ -784,7 +784,7 @@ sys·newproc(int32 siz, byte* fn, byte* arg0) mcpy(sp, (byte*)&arg0, siz); sp -= sizeof(uintptr); - *(byte**)sp = (byte*)sys·Goexit; + *(byte**)sp = (byte*)goexit; sp -= sizeof(uintptr); // retpc used by gogo newg->sched.SP = sp; @@ -839,3 +839,21 @@ sys·deferreturn(int32 arg0) jmpdefer(sp); } +void +runtime·Breakpoint(void) +{ + breakpoint(); +} + +void +runtime·Goexit(void) +{ + goexit(); +} + +void +runtime·Gosched(void) +{ + gosched(); +} + diff --git a/src/runtime/runtime.c b/src/runtime/runtime.c index e05563bd6..afb9cce17 100644 --- a/src/runtime/runtime.c +++ b/src/runtime/runtime.c @@ -25,7 +25,7 @@ sys·panicl(int32 lno) if(panicking) { printf("double panic\n"); - sys_Exit(3); + exit(3); } panicking++; @@ -35,8 +35,8 @@ sys·panicl(int32 lno) traceback(sys·getcallerpc(&lno), sp, g); tracebackothers(g); } - sys·Breakpoint(); // so we can grab it in a debugger - sys_Exit(2); + breakpoint(); // so we can grab it in a debugger + exit(2); } void @@ -57,7 +57,7 @@ throw(int8 *s) printf("throw: %s\n", s); sys·panicl(-1); *(int32*)0 = 0; // not reached - sys_Exit(1); // even more not reached + exit(1); // even more not reached } void @@ -136,8 +136,8 @@ rnd(uint32 n, uint32 m) static int32 argc; static uint8** argv; -Array sys·Args; -Array sys·Envs; +Array os·Args; +Array os·Envs; void args(int32 c, uint8 **v) @@ -161,15 +161,15 @@ goargs(void) for(i=0; i<argc; i++) gargv[i] = gostring(argv[i]); - sys·Args.array = (byte*)gargv; - sys·Args.nel = argc; - sys·Args.cap = argc; + os·Args.array = (byte*)gargv; + os·Args.nel = argc; + os·Args.cap = argc; for(i=0; i<envc; i++) genvv[i] = gostring(argv[argc+1+i]); - sys·Envs.array = (byte*)genvv; - sys·Envs.nel = envc; - sys·Envs.cap = envc; + os·Envs.array = (byte*)genvv; + os·Envs.nel = envc; + os·Envs.cap = envc; } byte* @@ -182,8 +182,8 @@ getenv(int8 *s) bs = (byte*)s; len = findnull(bs); - envv = (String*)sys·Envs.array; - envc = sys·Envs.nel; + envv = (String*)os·Envs.array; + envc = os·Envs.nel; for(i=0; i<envc; i++){ if(envv[i].len <= len) continue; diff --git a/src/runtime/runtime.h b/src/runtime/runtime.h index 6b398c2bf..68d3748f3 100644 --- a/src/runtime/runtime.h +++ b/src/runtime/runtime.h @@ -329,6 +329,10 @@ uint32 noequal(uint32, void*, void*); void* malloc(uintptr size); void* mallocgc(uintptr size); void free(void *v); +void exit(int32); +void breakpoint(void); +void gosched(void); +void goexit(void); #pragma varargck argpos printf 1 @@ -378,15 +382,11 @@ void notewakeup(Note*); * UTF-8 characters in identifiers. */ #ifndef __GNUC__ -#define sys_Exit sys·Exit -#define sys_Gosched sys·Gosched #define sys_memclr sys·memclr #define sys_write sys·write -#define sys_Breakpoint sys·Breakpoint #define sys_catstring sys·catstring #define sys_cmpstring sys·cmpstring #define sys_getcallerpc sys·getcallerpc -#define sys_Goexit sys·Goexit #define sys_indexstring sys·indexstring #define sys_intstring sys·intstring #define sys_mal sys·mal @@ -408,11 +408,7 @@ void notewakeup(Note*); /* * low level go-called */ -void sys_Goexit(void); -void sys_Gosched(void); -void sys_Exit(int32); void sys_write(int32, void*, int32); -void sys_Breakpoint(void); uint8* sys_mmap(byte*, uint32, int32, int32, int32, uint32); void sys_memclr(byte*, uint32); void sys_setcallerpc(void*, void*); diff --git a/src/runtime/sema.c b/src/runtime/sema.c index cad08d167..5e5b07aa6 100644 --- a/src/runtime/sema.c +++ b/src/runtime/sema.c @@ -119,7 +119,7 @@ semsleep2(Sema *s) { USED(s); g->status = Gwaiting; - sys·Gosched(); + gosched(); } static int32 diff --git a/src/runtime/string.c b/src/runtime/string.c index 667828d66..5e4922a99 100644 --- a/src/runtime/string.c +++ b/src/runtime/string.c @@ -215,8 +215,6 @@ out: void sys·stringiter2(String s, int32 k, int32 retk, int32 retv) { - int32 l; - if(k >= s.len) { // retk=0 is end of iteration retk = 0; |
