|
|
1.1 root 1: define(ID_VERSION,`#@(#) cm4tvdefs: 1.1 1/9/82')dnl
2: define(_SCR1,r0)dnl
3: define(_SCR2,r1)dnl
4: define(_SCR3,r2)dnl
5: define(_1STREG,r8)dnl
6: define(_2NDREG,r7)dnl
7: define(_3RDREG,r6)dnl
8: define(_4THREG,r5)dnl
9: define(_5THREG,r4)dnl
10: define(_6THREG,r3)dnl
11: define(_1STARG,0(%ap))dnl
12: define(_2NDARG,4(%ap))dnl
13: define(_3RDARG,8(%ap))dnl
14: define(_4THARG,12(%ap))dnl
15: define(_5THARG,16(%ap))dnl
16: define(C_PROLOGUE,`define(`_RET_NO',incr(_RET_NO))define(`_F_NAME',$1)dnl
17: .text;dnl
18: .tv $1;dnl
19: .def $1; .val $1; .scl 2; .type 040; .endef;dnl
20: .globl $1;dnl
21: $1: save &ifelse($2,,6,$2)')dnl
22: define(A_PROLOGUE,`define(`_RET_NO',incr(_RET_NO))define(`_F_NAME',$1)dnl
23: .text;dnl
24: .tv $1;dnl
25: .def $1; .val $1; .scl 2; .type 040; .endef;dnl
26: .globl $1;dnl
27: $1:')dnl
28: define(I_RETURN,`define(`_RET_LAB',.RET`'_RET_NO) jmp _RET_LAB')dnl
29: define(C_RETURN,`ifelse(_RET_LAB,`_RET_LAB',,_RET_LAB:undefine(`_RET_LAB'))dnl
30: ret &ifelse($1,,6,$1);dnl
31: .def _F_NAME; .val .; .scl -1; .endef')dnl
32: define(A_EPILOGUE,`ifelse(_RET_LAB,`_RET_LAB',,_RET_LAB:undefine(`_RET_LAB'))dnl
33: .def _F_NAME; .val .; .scl -1; .endef')dnl
34: define(C_CALL,`ifelse($2,,,` pushw $2;')ifelse($3,,,` pushw $3;')ifelse($4,,,` pushw $4;')ifelse($5,,,` pushw $5;')ifelse($6,,,` pushw $6;')TV($1) call &eval(0+ifelse($2,,0,1)+ifelse($3,,0,1)+ifelse($4,,0,1)+ifelse($5,,0,1)+ifelse($6,,0,1)),*$1')dnl
35: define(A_CALL,`TV($1) call &$2,*$1')dnl
36: define(TV,`ifelse(index($1,`('),-1,` .tv $1;')')dnl
37: define(_RESULT,r0)dnl
38: define(_TARGET,r2)dnl
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.