ref: bae3ac29fc39bc36329abf1823004c0d79b2f6f0
dir: /sys/src/ape/lib/ap/386/main9p.s/
#define NPRIVATES 16 GLOBL _tos(SB), $4 GLOBL _errnoloc(SB), $4 GLOBL _privates(SB), $4 GLOBL _nprivates(SB), $4 TEXT _mainp(SB), 1, $(16+NPRIVATES*4) /* _tos = arg */ MOVL AX, _tos(SB) LEAL 12(SP), AX MOVL AX, _errnoloc(SB) LEAL 16(SP), AX MOVL AX, _privates(SB) MOVL $NPRIVATES, _nprivates(SB) /* _profmain(); */ CALL _profmain(SB) /* _tos->prof.pp = _tos->prof.next; */ MOVL _tos+0(SB),DX MOVL 4(DX),CX MOVL CX,(DX) CALL _envsetup(SB) /* main(argc, argv, environ); */ MOVL inargc-4(FP), AX MOVL AX, 0(SP) LEAL inargv+0(FP), AX MOVL AX, 4(SP) MOVL environ(SB), AX MOVL AX, 8(SP) CALL main(SB) loop: MOVL AX, 0(SP) CALL exit(SB) MOVL $_profin(SB), AX /* force loading of profile */ MOVL $0, AX JMP loop TEXT _saveret(SB), 1, $0 TEXT _savearg(SB), 1, $0 RET TEXT _callpc(SB), 1, $0 MOVL argp+0(FP), AX MOVL 4(AX), AX RET