head_ac.e 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #
  2. #include "em_abs.h"
  3. /*
  4. * (c) copyright 1983 by the Vrije Universiteit, Amsterdam, The Netherlands.
  5. *
  6. * This product is part of the Amsterdam Compiler Kit.
  7. *
  8. * Permission to use, sell, duplicate or disclose this software must be
  9. * obtained in writing. Requests for such permissions may be sent to
  10. *
  11. * Dr. Andrew S. Tanenbaum
  12. * Wiskundig Seminarium
  13. * Vrije Universiteit
  14. * Postbox 7161
  15. * 1007 MC Amsterdam
  16. * The Netherlands
  17. *
  18. */
  19. mes 2,_EM_WSIZE,_EM_PSIZE
  20. exa environ
  21. exa _end
  22. exp $_m_a_i_n
  23. pro $_m_a_i_n,0
  24. loc 1336 ; EIOVFL | EIUND | ECONV | EFOVFL | EFUNFL
  25. sim ; ignored
  26. lal _EM_WSIZE+_EM_PSIZE
  27. loi _EM_PSIZE
  28. lae environ
  29. sti _EM_PSIZE
  30. #if __unix && ! (__em22 || __em24 || __em44)
  31. lpi $_ctch_
  32. sig
  33. asp _EM_PSIZE
  34. #endif
  35. lal _EM_WSIZE+_EM_PSIZE
  36. loi _EM_PSIZE
  37. lal _EM_WSIZE
  38. loi _EM_PSIZE
  39. lal 0
  40. loi _EM_WSIZE
  41. cal $main
  42. asp _EM_WSIZE+_EM_PSIZE+_EM_PSIZE
  43. lfr _EM_WSIZE
  44. cal $exit
  45. end
  46. #if __unix && ! (__em22 || __em24 || __em44)
  47. exp $_ctch_
  48. pro $_ctch_,0
  49. lol 0
  50. loc EIDIVZ
  51. beq *1
  52. lol 0
  53. loc EFDIVZ
  54. beq *1
  55. lol 0
  56. trp
  57. bra *3
  58. 1
  59. loc 8
  60. cal $getpid
  61. lfr _EM_WSIZE
  62. cal $kill
  63. asp 2*_EM_WSIZE
  64. 3
  65. lpi $_ctch_
  66. sig
  67. asp _EM_PSIZE
  68. rtt
  69. end 0
  70. #endif