annotate mp3lib/dct64_k7.c @ 34027:c1a590bb2441

Update entry for FFmpeg in Copyright file after move to single directory.
author diego
date Tue, 20 Sep 2011 19:15:36 +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 3dnowex-DSP! 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: 20504
diff changeset
19 void dct64_MMX_3dnowex(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 " pswapd 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 " pswapd 112(%%"REG_a"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
38 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
39 " 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
40 " 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
41 " movq %%mm4, 8(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
42 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
43 " 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
44 " 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
45 " pfmul 8(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
46 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
47 " pswapd %%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
48 " movq %%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
49 " movq %%mm7, 112(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
50
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
51 " 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
52 " movq 24(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
53 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
54 " 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
55 " pswapd 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
56 " pswapd 96(%%"REG_a"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
57 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
58 " 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
59 " 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
60 " movq %%mm4, 24(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
61 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
62 " 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
63 " 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
64 " pfmul 24(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
65 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
66 " pswapd %%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
67 " movq %%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
68 " movq %%mm7, 96(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
69
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
70 " 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
71 " movq 40(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
72 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
73 " 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
74 " pswapd 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
75 " pswapd 80(%%"REG_a"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
76 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
77 " 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
78 " 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
79 " movq %%mm4, 40(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
80 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
81 " 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
82 " 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
83 " pfmul 40(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
84 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
85 " pswapd %%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
86 " movq %%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
87 " movq %%mm7, 80(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
88
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
89 " 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
90 " movq 56(%%"REG_a"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
91 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
92 " 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
93 " pswapd 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
94 " pswapd 64(%%"REG_a"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
95 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
96 " 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
97 " 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
98 " movq %%mm4, 56(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
99 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
100 " 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
101 " 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
102 " pfmul 56(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
103 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
104 " pswapd %%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
105 " movq %%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
106 " movq %%mm7, 64(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
107
nick
parents:
diff changeset
108 /* Phase 2*/
nick
parents:
diff changeset
109
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
110 " 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
111 " movq 8(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
112 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
113 " 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
114 " pswapd 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
115 " pswapd 48(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
116 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
117 " 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
118 " 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
119 " movq %%mm4, 8(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
120 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
121 " 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
122 " 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
123 " pfmul 72(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
124 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
125 " pswapd %%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
126 " movq %%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
127 " movq %%mm7, 48(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
128
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
129 " 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
130 " movq 24(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
131 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
132 " 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
133 " pswapd 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
134 " pswapd 32(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
135 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
136 " 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
137 " 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
138 " movq %%mm4, 24(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
139 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
140 " 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
141 " 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
142 " pfmul 88(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
143 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
144 " pswapd %%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
145 " movq %%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
146 " movq %%mm7, 32(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
147
nick
parents:
diff changeset
148 /* Phase 3*/
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 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
151 " movq 72(%%"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 " pswapd 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
155 " pswapd 112(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
156 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
157 " 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
158 " 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
159 " movq %%mm4, 72(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
160 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
161 " 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
162 " 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
163 " pfmul 72(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
164 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
165 " pswapd %%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
166 " movq %%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
167 " movq %%mm7, 112(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
168
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
169 " 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
170 " movq 88(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
171 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
172 " 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
173 " pswapd 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
174 " pswapd 96(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
175 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
176 " 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
177 " 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
178 " movq %%mm4, 88(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
179 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
180 " 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
181 " 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
182 " pfmul 88(%%"REG_b"), %%mm7\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
183 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
184 " pswapd %%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
185 " movq %%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
186 " movq %%mm7, 96(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
187
nick
parents:
diff changeset
188 /* Phase 4*/
nick
parents:
diff changeset
189
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
190 " movq 96(%%"REG_b"), %%mm2\n\t"
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
191 " movq 104(%%"REG_b"), %%mm6\n\t"
4148
nick
parents:
diff changeset
192
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
193 " 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
194 " movq 8(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
195 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
196 " 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
197 " pswapd 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
198 " pswapd 16(%%"REG_c"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
199 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
200 " 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
201 " 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
202 " movq %%mm4, 8(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
203 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
204 " pfsub %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
205 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
206 " pfmul %%mm6, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
207 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
208 " pswapd %%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
209 " movq %%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
210 " movq %%mm7, 16(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
211
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
212 " 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
213 " movq 40(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
214 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
215 " 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
216 " pswapd 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
217 " pswapd 48(%%"REG_c"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
218 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
219 " 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
220 " 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
221 " movq %%mm4, 40(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
222 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
223 " pfsubr %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
224 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
225 " pfmul %%mm6, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
226 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
227 " pswapd %%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
228 " movq %%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
229 " movq %%mm7, 48(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
230
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
231 " 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
232 " movq 72(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
233 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
234 " 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
235 " pswapd 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
236 " pswapd 80(%%"REG_c"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
237 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
238 " 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
239 " 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
240 " movq %%mm4, 72(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
241 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
242 " pfsub %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
243 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
244 " pfmul %%mm6, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
245 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
246 " pswapd %%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
247 " movq %%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
248 " movq %%mm7, 80(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
249
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
250 " 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
251 " movq 104(%%"REG_c"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
252 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
253 " 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
254 " pswapd 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
255 " pswapd 112(%%"REG_c"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
256 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
257 " 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
258 " 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
259 " movq %%mm4, 104(%%"REG_d")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
260 " pfsubr %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
261 " pfsubr %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
262 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
263 " pfmul %%mm6, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
264 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
265 " pswapd %%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
266 " movq %%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
267 " movq %%mm7, 112(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
268
nick
parents:
diff changeset
269 /* Phase 5 */
nick
parents:
diff changeset
270
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
271 " movq 112(%%"REG_b"), %%mm2\n\t"
4148
nick
parents:
diff changeset
272
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
273 " 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
274 " movq 16(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
275 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
276 " 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
277 " pswapd 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
278 " pswapd 24(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
279 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
280 " 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
281 " 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
282 " movq %%mm4, 16(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
283 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
284 " pfsubr %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
285 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
286 " pfmul %%mm2, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
287 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
288 " pswapd %%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
289 " movq %%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
290 " movq %%mm7, 24(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
291
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
292 " 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
293 " movq 48(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
294 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
295 " 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
296 " pswapd 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
297 " pswapd 56(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
298 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
299 " 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
300 " 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
301 " movq %%mm4, 48(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
302 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
303 " pfsubr %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
304 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
305 " pfmul %%mm2, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
306 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
307 " pswapd %%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
308 " movq %%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
309 " movq %%mm7, 56(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
310
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
311 " 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
312 " movq 80(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
313 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
314 " 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
315 " pswapd 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
316 " pswapd 88(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
317 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
318 " 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
319 " 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
320 " movq %%mm4, 80(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
321 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
322 " pfsubr %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
323 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
324 " pfmul %%mm2, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
325 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
326 " pswapd %%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
327 " movq %%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
328 " movq %%mm7, 88(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
329
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
330 " 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
331 " movq 112(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
332 " movq %%mm0, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
333 " 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
334 " pswapd 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
335 " pswapd 120(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
336 " pfadd %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
337 " 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
338 " 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
339 " movq %%mm4, 112(%%"REG_c")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
340 " pfsub %%mm1, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
341 " pfsubr %%mm5, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
342 " pfmul %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
343 " pfmul %%mm2, %%mm7\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
344 " pswapd %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
345 " pswapd %%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
346 " movq %%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
347 " movq %%mm7, 120(%%"REG_c")\n\t"
4148
nick
parents:
diff changeset
348
nick
parents:
diff changeset
349
nick
parents:
diff changeset
350 /* Phase 6. This is the end of easy road. */
nick
parents:
diff changeset
351 /* Code below is coded in scalar mode. Should be optimized */
nick
parents:
diff changeset
352
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
353 " 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
354 " 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
355 " movq "MANGLE(x_plus_minus_3dnow)", %%mm7\n\t" /* mm7 = +1 | -1 */
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 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
358 " movq 64(%%"REG_c"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
359 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
360 " movq %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
361 " pxor %%mm7, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
362 " pxor %%mm7, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
363 " pfacc %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
364 " pfacc %%mm3, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
365 " pfmul %%mm6, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
366 " 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
367 " 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
368 " movq %%mm2, 64(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
369
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
370 " 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
371 " 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
372 " 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
373 " 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
374 " punpckldq 72(%%"REG_c"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
375 " punpckldq %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
376 " movq %%mm0, %%mm4\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
377 " movq %%mm2, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
378 " pfsub %%mm2, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
379 " pfmul %%mm3, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
380 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
381 " pfadd %%mm5, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
382 " pfadd %%mm4, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
383 " movq %%mm0, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
384 " punpckldq %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
385 " 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
386 " 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
387 " movq %%mm2, 72(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
388
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
389 " 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
390 " 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
391 " 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
392 " 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
393 " 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
394 " pfmul 120(%%"REG_b"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
395 " movq %%mm2, %%mm1\n\t"
4148
nick
parents:
diff changeset
396
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
397 " 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
398 " pfadd 60(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
399 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
400
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
401 " 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
402 " pfadd 52(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
403 " pfadd %%mm3, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
404 " punpckldq %%mm2, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
405 " pfadd %%mm3, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
406 " 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
407 " 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
408 " movq %%mm0, 48(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
409
nick
parents:
diff changeset
410 /*---*/
nick
parents:
diff changeset
411
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
412 " 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
413 " 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
414 " 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
415 " 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
416 " 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
417 " pfadd 88(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
418 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
419
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
420 " 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
421 " 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
422 " movd %%mm0, 80(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
423
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
424 " 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
425 " 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
426 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
427 " 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
428 " pfadd 92(%%"REG_d"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
429 " 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
430 " movq %%mm0, 84(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
431
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
432 " movq 96(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
433 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
434 " pxor %%mm7, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
435 " pfacc %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
436 " 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
437 " movq %%mm0, 96(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
438
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
439 " 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
440 " 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
441 " 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
442 " 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
443 " 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
444 " 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
445 " movd %%mm0, 104(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
446
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
447 " 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
448 " 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
449 " 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
450 " 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
451 " 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
452 " pfadd 124(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
453 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
454
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
455 " 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
456 " 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
457 " movd %%mm0, 112(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
458
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
459 " 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
460 " 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
461 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
462 " 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
463 " pfadd 124(%%"REG_d"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
464 " 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
465 " movq %%mm0, 116(%%"REG_d")\n\t"
4148
nick
parents:
diff changeset
466
20504
27fb949fffa9 disable nonworking/broken code for now till I find out what it is supposed to do.
reimar
parents: 18834
diff changeset
467 // 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: 18834
diff changeset
468 #if 0
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
469 " jnz .L01\n\t"
4148
nick
parents:
diff changeset
470
nick
parents:
diff changeset
471 /* Phase 7*/
nick
parents:
diff changeset
472 /* Code below is coded in scalar mode. Should be optimized */
nick
parents:
diff changeset
473
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
474 " 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
475 " 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
476 " movd %%mm0, 1024(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
477
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
478 " 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
479 " 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
480 " 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
481 " 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
482 " movd %%mm0, (%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
483
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
484 " 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
485 " 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
486 " 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
487 " 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
488 " 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
489 " 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
490 " movd %%mm0, 512(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
491
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
492 " 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
493 " 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
494 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
495 " movq %%mm0, %%mm3\n\t"
4148
nick
parents:
diff changeset
496
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
497 " 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
498 " 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
499 " 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
500 " movd %%mm0, 768(%%"REG_D")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
501 " movq %%mm0, %%mm2\n\t"
4148
nick
parents:
diff changeset
502
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
503 " 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
504 " pfadd 28(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
505 " movq %%mm0, %%mm1\n\t"
4148
nick
parents:
diff changeset
506
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
507 " 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
508 " 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
509 " movd %%mm0, 768(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
510 " 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
511 " movd %%mm1, 256(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
512 " 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
513 " movd %%mm2, 256(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
514
nick
parents:
diff changeset
515 /* Phase 8*/
nick
parents:
diff changeset
516
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
517 " 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
518 " 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
519 " 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
520 " 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
521 " 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
522 " movd %%mm1, 640(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
523 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
524 " 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
525 " 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
526 " movd %%mm1, 384(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
527
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
528 " 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
529 " 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
530 " movd %%mm0, 384(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
531
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
532 " 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
533 " 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
534 " movd %%mm0, 128(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
535
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
536 " 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
537 " 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
538 " 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
539 " movd %%mm0, 640(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
540
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
541 " 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
542 " 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
543 " 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
544 " 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
545 " 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
546 " pfadd 120(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
547 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
548 " movq %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
549 " 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
550 " 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
551 " 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
552 " 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
553 " 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
554 " 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
555 " movd %%mm4, 448(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
556 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
557 " psrlq $32, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
558 " 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
559 " 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
560 " 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
561 " 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
562 " 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
563 " 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
564 " 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
565 " 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
566 " 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
567 " movd %%mm5, 320(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
568 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
569 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
570 " 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
571 " 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
572 " 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
573 " movd %%mm5, 704(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
574
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
575 " 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
576 " pfadd 100(%%"REG_d"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
577 " 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
578 " 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
579 " 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
580 " 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
581 " movd %%mm1, 64(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
582
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
583 " 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
584 " 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
585 " 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
586 " movd %%mm0, 832(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
587
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
588 " jmp .L_bye\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
589 ".L01: \n\t"
20504
27fb949fffa9 disable nonworking/broken code for now till I find out what it is supposed to do.
reimar
parents: 18834
diff changeset
590 #endif
4148
nick
parents:
diff changeset
591 /* Phase 9*/
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 " movq (%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
594 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
595 " pxor %%mm7, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
596 " pfacc %%mm1, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
597 " pfmul %%mm6, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
598 " pf2iw %%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
599 " 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
600 " movw %%ax, 512(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
601 " psrlq $32, %%mm0\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
602 " 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
603 " movw %%ax, (%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
604
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
605 " 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
606 " 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
607 " pfmul 120(%%"REG_b"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
608 " pf2iw %%mm0, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
609 " 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
610 " 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
611 " 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
612 " pfadd 8(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
613 " pf2iw %%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
614 " 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
615 " movw %%ax, 256(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
616
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
617 " 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
618 " 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
619 " pfmul 120(%%"REG_b"), %%mm3\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
620 " movq %%mm3, %%mm2\n\t"
4148
nick
parents:
diff changeset
621
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
622 " 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
623 " 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
624 " pfmul 120(%%"REG_b"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
625 " movq %%mm2, %%mm1\n\t"
4148
nick
parents:
diff changeset
626
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
627 " pf2iw %%mm2, %%mm7\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
628 " 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
629 " movw %%ax, 384(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
630
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
631 " 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
632 " pfadd 28(%%"REG_c"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
633 " movq %%mm1, %%mm0\n\t"
4148
nick
parents:
diff changeset
634
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
635 " 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
636 " pfadd 20(%%"REG_c"), %%mm0\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
637 " pf2iw %%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
638 " 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
639 " movw %%ax, 384(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
640 " pfadd %%mm3, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
641 " pf2iw %%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
642 " 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
643 " movw %%ax, 128(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
644 " pfadd %%mm3, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
645 " pf2iw %%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
646 " 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
647 " movw %%ax, 128(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
648
nick
parents:
diff changeset
649 /* Phase 10*/
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 " 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
652 " 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
653 " 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
654 " pfadd 40(%%"REG_d"), %%mm1\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
655 " pf2iw %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
656 " pf2iw %%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
657 " 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
658 " 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
659 " 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
660 " movw %%cx, 320(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
661 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
662 " 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
663 " 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
664 " 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
665 " 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
666 " movw %%cx, 192(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
667
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
668 " 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
669 " 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
670 " 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
671 " 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
672 " movd 120(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
673 " 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
674 " 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
675 " 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
676 " 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
677 " punpckldq 92(%%"REG_d"), %%mm2\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
678 " movq %%mm5, %%mm6\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
679 " pfadd %%mm4, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
680 " pf2iw %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
681 " pf2iw %%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
682 " 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
683 " 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
684 " 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
685 " 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
686 " movw %%cx, 192(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
687 " pf2iw %%mm5, %%mm5\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
688 " psrlq $32, %%mm1\n\t"
4148
nick
parents:
diff changeset
689 " psrlq $32, %%mm3\n\t"
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
690 " 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
691 " 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
692 " 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
693 " 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
694 " 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
695 " movw %%cx, 64(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
696 " pfadd %%mm2, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
697 " pf2iw %%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
698 " 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
699 " 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
700 " movw %%ax, 320(%%"REG_D")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
701 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
702 " pf2iw %%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
703 " 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
704 " 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
705 " 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
706 " movw %%bx, 32(%%"REG_S")\n\t"
4148
nick
parents:
diff changeset
707
31215
d0f70692a140 Make 3dnow and MMX code compile for 64 bit (just stupid search-and-replace).
reimar
parents: 30990
diff changeset
708 " 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
709 " 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
710 " movq 104(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
711 " pfadd %%mm2, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
712 " 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
713 " pfadd 120(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
714 " movq %%mm0, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
715 " movq %%mm2, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
716 " 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
717 " 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
718 " 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
719 " pfadd 72(%%"REG_d"), %%mm4\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
720 " pf2iw %%mm0, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
721 " pf2iw %%mm2, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
722 " pf2iw %%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
723 " 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
724 " 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
725 " 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
726 " 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
727 " 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
728 " movw %%bx, 224(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
729 " psrlq $32, %%mm0\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
730 " psrlq $32, %%mm2\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
731 " 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
732 " 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
733 " 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
734 " 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
735 " 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
736 " 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
737 " 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
738 " 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
739 " 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
740 " pfadd 88(%%"REG_d"), %%mm5\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
741 " pf2iw %%mm1, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
742 " pf2iw %%mm3, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
743 " pf2iw %%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
744 " 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
745 " 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
746 " 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
747 " 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
748 " 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
749 " movw %%bx, 160(%%"REG_S")\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
750 " psrlq $32, %%mm1\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
751 " psrlq $32, %%mm3\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
752 " 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
753 " 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
754 " 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
755 " 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
756 " 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
757 " 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
758 " movw %%bx, 352(%%"REG_D")\n\t"
4148
nick
parents:
diff changeset
759
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
760 " movsw\n\t"
4148
nick
parents:
diff changeset
761
nick
parents:
diff changeset
762 ".L_bye:\n\t"
30990
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
763 " femms\n\t"
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
764 :
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
765 :"m"(a),"m"(b),"m"(c),"m"(tmp[0])
0ad2da052b2e the great MPlayer tab removal: part I
diego
parents: 30167
diff changeset
766 :"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
767 }