1#include "asm-mips.h"
2	.file	1 "avcall-mips64.c"
3	.text
4	.align	2
5	.align	3
6	.globl	avcall_call
7	.set	nomips16
8	.set	nomicromips
9	.ent	avcall_call
10	DECLARE_FUNCTION(avcall_call)
11avcall_call:
12	.frame	$fp,32,$31
13	.mask	0xd0010000,-8
14	.fmask	0x00000000,0
15	ld	$2,40($4)
16	ld	$12,48($4)
17	lw	$3,68($4)
18	daddiu	$sp,$sp,-32
19	dsubu	$6,$2,$12
20	dsra	$6,$6,3
21	sd	$fp,16($sp)
22	sd	$16,0($sp)
23	sd	$31,24($sp)
24	move	$fp,$sp
25	daddiu	$sp,$sp,-2064
26	move	$16,$4
27	sll	$6,$6,0
28	.set	noreorder
29	.set	nomacro
30	beq	$3,$0,.L2
31	move	$2,$sp
32	.set	macro
33	.set	reorder
34
35	andi	$4,$3,0x1
36	.set	noreorder
37	.set	nomacro
38	beq	$4,$0,.L123
39	andi	$4,$3,0x2
40	.set	macro
41	.set	reorder
42
43
44
45	lwc1 $f12,76($16)
46
47
48	andi	$4,$3,0x2
49.L123:
50	.set	noreorder
51	.set	nomacro
52	beq	$4,$0,.L124
53	andi	$4,$3,0x4
54	.set	macro
55	.set	reorder
56
57
58
59	lwc1 $f13,80($16)
60
61
62	andi	$4,$3,0x4
63.L124:
64	.set	noreorder
65	.set	nomacro
66	beq	$4,$0,.L125
67	andi	$4,$3,0x8
68	.set	macro
69	.set	reorder
70
71
72
73	lwc1 $f14,84($16)
74
75
76	andi	$4,$3,0x8
77.L125:
78	.set	noreorder
79	.set	nomacro
80	beq	$4,$0,.L126
81	andi	$4,$3,0x10
82	.set	macro
83	.set	reorder
84
85
86
87	lwc1 $f15,88($16)
88
89
90	andi	$4,$3,0x10
91.L126:
92	.set	noreorder
93	.set	nomacro
94	beq	$4,$0,.L127
95	andi	$4,$3,0x20
96	.set	macro
97	.set	reorder
98
99
100
101	lwc1 $f16,92($16)
102
103
104	andi	$4,$3,0x20
105.L127:
106	.set	noreorder
107	.set	nomacro
108	beq	$4,$0,.L128
109	andi	$4,$3,0x40
110	.set	macro
111	.set	reorder
112
113
114
115	lwc1 $f17,96($16)
116
117
118	andi	$4,$3,0x40
119.L128:
120	.set	noreorder
121	.set	nomacro
122	beql	$4,$0,.L129
123	andi	$3,$3,0x80
124	.set	macro
125	.set	reorder
126
127
128
129	lwc1 $f18,100($16)
130
131
132	andi	$3,$3,0x80
133.L129:
134	bne	$3,$0,.L116
135.L2:
136	lw	$3,72($16)
137.L122:
138	.set	noreorder
139	.set	nomacro
140	beql	$3,$0,.L121
141	slt	$3,$6,9
142	.set	macro
143	.set	reorder
144
145	andi	$4,$3,0x1
146	.set	noreorder
147	.set	nomacro
148	beq	$4,$0,.L130
149	andi	$4,$3,0x2
150	.set	macro
151	.set	reorder
152
153
154
155	ldc1 $f12,0($12)
156
157
158	andi	$4,$3,0x2
159.L130:
160	.set	noreorder
161	.set	nomacro
162	beq	$4,$0,.L131
163	andi	$4,$3,0x4
164	.set	macro
165	.set	reorder
166
167
168
169	ldc1 $f13,8($12)
170
171
172	andi	$4,$3,0x4
173.L131:
174	.set	noreorder
175	.set	nomacro
176	beq	$4,$0,.L132
177	andi	$4,$3,0x8
178	.set	macro
179	.set	reorder
180
181
182
183	ldc1 $f14,16($12)
184
185
186	andi	$4,$3,0x8
187.L132:
188	.set	noreorder
189	.set	nomacro
190	beq	$4,$0,.L133
191	andi	$4,$3,0x10
192	.set	macro
193	.set	reorder
194
195
196
197	ldc1 $f15,24($12)
198
199
200	andi	$4,$3,0x10
201.L133:
202	.set	noreorder
203	.set	nomacro
204	beq	$4,$0,.L134
205	andi	$4,$3,0x20
206	.set	macro
207	.set	reorder
208
209
210
211	ldc1 $f16,32($12)
212
213
214	andi	$4,$3,0x20
215.L134:
216	.set	noreorder
217	.set	nomacro
218	beq	$4,$0,.L135
219	andi	$4,$3,0x40
220	.set	macro
221	.set	reorder
222
223
224
225	ldc1 $f17,40($12)
226
227
228	andi	$4,$3,0x40
229.L135:
230	.set	noreorder
231	.set	nomacro
232	beql	$4,$0,.L136
233	andi	$3,$3,0x80
234	.set	macro
235	.set	reorder
236
237
238
239	ldc1 $f18,48($12)
240
241
242	andi	$3,$3,0x80
243.L136:
244	bne	$3,$0,.L117
245	slt	$3,$6,9
246.L121:
247	.set	noreorder
248	.set	nomacro
249	bne	$3,$0,.L22
250	daddiu	$4,$12,64
251	.set	macro
252	.set	reorder
253
254	li	$3,8
255	.align	3
256.L21:
257	ld	$5,0($4)
258	addiu	$3,$3,1
259	daddiu	$4,$4,8
260	sd	$5,0($2)
261	.set	noreorder
262	.set	nomacro
263	bne	$6,$3,.L21
264	daddiu	$2,$2,8
265	.set	macro
266	.set	reorder
267
268.L22:
269
270
271	ld $4,0($12)
272
273
274	ld $5,8($12)
275
276
277	ld $6,16($12)
278
279
280	ld $7,24($12)
281
282
283	ld $8,32($12)
284
285
286	ld $9,40($12)
287
288
289	ld $10,48($12)
290
291
292	ld $11,56($12)
293
294
295	ld	$25,8($16)
296	jalr	$25
297	lw	$4,24($16)
298	li	$5,1
299	.set	noreorder
300	.set	nomacro
301	beq	$4,$5,.L19
302	li	$5,2
303	.set	macro
304	.set	reorder
305
306	.set	noreorder
307	.set	nomacro
308	beq	$4,$5,.L106
309	li	$5,3
310	.set	macro
311	.set	reorder
312
313	.set	noreorder
314	.set	nomacro
315	beq	$4,$5,.L106
316	li	$5,4
317	.set	macro
318	.set	reorder
319
320	.set	noreorder
321	.set	nomacro
322	beq	$4,$5,.L106
323	li	$5,5
324	.set	macro
325	.set	reorder
326
327	.set	noreorder
328	.set	nomacro
329	beq	$4,$5,.L108
330	li	$5,6
331	.set	macro
332	.set	reorder
333
334	.set	noreorder
335	.set	nomacro
336	beq	$4,$5,.L108
337	li	$5,7
338	.set	macro
339	.set	reorder
340
341	.set	noreorder
342	.set	nomacro
343	beq	$4,$5,.L111
344	li	$5,8
345	.set	macro
346	.set	reorder
347
348	.set	noreorder
349	.set	nomacro
350	beq	$4,$5,.L111
351	li	$5,9
352	.set	macro
353	.set	reorder
354
355	.set	noreorder
356	.set	nomacro
357	beq	$4,$5,.L109
358	li	$5,10
359	.set	macro
360	.set	reorder
361
362	.set	noreorder
363	.set	nomacro
364	beq	$4,$5,.L109
365	li	$5,11
366	.set	macro
367	.set	reorder
368
369	.set	noreorder
370	.set	nomacro
371	beq	$4,$5,.L109
372	li	$5,12
373	.set	macro
374	.set	reorder
375
376	.set	noreorder
377	.set	nomacro
378	beq	$4,$5,.L109
379	li	$5,13
380	.set	macro
381	.set	reorder
382
383	.set	noreorder
384	.set	nomacro
385	beq	$4,$5,.L118
386	li	$5,14
387	.set	macro
388	.set	reorder
389
390	.set	noreorder
391	.set	nomacro
392	beq	$4,$5,.L119
393	li	$5,15
394	.set	macro
395	.set	reorder
396
397	.set	noreorder
398	.set	nomacro
399	beq	$4,$5,.L109
400	li	$5,16
401	.set	macro
402	.set	reorder
403
404	.set	noreorder
405	.set	nomacro
406	bnel	$4,$5,.L137
407	move	$sp,$fp
408	.set	macro
409	.set	reorder
410
411	lw	$4,0($16)
412	andi	$5,$4,0x200
413	.set	noreorder
414	.set	nomacro
415	beq	$5,$0,.L19
416	andi	$4,$4,0x4
417	.set	macro
418	.set	reorder
419
420	.set	noreorder
421	.set	nomacro
422	beql	$4,$0,.L37
423	ld	$5,32($16)
424	.set	macro
425	.set	reorder
426
427	ld	$3,32($16)
428	li	$4,1
429	.set	noreorder
430	.set	nomacro
431	beq	$3,$4,.L106
432	li	$4,2
433	.set	macro
434	.set	reorder
435
436	.set	noreorder
437	.set	nomacro
438	beq	$3,$4,.L108
439	li	$4,4
440	.set	macro
441	.set	reorder
442
443	.set	noreorder
444	.set	nomacro
445	beq	$3,$4,.L111
446	li	$4,8
447	.set	macro
448	.set	reorder
449
450	.set	noreorder
451	.set	nomacro
452	beql	$3,$4,.L138
453	ld	$3,16($16)
454	.set	macro
455	.set	reorder
456
457.L19:
458	move	$sp,$fp
459.L137:
460	ld	$31,24($sp)
461	ld	$fp,16($sp)
462	ld	$16,0($sp)
463	move	$2,$0
464	.set	noreorder
465	.set	nomacro
466	j	$31
467	daddiu	$sp,$sp,32
468	.set	macro
469	.set	reorder
470
471	.align	3
472.L117:
473
474
475	ldc1 $f19,56($12)
476
477
478	.set	noreorder
479	.set	nomacro
480	b	.L121
481	slt	$3,$6,9
482	.set	macro
483	.set	reorder
484
485	.align	3
486.L116:
487
488
489	lwc1 $f19,104($16)
490
491
492	.set	noreorder
493	.set	nomacro
494	b	.L122
495	lw	$3,72($16)
496	.set	macro
497	.set	reorder
498
499	.align	3
500.L106:
501	ld	$3,16($16)
502	sb	$2,0($3)
503	move	$sp,$fp
504	ld	$31,24($sp)
505	ld	$fp,16($sp)
506	ld	$16,0($sp)
507	move	$2,$0
508	.set	noreorder
509	.set	nomacro
510	j	$31
511	daddiu	$sp,$sp,32
512	.set	macro
513	.set	reorder
514
515.L111:
516	ld	$3,16($16)
517	.set	noreorder
518	.set	nomacro
519	b	.L19
520	sw	$2,0($3)
521	.set	macro
522	.set	reorder
523
524	.align	3
525.L108:
526	ld	$3,16($16)
527	sh	$2,0($3)
528	move	$sp,$fp
529	ld	$31,24($sp)
530	ld	$fp,16($sp)
531	ld	$16,0($sp)
532	move	$2,$0
533	.set	noreorder
534	.set	nomacro
535	j	$31
536	daddiu	$sp,$sp,32
537	.set	macro
538	.set	reorder
539
540	.align	3
541.L109:
542	ld	$3,16($16)
543	.align	3
544.L138:
545	sd	$2,0($3)
546	move	$sp,$fp
547	ld	$31,24($sp)
548	ld	$fp,16($sp)
549	ld	$16,0($sp)
550	move	$2,$0
551	.set	noreorder
552	.set	nomacro
553	j	$31
554	daddiu	$sp,$sp,32
555	.set	macro
556	.set	reorder
557
558.L119:
559	ld	$2,16($16)
560	.set	noreorder
561	.set	nomacro
562	b	.L19
563	sdc1	$f0,0($2)
564	.set	macro
565	.set	reorder
566
567.L118:
568	ld	$2,16($16)
569	.set	noreorder
570	.set	nomacro
571	b	.L19
572	swc1	$f0,0($2)
573	.set	macro
574	.set	reorder
575
576.L37:
577	daddiu	$4,$5,-1
578	sltu	$4,$4,16
579	.set	noreorder
580	.set	nomacro
581	beq	$4,$0,.L19
582	sltu	$7,$5,9
583	.set	macro
584	.set	reorder
585
586	ld	$6,16($16)
587	li	$8,-8
588	andi	$4,$6,0x7
589	daddu	$5,$5,$4
590	.set	noreorder
591	.set	nomacro
592	beq	$7,$0,.L41
593	and	$6,$6,$8
594	.set	macro
595	.set	reorder
596
597	sltu	$3,$5,9
598	.set	noreorder
599	.set	nomacro
600	beq	$3,$0,.L42
601	dsll	$3,$5,3
602	.set	macro
603	.set	reorder
604
605	daddiu	$3,$3,-1
606	ld	$7,0($6)
607	li	$5,2
608	sll	$3,$3,0
609	sll	$4,$4,3
610	dsll	$3,$5,$3
611	li	$5,1
612	dsll	$5,$5,$4
613	dsll	$4,$2,$4
614	dsubu	$3,$3,$5
615	xor	$4,$4,$7
616	and	$4,$3,$4
617	xor	$4,$4,$7
618	.set	noreorder
619	.set	nomacro
620	b	.L19
621	sd	$4,0($6)
622	.set	macro
623	.set	reorder
624
625.L41:
626	ld	$10,0($6)
627	sll	$8,$4,3
628	dsll	$7,$2,$8
629	li	$9,-1
630	dsll	$9,$9,$8
631	xor	$7,$7,$10
632	and	$7,$9,$7
633	xor	$7,$7,$10
634	sltu	$9,$5,17
635	subu	$4,$0,$4
636	.set	noreorder
637	.set	nomacro
638	bne	$9,$0,.L120
639	sd	$7,0($6)
640	.set	macro
641	.set	reorder
642
643	dsll	$5,$5,3
644	ld	$10,16($6)
645	sll	$4,$4,3
646	daddiu	$5,$5,-129
647	addiu	$4,$4,64
648	sll	$5,$5,0
649	li	$7,2
650	move	$9,$3
651	dsll	$5,$7,$5
652	dsra	$3,$3,$4
653	daddiu	$5,$5,-1
654	xor	$3,$3,$10
655	dsra	$2,$2,$4
656	dsll	$8,$9,$8
657	and	$3,$5,$3
658	or	$2,$2,$8
659	xor	$3,$3,$10
660	sd	$2,8($6)
661	.set	noreorder
662	.set	nomacro
663	b	.L19
664	sd	$3,16($6)
665	.set	macro
666	.set	reorder
667
668.L42:
669	ld	$10,0($6)
670	ld	$9,8($6)
671	subu	$7,$0,$4
672	daddiu	$3,$3,-65
673	sll	$4,$4,3
674	li	$5,2
675	sll	$3,$3,0
676	sll	$7,$7,3
677	dsll	$8,$2,$4
678	dsll	$3,$5,$3
679	dsra	$2,$2,$7
680	li	$5,-1
681	dsll	$4,$5,$4
682	daddiu	$3,$3,-1
683	xor	$5,$8,$10
684	xor	$2,$2,$9
685	and	$2,$3,$2
686	and	$4,$4,$5
687	xor	$3,$4,$10
688	xor	$2,$2,$9
689	sd	$3,0($6)
690	.set	noreorder
691	.set	nomacro
692	b	.L19
693	sd	$2,8($6)
694	.set	macro
695	.set	reorder
696
697.L120:
698	sll	$4,$4,2
699	addiu	$4,$4,32
700	dsll	$5,$5,3
701	ld	$7,8($6)
702	dsra	$2,$2,$4
703	daddiu	$5,$5,-65
704	dsra	$4,$2,$4
705	dsll	$3,$3,$8
706	sll	$5,$5,0
707	li	$2,2
708	or	$3,$4,$3
709	dsll	$2,$2,$5
710	xor	$3,$3,$7
711	daddiu	$2,$2,-1
712	and	$2,$3,$2
713	xor	$2,$2,$7
714	.set	noreorder
715	.set	nomacro
716	b	.L19
717	sd	$2,8($6)
718	.set	macro
719	.set	reorder
720
721	.end	avcall_call
722	.size	avcall_call, .-avcall_call
723