📄 f12.s
字号:
/// f12 -- type statements and type getter subroutine//.globl stype.globl getype.globl typtab.globl sfunc1.globl lookup.globl getsym.globl error.globl sdime1stype: mov r0,-(sp) mov r1,r2 jsr r5,lookup; funtab br 1f mov r2,r1 mov (sp)+,r0 jmp sfunc11: jsr r5,getsym tst r0 bne 3f / junk error if not identifier mov symtab(r3),r0 bic $![377\<8+7],r0 / size,type beq 2f cmp r0,(sp) / redefined, but same beq 2f jsr r5,error; 3.2: bic $377\<8+7,symtab(r3) bis (sp),symtab(r3) / set in type and size mov r3,-(sp) jsr r5,getsym cmp r0,$32. / ( for dimension bne 2f mov (sp),r3 jsr r5,sdime1 jsr r5,getsym2: tst (sp)+ cmp r0,$36. / , for another list element beq 1b cmp r0,$40. / eos beq 1f3: jsr r5,error; 2. / junk1: tst (sp)+ rts r5funtab: <function\0> <\0>getype: mov r1,r2 jsr r5,lookup; typtab br 1f mov tvaltab(r0),r0 tst (r5)+1: rts r5tvaltab: log1con logcon int1con int2con intcon dcplxcon dblcon cplxcon dblcon realcontyptab: <logical*1\0> <logical\0> <integer*1\0> <integer*2\0> <integer\0> <doublecomplex\0> <doubleprecision\0> <complex\0> <real*8\0> <real\0> <\0>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -