main9p.s 621 B

123456789101112131415161718192021222324252627282930313233343536
  1. #define NPRIVATES 16
  2. TEXT _mainp(SB), 1, $(16 + NPRIVATES*4)
  3. MOVW $setR30(SB), R30
  4. MOVW R1, _clock(SB)
  5. MOVW $p-64(SP), R1
  6. MOVW R1, _privates(SB)
  7. MOVW $NPRIVATES, R1
  8. MOVW R1, _nprivates(SB)
  9. JAL _profmain(SB)
  10. MOVW __prof+4(SB), R1
  11. MOVW R1, __prof+0(SB)
  12. MOVW inargc-4(FP), R1
  13. MOVW $inargv+0(FP), R2
  14. MOVW R1, 4(R29)
  15. MOVW R2, 8(R29)
  16. JAL main(SB)
  17. loop:
  18. MOVW $exits<>(SB), R1
  19. MOVW R1, 4(R29)
  20. JAL exits(SB)
  21. MOVW $_profin(SB), R0 /* force loading of profile */
  22. JMP loop
  23. TEXT _savearg(SB), 1, $0
  24. RET
  25. TEXT _callpc(SB), 1, $0
  26. MOVW argp-4(FP), R1
  27. RET
  28. DATA exits<>+0(SB)/4, $"main"
  29. GLOBL exits<>+0(SB), $5