annotate mp3lib/dct64_3dnow.c @ 33845:786d1187960d

libvo: extend alpha_func function pointers with parameter type declaration This fixes compiler warnings about missing prototypes in function declarations.
author diego
date Wed, 27 Jul 2011 13:40:18 +0000
parents d0f70692a140
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4148
nick
parents:
diff changeset
1 /*
nick
parents:
diff changeset
2 * This code was taken from http://www.mpg123.org
nick
parents:
diff changeset
3 * See ChangeLog of mpg123-0.59s-pre.1 for detail
nick
parents:
diff changeset
4 * Applied to mplayer by Nick Kurshev <nickols_k@mail.ru>
nick
parents:
diff changeset
5 * Partial 3dnow! optimization by Nick Kurshev
nick
parents:
diff changeset
6 *
nick
parents:
diff changeset
7 * TODO: optimize scalar 3dnow! code
nick
parents:
diff changeset
8 * Warning: Phases 7 & 8 are not tested
nick
parents:
diff changeset
9 */
nick
parents:
diff changeset
10
16989
e7a129082fda Unify include paths, -I.. is in CFLAGS.
diego
parents: 13918
diff changeset
11 #include "config.h"
e7a129082fda Unify include paths, -I.. is in CFLAGS.
diego
parents: 13918
diff changeset
12 #include "mangle.h"
30167
347d152a5cfa Refactor real --> float #define to a typedef in a common header.
diego
parents: 27757
diff changeset
13 #include "mpg123.h"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
14 #include "libavutil/x86_cpu.h"
5291
421969d55d5f MANGLE() the 3dnow code
arpi
parents: 4148
diff changeset
15
13918
c0fa83fa7cec compilation fix for gcc 3.4.2
reimar
parents: 12292
diff changeset
16 static unsigned long long int attribute_used __attribute__((aligned(8))) x_plus_minus_3dnow = 0x8000000000000000ULL;
12292
114f3d149324 attribute_used for gcc3.4
alex
parents: 11240
diff changeset
17 static float attribute_used plus_1f = 1.0;
4148
nick
parents:
diff changeset
18
23441
1b739c2dc613 Correct dct64 functions' declarations
zuxy
parents: 22375
diff changeset
19 void dct64_MMX_3dnow(short *a,short *b,real *c)
4148
nick
parents:
diff changeset
20 {
nick
parents:
diff changeset
21 char tmp[256];
27757
b5a46071062a Replace all occurrences of '__volatile__' and '__volatile' by plain 'volatile'.
diego
parents: 27754
diff changeset
22 __asm__ volatile(
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
23 " mov %2,%%"REG_a"\n\t"
4148
nick
parents:
diff changeset
24
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
25 " lea 128+%3,%%"REG_d"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
26 " mov %0,%%"REG_S"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
27 " mov %1,%%"REG_D"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
28 " mov $"MANGLE(costab_mmx)",%%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
29 " lea %3,%%"REG_c"\n\t"
4148
nick
parents:
diff changeset
30
nick
parents:
diff changeset
31 /* Phase 1*/
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
32 " movq (%%"REG_a"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
33 " movq 8(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
34 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
35 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
36 " movq 120(%%"REG_a"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
37 " movq 112(%%"REG_a"), %%mm5\n\t"
4148
nick
parents:
diff changeset
38 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
39 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
40 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
41 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
42 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
43 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
44 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
45 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
46 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
47 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
48 " movq %%mm0, (%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
49 " movq %%mm4, 8(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
50 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
51 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
52 " pfmul (%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
53 " pfmul 8(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
54 " movd %%mm3, 124(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
55 " movd %%mm7, 116(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
56 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
57 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
58 " movd %%mm3, 120(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
59 " movd %%mm7, 112(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
60
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
61 " movq 16(%%"REG_a"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
62 " movq 24(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
63 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
64 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
65 " movq 104(%%"REG_a"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
66 " movq 96(%%"REG_a"), %%mm5\n\t"
4148
nick
parents:
diff changeset
67 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
68 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
69 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
70 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
71 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
72 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
73 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
74 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
75 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
76 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
77 " movq %%mm0, 16(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
78 " movq %%mm4, 24(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
79 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
80 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
81 " pfmul 16(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
82 " pfmul 24(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
83 " movd %%mm3, 108(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
84 " movd %%mm7, 100(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
85 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
86 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
87 " movd %%mm3, 104(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
88 " movd %%mm7, 96(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
89
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
90 " movq 32(%%"REG_a"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
91 " movq 40(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
92 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
93 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
94 " movq 88(%%"REG_a"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
95 " movq 80(%%"REG_a"), %%mm5\n\t"
4148
nick
parents:
diff changeset
96 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
97 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
98 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
99 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
100 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
101 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
102 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
103 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
104 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
105 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
106 " movq %%mm0, 32(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
107 " movq %%mm4, 40(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
108 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
109 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
110 " pfmul 32(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
111 " pfmul 40(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
112 " movd %%mm3, 92(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
113 " movd %%mm7, 84(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
114 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
115 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
116 " movd %%mm3, 88(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
117 " movd %%mm7, 80(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
118
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
119 " movq 48(%%"REG_a"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
120 " movq 56(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
121 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
122 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
123 " movq 72(%%"REG_a"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
124 " movq 64(%%"REG_a"), %%mm5\n\t"
4148
nick
parents:
diff changeset
125 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
126 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
127 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
128 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
129 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
130 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
131 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
132 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
133 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
134 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
135 " movq %%mm0, 48(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
136 " movq %%mm4, 56(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
137 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
138 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
139 " pfmul 48(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
140 " pfmul 56(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
141 " movd %%mm3, 76(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
142 " movd %%mm7, 68(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
143 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
144 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
145 " movd %%mm3, 72(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
146 " movd %%mm7, 64(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
147
nick
parents:
diff changeset
148 /* Phase 2*/
nick
parents:
diff changeset
149
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
150 " movq (%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
151 " movq 8(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
152 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
153 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
154 " movq 56(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
155 " movq 48(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
156 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
157 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
158 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
159 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
160 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
161 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
162 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
163 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
164 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
165 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
166 " movq %%mm0, (%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
167 " movq %%mm4, 8(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
168 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
169 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
170 " pfmul 64(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
171 " pfmul 72(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
172 " movd %%mm3, 60(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
173 " movd %%mm7, 52(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
174 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
175 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
176 " movd %%mm3, 56(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
177 " movd %%mm7, 48(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
178
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
179 " movq 16(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
180 " movq 24(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
181 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
182 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
183 " movq 40(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
184 " movq 32(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
185 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
186 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
187 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
188 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
189 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
190 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
191 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
192 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
193 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
194 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
195 " movq %%mm0, 16(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
196 " movq %%mm4, 24(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
197 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
198 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
199 " pfmul 80(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
200 " pfmul 88(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
201 " movd %%mm3, 44(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
202 " movd %%mm7, 36(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
203 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
204 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
205 " movd %%mm3, 40(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
206 " movd %%mm7, 32(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
207
nick
parents:
diff changeset
208 /* Phase 3*/
nick
parents:
diff changeset
209
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
210 " movq 64(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
211 " movq 72(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
212 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
213 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
214 " movq 120(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
215 " movq 112(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
216 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
217 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
218 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
219 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
220 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
221 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
222 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
223 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
224 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
225 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
226 " movq %%mm0, 64(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
227 " movq %%mm4, 72(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
228 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
229 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
230 " pfmul 64(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
231 " pfmul 72(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
232 " movd %%mm3, 124(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
233 " movd %%mm7, 116(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
234 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
235 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
236 " movd %%mm3, 120(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
237 " movd %%mm7, 112(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
238
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
239 " movq 80(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
240 " movq 88(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
241 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
242 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
243 " movq 104(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
244 " movq 96(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
245 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
246 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
247 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
248 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
249 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
250 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
251 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
252 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
253 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
254 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
255 " movq %%mm0, 80(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
256 " movq %%mm4, 88(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
257 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
258 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
259 " pfmul 80(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
260 " pfmul 88(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
261 " movd %%mm3, 108(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
262 " movd %%mm7, 100(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
263 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
264 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
265 " movd %%mm3, 104(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
266 " movd %%mm7, 96(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
267
nick
parents:
diff changeset
268 /* Phase 4*/
nick
parents:
diff changeset
269
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
270 " movq (%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
271 " movq 8(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
272 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
273 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
274 " movq 24(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
275 " movq 16(%%"REG_c"), %%mm5\n\t"
4148
nick
parents:
diff changeset
276 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
277 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
278 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
279 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
280 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
281 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
282 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
283 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
284 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
285 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
286 " movq %%mm0, (%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
287 " movq %%mm4, 8(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
288 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
289 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
290 " pfmul 96(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
291 " pfmul 104(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
292 " movd %%mm3, 28(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
293 " movd %%mm7, 20(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
294 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
295 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
296 " movd %%mm3, 24(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
297 " movd %%mm7, 16(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
298
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
299 " movq 32(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
300 " movq 40(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
301 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
302 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
303 " movq 56(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
304 " movq 48(%%"REG_c"), %%mm5\n\t"
4148
nick
parents:
diff changeset
305 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
306 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
307 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
308 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
309 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
310 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
311 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
312 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
313 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
314 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
315 " movq %%mm0, 32(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
316 " movq %%mm4, 40(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
317 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
318 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
319 " pfmul 96(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
320 " pfmul 104(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
321 " movd %%mm3, 60(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
322 " movd %%mm7, 52(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
323 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
324 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
325 " movd %%mm3, 56(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
326 " movd %%mm7, 48(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
327
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
328 " movq 64(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
329 " movq 72(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
330 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
331 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
332 " movq 88(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
333 " movq 80(%%"REG_c"), %%mm5\n\t"
4148
nick
parents:
diff changeset
334 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
335 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
336 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
337 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
338 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
339 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
340 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
341 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
342 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
343 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
344 " movq %%mm0, 64(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
345 " movq %%mm4, 72(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
346 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
347 " pfsub %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
348 " pfmul 96(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
349 " pfmul 104(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
350 " movd %%mm3, 92(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
351 " movd %%mm7, 84(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
352 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
353 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
354 " movd %%mm3, 88(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
355 " movd %%mm7, 80(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
356
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
357 " movq 96(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
358 " movq 104(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
359 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
360 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
361 " movq 120(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
362 " movq 112(%%"REG_c"), %%mm5\n\t"
4148
nick
parents:
diff changeset
363 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
364 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
365 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
366 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
367 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
368 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
369 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
370 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
371 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
372 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
373 " movq %%mm0, 96(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
374 " movq %%mm4, 104(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
375 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
376 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
377 " pfmul 96(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
378 " pfmul 104(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
379 " movd %%mm3, 124(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
380 " movd %%mm7, 116(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
381 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
382 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
383 " movd %%mm3, 120(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
384 " movd %%mm7, 112(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
385
nick
parents:
diff changeset
386 /* Phase 5 */
nick
parents:
diff changeset
387
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
388 " movq (%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
389 " movq 16(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
390 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
391 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
392 " movq 8(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
393 " movq 24(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
394 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
395 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
396 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
397 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
398 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
399 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
400 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
401 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
402 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
403 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
404 " movq %%mm0, (%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
405 " movq %%mm4, 16(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
406 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
407 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
408 " pfmul 112(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
409 " pfmul 112(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
410 " movd %%mm3, 12(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
411 " movd %%mm7, 28(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
412 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
413 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
414 " movd %%mm3, 8(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
415 " movd %%mm7, 24(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
416
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
417 " movq 32(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
418 " movq 48(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
419 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
420 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
421 " movq 40(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
422 " movq 56(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
423 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
424 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
425 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
426 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
427 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
428 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
429 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
430 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
431 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
432 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
433 " movq %%mm0, 32(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
434 " movq %%mm4, 48(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
435 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
436 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
437 " pfmul 112(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
438 " pfmul 112(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
439 " movd %%mm3, 44(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
440 " movd %%mm7, 60(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
441 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
442 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
443 " movd %%mm3, 40(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
444 " movd %%mm7, 56(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
445
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
446 " movq 64(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
447 " movq 80(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
448 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
449 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
450 " movq 72(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
451 " movq 88(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
452 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
453 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
454 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
455 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
456 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
457 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
458 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
459 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
460 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
461 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
462 " movq %%mm0, 64(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
463 " movq %%mm4, 80(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
464 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
465 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
466 " pfmul 112(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
467 " pfmul 112(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
468 " movd %%mm3, 76(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
469 " movd %%mm7, 92(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
470 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
471 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
472 " movd %%mm3, 72(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
473 " movd %%mm7, 88(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
474
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
475 " movq 96(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
476 " movq 112(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
477 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
478 " movq %%mm4, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
479 " movq 104(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
480 " movq 120(%%"REG_d"), %%mm5\n\t"
4148
nick
parents:
diff changeset
481 /* n.b.: pswapd*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
482 " movq %%mm1, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
483 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
484 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
485 " psrlq $32, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
486 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
487 " punpckldq %%mm6, %%mm5\n\t"
4148
nick
parents:
diff changeset
488 /**/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
489 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
490 " pfadd %%mm5, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
491 " movq %%mm0, 96(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
492 " movq %%mm4, 112(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
493 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
494 " pfsubr %%mm5, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
495 " pfmul 112(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
496 " pfmul 112(%%"REG_b"), %%mm7\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
497 " movd %%mm3, 108(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
498 " movd %%mm7, 124(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
499 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
500 " psrlq $32, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
501 " movd %%mm3, 104(%%"REG_c")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
502 " movd %%mm7, 120(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
503
nick
parents:
diff changeset
504 /* Phase 6. This is the end of easy road. */
nick
parents:
diff changeset
505 /* Code below is coded in scalar mode. Should be optimized */
nick
parents:
diff changeset
506
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
507 " movd "MANGLE(plus_1f)", %%mm6\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
508 " punpckldq 120(%%"REG_b"), %%mm6\n\t" /* mm6 = 1.0 | 120(%%"REG_b")*/
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
509 " movq "MANGLE(x_plus_minus_3dnow)", %%mm7\n\t" /* mm7 = +1 | -1 */
4148
nick
parents:
diff changeset
510
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
511 " movq 32(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
512 " movq 64(%%"REG_c"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
513 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
514 " movq %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
515 " pxor %%mm7, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
516 " pxor %%mm7, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
517 " pfacc %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
518 " pfacc %%mm3, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
519 " pfmul %%mm6, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
520 " pfmul %%mm6, %%mm2\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
521 " movq %%mm0, 32(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
522 " movq %%mm2, 64(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
523
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
524 " movd 44(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
525 " movd 40(%%"REG_c"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
526 " movd 120(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
527 " punpckldq 76(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
528 " punpckldq 72(%%"REG_c"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
529 " punpckldq %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
530 " movq %%mm0, %%mm4\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
531 " movq %%mm2, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
532 " pfsub %%mm2, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
533 " pfmul %%mm3, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
534 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
535 " pfadd %%mm5, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
536 " pfadd %%mm4, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
537 " movq %%mm0, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
538 " punpckldq %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
539 " punpckhdq %%mm1, %%mm2\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
540 " movq %%mm0, 40(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
541 " movq %%mm2, 72(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
542
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
543 " movd 48(%%"REG_c"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
544 " movd 60(%%"REG_c"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
545 " pfsub 52(%%"REG_c"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
546 " pfsub 56(%%"REG_c"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
547 " pfmul 120(%%"REG_b"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
548 " pfmul 120(%%"REG_b"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
549 " movq %%mm2, %%mm1\n\t"
4148
nick
parents:
diff changeset
550
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
551 " pfadd 56(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
552 " pfadd 60(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
553 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
554
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
555 " pfadd 48(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
556 " pfadd 52(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
557 " pfadd %%mm3, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
558 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
559 " pfadd %%mm3, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
560 " punpckldq %%mm2, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
561 " movq %%mm1, 56(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
562 " movq %%mm0, 48(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
563
nick
parents:
diff changeset
564 /*---*/
nick
parents:
diff changeset
565
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
566 " movd 92(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
567 " pfsub 88(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
568 " pfmul 120(%%"REG_b"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
569 " movd %%mm1, 92(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
570 " pfadd 92(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
571 " pfadd 88(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
572 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
573
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
574 " pfadd 80(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
575 " pfadd 84(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
576 " movd %%mm0, 80(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
577
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
578 " movd 80(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
579 " pfsub 84(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
580 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
581 " pfadd %%mm0, %%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
582 " pfadd 92(%%"REG_d"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
583 " punpckldq %%mm1, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
584 " movq %%mm0, 84(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
585
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
586 " movq 96(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
587 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
588 " pxor %%mm7, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
589 " pfacc %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
590 " pfmul %%mm6, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
591 " movq %%mm0, 96(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
592
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
593 " movd 108(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
594 " pfsub 104(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
595 " pfmul 120(%%"REG_b"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
596 " movd %%mm0, 108(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
597 " pfadd 104(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
598 " pfadd 108(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
599 " movd %%mm0, 104(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
600
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
601 " movd 124(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
602 " pfsub 120(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
603 " pfmul 120(%%"REG_b"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
604 " movd %%mm1, 124(%%"REG_d")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
605 " pfadd 120(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
606 " pfadd 124(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
607 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
608
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
609 " pfadd 112(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
610 " pfadd 116(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
611 " movd %%mm0, 112(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
612
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
613 " movd 112(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
614 " pfsub 116(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
615 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
616 " pfadd %%mm0,%%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
617 " pfadd 124(%%"REG_d"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
618 " punpckldq %%mm1, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
619 " movq %%mm0, 116(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
620
20504
27fb949fffa9 disable nonworking/broken code for now till I find out what it is supposed to do.
reimar
parents: 18941
diff changeset
621 // this code is broken, there is nothing modifying the z flag above.
27fb949fffa9 disable nonworking/broken code for now till I find out what it is supposed to do.
reimar
parents: 18941
diff changeset
622 #if 0
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
623 " jnz .L01\n\t"
4148
nick
parents:
diff changeset
624
nick
parents:
diff changeset
625 /* Phase 7*/
nick
parents:
diff changeset
626 /* Code below is coded in scalar mode. Should be optimized */
nick
parents:
diff changeset
627
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
628 " movd (%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
629 " pfadd 4(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
630 " movd %%mm0, 1024(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
631
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
632 " movd (%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
633 " pfsub 4(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
634 " pfmul 120(%%"REG_b"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
635 " movd %%mm0, (%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
636 " movd %%mm0, (%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
637
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
638 " movd 12(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
639 " pfsub 8(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
640 " pfmul 120(%%"REG_b"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
641 " movd %%mm0, 512(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
642 " pfadd 12(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
643 " pfadd 8(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
644 " movd %%mm0, 512(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
645
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
646 " movd 16(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
647 " pfsub 20(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
648 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
649 " movq %%mm0, %%mm3\n\t"
4148
nick
parents:
diff changeset
650
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
651 " movd 28(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
652 " pfsub 24(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
653 " pfmul 120(%%"REG_b"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
654 " movd %%mm0, 768(%%"REG_D")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
655 " movq %%mm0, %%mm2\n\t"
4148
nick
parents:
diff changeset
656
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
657 " pfadd 24(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
658 " pfadd 28(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
659 " movq %%mm0, %%mm1\n\t"
4148
nick
parents:
diff changeset
660
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
661 " pfadd 16(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
662 " pfadd 20(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
663 " movd %%mm0, 768(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
664 " pfadd %%mm3, %%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
665 " movd %%mm1, 256(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
666 " pfadd %%mm3, %%mm2\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
667 " movd %%mm2, 256(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
668
nick
parents:
diff changeset
669 /* Phase 8*/
nick
parents:
diff changeset
670
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
671 " movq 32(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
672 " movq 48(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
673 " pfadd 48(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
674 " pfadd 40(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
675 " movd %%mm0, 896(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
676 " movd %%mm1, 640(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
677 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
678 " psrlq $32, %%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
679 " movd %%mm0, 128(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
680 " movd %%mm1, 384(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
681
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
682 " movd 40(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
683 " pfadd 56(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
684 " movd %%mm0, 384(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
685
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
686 " movd 56(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
687 " pfadd 36(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
688 " movd %%mm0, 128(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
689
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
690 " movd 60(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
691 " movd %%mm0, 896(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
692 " pfadd 44(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
693 " movd %%mm0, 640(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
694
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
695 " movq 96(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
696 " movq 112(%%"REG_d"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
697 " movq 104(%%"REG_d"), %%mm4\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
698 " pfadd 112(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
699 " pfadd 104(%%"REG_d"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
700 " pfadd 120(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
701 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
702 " movq %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
703 " movq %%mm4, %%mm5\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
704 " pfadd 64(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
705 " pfadd 80(%%"REG_d"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
706 " pfadd 72(%%"REG_d"), %%mm4\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
707 " movd %%mm0, 960(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
708 " movd %%mm2, 704(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
709 " movd %%mm4, 448(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
710 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
711 " psrlq $32, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
712 " psrlq $32, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
713 " movd %%mm0, 64(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
714 " movd %%mm2, 320(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
715 " movd %%mm4, 576(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
716 " pfadd 80(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
717 " pfadd 72(%%"REG_d"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
718 " pfadd 88(%%"REG_d"), %%mm5\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
719 " movd %%mm1, 832(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
720 " movd %%mm3, 576(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
721 " movd %%mm5, 320(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
722 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
723 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
724 " psrlq $32, %%mm5\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
725 " movd %%mm1, 192(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
726 " movd %%mm3, 448(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
727 " movd %%mm5, 704(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
728
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
729 " movd 120(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
730 " pfadd 100(%%"REG_d"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
731 " movq %%mm0, %%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
732 " pfadd 88(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
733 " movd %%mm0, 192(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
734 " pfadd 68(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
735 " movd %%mm1, 64(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
736
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
737 " movd 124(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
738 " movd %%mm0, 960(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
739 " pfadd 92(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
740 " movd %%mm0, 832(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
741
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
742 " jmp .L_bye\n\t"
4148
nick
parents:
diff changeset
743 ".L01:\n\t"
20504
27fb949fffa9 disable nonworking/broken code for now till I find out what it is supposed to do.
reimar
parents: 18941
diff changeset
744 #endif
4148
nick
parents:
diff changeset
745 /* Phase 9*/
nick
parents:
diff changeset
746
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
747 " movq (%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
748 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
749 " pxor %%mm7, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
750 " pfacc %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
751 " pfmul %%mm6, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
752 " pf2id %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
753 " packssdw %%mm0, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
754 " movd %%mm0, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
755 " movw %%ax, 512(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
756 " shr $16, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
757 " movw %%ax, (%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
758
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
759 " movd 12(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
760 " pfsub 8(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
761 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
762 " pf2id %%mm0, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
763 " packssdw %%mm7, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
764 " movd %%mm7, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
765 " movw %%ax, 256(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
766 " pfadd 12(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
767 " pfadd 8(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
768 " pf2id %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
769 " packssdw %%mm0, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
770 " movd %%mm0, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
771 " movw %%ax, 256(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
772
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
773 " movd 16(%%"REG_c"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
774 " pfsub 20(%%"REG_c"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
775 " pfmul 120(%%"REG_b"), %%mm3\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
776 " movq %%mm3, %%mm2\n\t"
4148
nick
parents:
diff changeset
777
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
778 " movd 28(%%"REG_c"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
779 " pfsub 24(%%"REG_c"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
780 " pfmul 120(%%"REG_b"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
781 " movq %%mm2, %%mm1\n\t"
4148
nick
parents:
diff changeset
782
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
783 " pf2id %%mm2, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
784 " packssdw %%mm7, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
785 " movd %%mm7, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
786 " movw %%ax, 384(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
787
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
788 " pfadd 24(%%"REG_c"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
789 " pfadd 28(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
790 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
791
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
792 " pfadd 16(%%"REG_c"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
793 " pfadd 20(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
794 " pf2id %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
795 " packssdw %%mm0, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
796 " movd %%mm0, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
797 " movw %%ax, 384(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
798 " pfadd %%mm3, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
799 " pf2id %%mm1, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
800 " packssdw %%mm1, %%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
801 " movd %%mm1, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
802 " movw %%ax, 128(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
803 " pfadd %%mm3, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
804 " pf2id %%mm2, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
805 " packssdw %%mm2, %%mm2\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
806 " movd %%mm2, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
807 " movw %%ax, 128(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
808
nick
parents:
diff changeset
809 /* Phase 10*/
nick
parents:
diff changeset
810
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
811 " movq 32(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
812 " movq 48(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
813 " pfadd 48(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
814 " pfadd 40(%%"REG_d"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
815 " pf2id %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
816 " pf2id %%mm1, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
817 " packssdw %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
818 " packssdw %%mm1, %%mm1\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
819 " movd %%mm0, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
820 " movd %%mm1, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
821 " movw %%ax, 448(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
822 " movw %%cx, 320(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
823 " shr $16, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
824 " shr $16, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
825 " movw %%ax, 64(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
826 " movw %%cx, 192(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
827
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
828 " movd 40(%%"REG_d"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
829 " movd 56(%%"REG_d"), %%mm4\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
830 " movd 60(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
831 " movd 44(%%"REG_d"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
832 " movd 120(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
833 " punpckldq %%mm4, %%mm3\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
834 " punpckldq 124(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
835 " pfadd 100(%%"REG_d"), %%mm5\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
836 " punpckldq 36(%%"REG_d"), %%mm4\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
837 " punpckldq 92(%%"REG_d"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
838 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
839 " pfadd %%mm4, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
840 " pf2id %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
841 " pf2id %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
842 " packssdw %%mm1, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
843 " packssdw %%mm3, %%mm3\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
844 " pfadd 88(%%"REG_d"), %%mm5\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
845 " movd %%mm1, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
846 " movd %%mm3, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
847 " movw %%ax, 448(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
848 " movw %%cx, 192(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
849 " pf2id %%mm5, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
850 " packssdw %%mm5, %%mm5\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
851 " shr $16, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
852 " shr $16, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
853 " movd %%mm5, %%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
854 " movw %%bx, 96(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
855 " movw %%ax, 480(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
856 " movw %%cx, 64(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
857 " pfadd %%mm2, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
858 " pf2id %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
859 " packssdw %%mm0, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
860 " movd %%mm0, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
861 " pfadd 68(%%"REG_d"), %%mm6\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
862 " movw %%ax, 320(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
863 " shr $16, %%"REG_a"\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
864 " pf2id %%mm6, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
865 " packssdw %%mm6, %%mm6\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
866 " movd %%mm6, %%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
867 " movw %%ax, 416(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
868 " movw %%bx, 32(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
869
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
870 " movq 96(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
871 " movq 112(%%"REG_d"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
872 " movq 104(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
873 " pfadd %%mm2, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
874 " pfadd %%mm4, %%mm2\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
875 " pfadd 120(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
876 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
877 " movq %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
878 " movq %%mm4, %%mm5\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
879 " pfadd 64(%%"REG_d"), %%mm0\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
880 " pfadd 80(%%"REG_d"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
881 " pfadd 72(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
882 " pf2id %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
883 " pf2id %%mm2, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
884 " pf2id %%mm4, %%mm4\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
885 " packssdw %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
886 " packssdw %%mm2, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
887 " packssdw %%mm4, %%mm4\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
888 " movd %%mm0, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
889 " movd %%mm2, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
890 " movd %%mm4, %%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
891 " movw %%ax, 480(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
892 " movw %%cx, 352(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
893 " movw %%bx, 224(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
894 " shr $16, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
895 " shr $16, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
896 " shr $16, %%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
897 " movw %%ax, 32(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
898 " movw %%cx, 160(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
899 " movw %%bx, 288(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
900 " pfadd 80(%%"REG_d"), %%mm1\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
901 " pfadd 72(%%"REG_d"), %%mm3\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
902 " pfadd 88(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
903 " pf2id %%mm1, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
904 " pf2id %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
905 " pf2id %%mm5, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
906 " packssdw %%mm1, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
907 " packssdw %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
908 " packssdw %%mm5, %%mm5\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
909 " movd %%mm1, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
910 " movd %%mm3, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
911 " movd %%mm5, %%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
912 " movw %%ax, 416(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
913 " movw %%cx, 288(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
914 " movw %%bx, 160(%%"REG_S")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
915 " shr $16, %%"REG_a"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
916 " shr $16, %%"REG_c"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
917 " shr $16, %%"REG_b"\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
918 " movw %%ax, 96(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
919 " movw %%cx, 224(%%"REG_D")\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
920 " movw %%bx, 352(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
921
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
922 " movsw\n\t"
4148
nick
parents:
diff changeset
923
nick
parents:
diff changeset
924 ".L_bye:\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
925 " femms\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
926 :
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
927 :"m"(a),"m"(b),"m"(c),"m"(tmp[0])
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
928 :"memory","%eax","%ebx","%ecx","%edx","%esi","%edi");
5842
d6eab895c742 Avoid stdcall on cygwin, it causes undefined ref, code needs testing as I have no athlon or k6-2.
atmos4
parents: 5291
diff changeset
929 }