You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

697 lines
5.2 KiB

/ c code tables-- compile to register
fp = 1 / enable floating-point
.globl _regtab
_regtab=.; .+2
20.; cr20
21.; cr20
22.; cr20
30.; cr30
31.; cr30
32.; cr32
33.; cr32
34.; cr34
35.; cr35
29.; cr29
36.; cr36
37.; cr37
38.; cr38
101.; cr100
80.; cr80
40.; cr40
41.; cr40 / - like +
42.; cr42
43.; cr43
44.; cr43
45.; cr45
46.; cr45
47.; cr47
48.; cr48
60.; cr60
61.; cr60
62.; cr60
63.; cr60
64.; cr60
65.; cr60
66.; cr60
67.; cr60
68.; cr60
69.; cr60
70.; cr70
71.; cr70
72.; cr72
73.; cr73
74.; cr73
75.; cr75
76.; cr75
77.; cr77
78.; cr78
102.; cr102
97.; cr97
0
/ goto
cr102:
%i,n
jmp *A1
%n*,n
F*
jmp *#1(R)
%n,n
F
jmp (R)
/ call
cr100:
%n*,n
F*
jsr pc,*#1(R)
%a,n
jsr pc,*A1
%n,n
F
jsr pc,(R)
/ name, constant
cr20:
%z,n
clr R
%aw,n
mov A,R
%ab,n
movb A,R
.if fp
%af,n
M
movf A,R
.endif
/++,-- prefix
cr30:
%ai,n
%abp,n
%ab,n
IB1 A1
movB1 A1,R
%a,n
I' $2,A1
mov A1,R
%nbp*,n
%ni*,n
%nb*,n
F*
IB1 #1(R)
movB1 #1(R),R
%n*,n
F*
I' $2,#1(R)
mov #1(R),R
/ ++,-- postfix
cr32:
%ai,n
%abp,n
%ab,n
movB1 A1,R
IB1 A1
%a,n
mov A1,R
I' $2,A1
%nbp*,n
%nb*,n
%ni*,n
F*
movB1 #1(R),-(sp)
IB1 #1(R)
movB1 (sp)+,R
%n*,n
F*
mov #1(R),-(sp)
I' $2,#1(R)
mov (sp)+,R
/ !
cr34:
%n,n
FC
beq 1f
clr R
br 2f
1: mov $1,R
2:
/ &unary
cr35:
%a,n
mov $A1,R
/ & unary of auto
cr29:
%e,n
mov r5,R
add Z,R
/ *unary
cr36:
%abp*,n
F
movb (R),R
%a*,n
F
mov (R),R
%abp,n
movb *A1,R
%a,n
mov *A1,R
%nbp*,n
F*
movb *#1(R),R
%n*,n
F*
mov *#1(R),R
%nbp,n
H*
movb ~(R),R
%n,n
H*
mov ~(R),R
/ - unary
cr37:
%n,n
F
neg R
/ ~
cr38:
%n,n
F
com R
/ =
cr80:
%a,n
S
movB1 R,A1
%n*,a
F*
movB1 A2,#1(R)
movB1 #1(R),R
%n*,e
F*
S1
movB1 R1,#1(R)
mov R1,R
%n*,n
FS*
S
movB1 R,*(sp)+
/ |
cr48:
%n,a
F
bisB2 A2,R
%n,e*
F
S1*
bisB2 #2(R1),R
%n,e
F
S1
bis R1,R
%n,n
FS
S
bis (sp)+,R
/ &
cr47:
%n,c
F
bic $!C2,R
%n,e
F
S1
com R1
bic R1,R
%n,n
FS
S
com (sp)
bic (sp)+,R
/ relationals
cr60:
%n,n
HC
I 2f
clr R
br 1f
2: mov $1,R
1:
/ >>, <<
cr45:
%a,aw
movB1 A1,I'
I A2,lsh
movB1 I',R
%n*,aw
F*
movB1 #1(R),I'
I A2,lsh
movB1 I',R
%n,aw
F
mov R,I'
I A2,lsh
mov I',R
%a,nw*
S*
movB1 A1,(r4)
I #2(R),lsh
mov (r4),R
%a,n
S
movB1 A1,I'
I R,lsh
mov I',R
%n,n
FS
S
mov (sp)+,I'
I R,lsh
mov I',R
/ +, -
cr40:
%n,aw
F
I A2,R
%n,ew*
F
S1*
I #2(R1),R
%n,e
F
S1
I R1,R
%n,nw*
SS*
F
I *(sp)+,R
%n,n
SS
F
I (sp)+,R
/ *
cr42:
%aw,a
mov A1,(r4)+
movB2 A2,(r4)
mov -(r4),R
%n,a
F
mov R,(r4)+
movB2 A2,(r4)
mov -(r4),R
%n,e
F
S1
mov R,(r4)+
mov R1,(r4)
mov -(r4),R
%n,n
FS
S
mov (sp)+,(r4)+
mov R,(r4)
mov -(r4),R
/ /; mod
cr43:
%a,a
movB1 A1,(r4)
movB2 A2,div
mov I,R
%a,n
S
movB1 A1,(r4)
mov R,div
mov I,R
%n,a
F
mov R,(r4)
movB2 A2,div
mov I,R
%n,e
F
S1
mov R,(r4)
mov R1,div
mov I,R
%e,n
S
F1
mov R1,(r4)
mov R,div
mov I,R
%n,n
FS
S
mov (sp)+,(r4)
mov R,div
mov I,R
/ =*
cr72:
%a,a
movB1 A1,(r4)
movB2 A2,mul
movB1 (r4),A1
mov (r4),R
%a,n
S
mov R,(r4)+
movB1 A1,(r4)
mov -(r4),R
movB1 R,A1
%n*,a
F*
movB1 #1(R),(r4)
movB2 A2,mul
movB1 (r4),#1(R)
mov (r4),R
%n*,e
F*
S1
movB1 #1(R),(r4)
mov R1,mul
movB1 (r4),#1(R)
mov (r4),R
%e*,n
S
F1*
movB1 #1(R1),(r4)
mov R,mul
movB1 (r4),#1(R1)
mov (r4),R
%n*,n
FS*
S
movB1 *(sp),(r4)
mov R,mul
movB1 (r4),*(sp)+
mov (r4),R
/ =mod, =/
cr73:
%a,a
movB1 A1,(r4)
movB2 A2,div
movB1 I,A1
mov I,R
%a,n
S
movB1 A1,(r4)
mov R,div
mov I,R
movB1 R,A1
%n*,a
F*
movB1 #1(R),(r4)
movB2 A2,div
movB1 I,#1(R)
mov I,R
%n*,e
F*
S1
movB1 #1(R),(r4)
mov R1,div
movB1 I,#1(R)
mov I,R
%e*,n
S
F1*
movB1 #1(R1),(r4)
mov R,div
movB1 I,#1(R1)
mov I,R
%n*,n
FS*
S
movB1 *(sp),(r4)
mov R,div
movB1 I,*(sp)+
mov I,R
/ =|
cr78:
%a,a
bisBE A2,A1
movB1 A1,R
%a,n
S
bisB1 R,A1
movB1 A1,R
%n*,a
F*
bisBE A2,#1(R)
movB1 #1(R),R
%e*,n*
S*
F1*
bisBE #1(R1),#2(R)
movB1 #2(R),R
%e*,n
S
F1*
bisBE R,#1(R1)
movB1 #1(R1),R
%n*,e*
F*
S1*
bisBE #2(R1),#1(R)
movB1 #1(R),R
%n*,e
F*
S1
bisBE R1,#1(R)
movB2 #1(R),R
%n*,n*
FS*
S*
bisBE #2(R),*(sp)
movB2 *(sp)+,R
%n*,n
FS*
S
bisBE R,*(sp)
mov *(sp)+,R
/ =&
cr77:
%a,c
bicB1 $!C2,A1
movB2 A1,R
%a,n
S
com R
bicB1 R,A1
movB1 A1,R
%e*,n
S
F1*
com R
bicB1 R,#1(R1)
movB1 #1(R1),R
%n*,e
F*
S1
com R1
bicB1 R1,#1(R)
movB1 #1(R),R
%n*,n
FS*
S
com R
bicB1 R,*(sp)
movB1 *(sp)+,R
/ =>>, =<<
cr75:
%a,aw
movB1 A1,I'
I A2,lsh
movB1 I',A1
movB1 I',R
%a,n
S
movB1 A1,I'
I R,lsh
movB1 I',A1
movB1 I',R
%n*,e
F*
S1
movB1 #1(R),I'
I R1,lsh
movB1 I',#1(R)
movB1 I',R
%e*,n
S
F1*
movB1 #1(R1),I'
I R,lsh
movB I',#1(R1)
movB1 I',R
%n*,n
FS*
S
movB1 *(sp),I'
I R,lsh
movB1 I',*(sp)+
movB1 I',R
/ =+
cr70:
%aw,aw
I A2,A1
mov A1,R
%aw,nw*
S*
I #2(R),A1
mov A1,R
%aw,n
S
I R,A1
mov A1,R
%ew*,nw*
S*
F1*
I #2(R),#1(R1)
mov #1(R1),R
%a,nw*
S*
movB1 A1,R1
I #2(R),R1
movB1 R1,#2(R)
mov R1,R
%a,n
S
movB1 A1,R1
I R1,R
movB1 R,A1
%ew*,n
S
F1*
I R,#1(R1)
mov #1(R1),R
%nw*,n
SS
F*
I (sp)+,#1(R)
mov #1(R),R
%n*,n
SS
F*
movB1 #1(R),R1
I (sp)+,R1
movB1 R1,#1(R)
mov R1,R
/ int -> int[]
cr97:
%n,n
F
asl R
.data
.even
.text