ack/lang/cem/libcc/gen/head_cc.e

91 lines
1.3 KiB
Plaintext
Raw Normal View History

1985-01-01 22:19:09 +00:00
#
#include "em_abs.h"
1985-01-01 22:19:09 +00:00
/*
* (c) copyright 1983 by the Vrije Universiteit, Amsterdam, The Netherlands.
*
* This product is part of the Amsterdam Compiler Kit.
*
* Permission to use, sell, duplicate or disclose this software must be
* obtained in writing. Requests for such permissions may be sent to
*
* Dr. Andrew S. Tanenbaum
* Wiskundig Seminarium
* Vrije Universiteit
* Postbox 7161
* 1007 MC Amsterdam
* The Netherlands
*
*/
/* Author: E.G. Keizer */
mes 2,EM_WSIZE,EM_PSIZE
exa environ
exa _penvp
environ
bss EM_PSIZE,0,0
_penvp
bss EM_PSIZE,0,0
exp $m_a_i_n
pro $m_a_i_n,0
#if EM_WSIZE==1
1988-08-11 09:55:22 +00:00
ldc 1336 ; EIOVFL | EIUND | ECONV | EFOVFL | EFUNFL
1985-01-01 22:19:09 +00:00
#else
1988-08-11 09:55:22 +00:00
loc 1336
1985-01-01 22:19:09 +00:00
#endif
1987-10-15 12:59:03 +00:00
sim ; ignored
1985-01-01 22:19:09 +00:00
lal EM_WSIZE+EM_PSIZE
loi EM_PSIZE
lae environ
sti EM_PSIZE
lae environ
loi EM_PSIZE
lae _penvp
sti EM_PSIZE
#if unix && ! (em22 || em24 || em44)
lpi $_ctch_
sig
asp EM_PSIZE
#endif
1985-01-01 22:19:09 +00:00
lal EM_WSIZE+EM_PSIZE
loi EM_PSIZE
lal EM_WSIZE
loi EM_PSIZE
lal 0
loi EM_WSIZE
cal $main
asp EM_WSIZE+EM_PSIZE+EM_PSIZE
lfr EM_WSIZE
cal $exit
end
#if unix && ! (em22 || em24 || em44)
exp $_ctch_
pro $_ctch_,0
lol 0
loc EIDIVZ
beq *1
lol 0
loc EFDIVZ
beq *1
bra *2
2
lol 0
trp
bra *3
1
loc 8
cal $getpid
lfr EM_WSIZE
cal $kill
asp 2*EM_WSIZE
3
lpi $_ctch_
sig
asp EM_WSIZE
rtt
end 0
#endif