1#define NPRIVATES 16 2 3TEXT _main(SB), 1, $(4*XLEN + NPRIVATES*XLEN) 4 5 MOV $setSB(SB), R3 6 MOV R8, _tos(SB) 7 8 MOV $p-(NPRIVATES*XLEN)(SP), R9 9 MOV R9, _privates(SB) 10 MOV $NPRIVATES, R9 11 MOVW R9, _nprivates(SB) 12 13 MOV inargc-XLEN(FP), R8 14 MOV $inargv+0(FP), R10 15 /*AND $-8,R2*/ 16 MOV R8, XLEN(R2) 17 MOV R10, (2*XLEN)(R2) 18 JAL R1, main(SB) 19loop: 20 MOV $_exitstr<>(SB), R8 21 JAL R1, exits(SB) 22 JMP loop 23 24DATA _exitstr<>+0(SB)/4, $"main" 25GLOBL _exitstr<>+0(SB), $5 26