1#define NPRIVATES 16 2 3GLOBL _tos(SB), $8 4GLOBL _privates(SB), $8 5GLOBL _nprivates(SB), $8 6 7TEXT _mainp(SB), 1, $(3*4+NPRIVATES*4) 8 MOVW $setR30(SB), R30 9 10 /* _tos = arg */ 11 MOVW R1, _tos(SB) 12 13 MOVW $8(SP), R1 14 MOVW R1, _privates(SB) 15 MOVW $NPRIVATES, R1 16 MOVW R1, _nprivates(SB) 17 18 /* _profmain(); */ 19 JAL _profmain(SB) 20 21 /* _tos->prof.pp = _tos->prof.next; */ 22 MOVW _tos+0(SB),R1 23 MOVW 4(R1),R2 24 MOVW R2,(R1) 25 26 JAL _envsetup(SB) 27 28 /* main(argc, argv, environ); */ 29 MOVW inargc-4(FP), R1 30 MOVW $inargv+0(FP), R2 31 MOVW environ(SB), R3 32 MOVW R1, 4(R29) 33 MOVW R2, 8(R29) 34 MOVW R3, 12(R29) 35 JAL main(SB) 36loop: 37 MOVW R1, 4(R29) 38 JAL exit(SB) 39 MOVW $_profin(SB), R0 /* force loading of profile */ 40 JMP loop 41 42TEXT _savearg(SB), 1, $0 43 RET 44 45TEXT _callpc(SB), 1, $0 46 MOVW argp-4(FP), R1 47 RET 48