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