source: buchla-68k/alcyon/setwq.s@ 7bf3856

Last change on this file since 7bf3856 was 7bf3856, checked in by Thomas Lopatic <thomas@…>, 7 years ago

Added Alcyon C reference output.

  • Property mode set to 100644
File size: 2.3 KB
Line 
1.globl _setwq
2.text
3_setwq:
4~~setwq:
5~qp=R13
6~qadr=12
7~qsiz=16
8~hi=18
9~lo=20
10link R14,#0
11movem.l R7-R7/R13-R13,-(sp)
12*line 37
13move.l 8(R14),R13
14*line 37
15*line 38
16tst.l 12(R14)
17bne L2
18*line 38
19clr 16(R14)
20*line 39
21L2:
22*line 40
23move.l 12(R14),12(R13)
24*line 41
25move 16(R14),(R13)
26*line 42
27clr 2(R13)
28*line 43
29clr 4(R13)
30*line 44
31clr 6(R13)
32*line 45
33move 18(R14),8(R13)
34*line 46
35move 20(R14),10(R13)
36*line 48
37clr R0
38move 16(R14),R0
39bra L1
40L1:tst.l (sp)+
41movem.l (sp)+,R13-R13
42unlk R14
43rts
44.globl _putwq
45.text
46_putwq:
47~~putwq:
48~qp=R13
49~c=R7
50link R14,#0
51movem.l R6-R7/R13-R13,-(sp)
52*line 77
53move.l 8(R14),R13
54*line 77
55move 12(R14),R7
56*line 77
57*line 77
58tst (R13)
59beq L4
60*line 78
61*line 79
62*line 80
63clr R0
64move 2(R13),R0
65cmp (R13),R0
66bne L5
67*line 80
68move #-1,R0
69bra L3
70*line 81
71L5:
72*line 82
73clr R0
74move 4(R13),R0
75lsl #1,R0
76swap R0
77clr R0
78swap R0
79add.l 12(R13),R0
80move.l R0,R8
81move R7,(R8)
82add #1,4(R13)
83*line 83
84*line 84
85*line 85
86clr R0
87move 4(R13),R0
88cmp (R13),R0
89blo L6
90*line 85
91clr 4(R13)
92*line 86
93L6:
94*line 87
95*line 88
96add #1,2(R13)
97clr R0
98move 2(R13),R0
99cmp 8(R13),R0
100bne L7
101*line 88
102move #1,R0
103bra L3
104*line 89
105bra L8
106L7:
107*line 90
108clr R0
109bra L3
110L8:
111*line 91
112bra L9
113L4:
114*line 92
115*line 93
116*line 94
117move #-2,R0
118bra L3
119L9:L3:tst.l (sp)+
120movem.l (sp)+,R7-R7/R13-R13
121unlk R14
122rts
123.globl _getwq
124.text
125_getwq:
126~~getwq:
127~qp=R13
128~p=R12
129link R14,#0
130movem.l R7-R7/R12-R13,-(sp)
131*line 124
132move.l 8(R14),R13
133*line 124
134move.l 12(R14),R12
135*line 124
136*line 124
137tst (R13)
138beq L11
139*line 125
140*line 126
141*line 126
142tst 2(R13)
143beq L12
144*line 127
145*line 128
146clr R0
147move 6(R13),R0
148lsl #1,R0
149swap R0
150clr R0
151swap R0
152add.l 12(R13),R0
153move.l R0,R8
154move (R8),(R12)
155add #1,6(R13)
156*line 129
157*line 130
158*line 131
159clr R0
160move 6(R13),R0
161cmp (R13),R0
162blo L13
163*line 131
164clr 6(R13)
165*line 132
166L13:
167*line 133
168*line 134
169sub #1,2(R13)
170clr R0
171move 2(R13),R0
172cmp 10(R13),R0
173bne L14
174*line 134
175move #1,R0
176bra L10
177*line 135
178bra L15
179L14:
180*line 136
181clr R0
182bra L10
183L15:
184*line 137
185bra L16
186L12:
187*line 138
188*line 139
189*line 140
190move #-1,R0
191bra L10
192L16:
193*line 141
194*line 142
195bra L17
196L11:
197*line 143
198*line 144
199*line 145
200move #-2,R0
201bra L10
202L17:L10:tst.l (sp)+
203movem.l (sp)+,R12-R13
204unlk R14
205rts
206.data
Note: See TracBrowser for help on using the repository browser.