2
* Copyright (c) 2003, 2006 Matteo Frigo
3
* Copyright (c) 2003, 2006 Massachusetts Institute of Technology
5
* This program is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
15
* You should have received a copy of the GNU General Public License
16
* along with this program; if not, write to the Free Software
17
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21
/* This file was automatically generated --- DO NOT EDIT */
22
/* Generated on Sat Jul 1 22:40:37 EDT 2006 */
28
/* cheap-mode: VECTGRADE_FULL succeeded. (97 steps) */
29
/* Generated by: ../../../genfft-k7/gen_notw -no-randomized-cse -n 9 -name n1k7_9 */
33
* $Id: algsimp.ml,v 1.4 2006-01-05 03:04:27 stevenj Exp $
34
* $Id: fft.ml,v 1.4 2006-01-05 03:04:27 stevenj Exp $
35
* $Id: gen_notw.ml,v 1.12 2006-01-05 03:04:27 stevenj Exp $
38
/* CHImovopt_applicable: new! */
39
/* CHImovopt_applicable: new! */
40
/* The following asm code is Copyright (c) 2000-2001 Stefan Kral */
43
KP866025403KN866025403: .float +0.866025403784438646763723170752936183471402627, -0.866025403784438646763723170752936183471402627
44
KP500000000KP500000000: .float +0.500000000000000000000000000000000000000000000, +0.500000000000000000000000000000000000000000000
45
KP173648177KP984807753: .float +0.173648177666930348851716626769314796000375677, +0.984807753012208059366743024589523013670643252
46
KP766044443KP642787609: .float +0.766044443118978035202392650555416673935832457, +0.642787609686539326322643409907263432907559884
47
KP939692620KP342020143: .float +0.939692620785908384054109277324731469936208134, +0.342020143325668733044099614682259580763083368
48
KP342020143KP939692620: .float +0.342020143325668733044099614682259580763083368, +0.939692620785908384054109277324731469936208134
49
KP866025403KP866025403: .float +0.866025403784438646763723170752936183471402627, +0.866025403784438646763723170752936183471402627
70
/* promise simd cell size = 8 */
71
leal (%edx,%edx,2), %esi
72
leal (%edx,%edx,4), %edi
73
movq (%eax,%edx,8), %mm3
75
movq (%eax,%esi,2), %mm0
76
movq (%eax,%esi), %mm1
77
leal (%edi,%edx,2), %ebp
78
movq (%eax,%edi), %mm4
79
leal (%ebx,%ebx,2), %esi
81
leal (%esi,%ebx,4), %edi
88
movq (%eax,%edx,2), %mm3
91
pfmul KP866025403KN866025403, %mm1
93
pfmul KP500000000KP500000000, %mm2
95
pfmul KP500000000KP500000000, %mm0
96
pfmul KP866025403KN866025403, %mm5
100
movq (%eax,%ebp), %mm4
101
leal (%ebx,%ebx,4), %ebp
103
movq (%eax,%edx,4), %mm1
107
movq (%eax,%edx), %mm0
108
/* simd data load/store barrier */
118
pfmul KP500000000KP500000000, %mm1
122
pfmul KP173648177KP984807753, %mm6
123
pfmul KP866025403KN866025403, %mm2
124
pfmul KP173648177KP984807753, %mm4
131
pfmul KP766044443KP642787609, %mm0
132
pfmul KP766044443KP642787609, %mm1
134
pfmul KP173648177KP984807753, %mm5
135
pfmul KP173648177KP984807753, %mm2
138
pfmul KP939692620KP342020143, %mm3
139
pfmul KP342020143KP939692620, %mm6
151
pfmul KP500000000KP500000000, %mm3
152
pfmul KP866025403KN866025403, %mm7
162
pfmul KP500000000KP500000000, %mm5
165
pfmul KP866025403KP866025403, %mm1
166
movq %mm4, (%ecx,%esi,2)
168
movq %mm3, (%ecx,%esi)
179
movq %mm7, (%ecx,%ebx)
183
pfmul KP500000000KP500000000, %mm2
185
pfmul KP866025403KP866025403, %mm6
188
movq %mm0, (%ecx,%ebx,2)
189
movq %mm4, (%ecx,%edi)
191
movq %mm5, (%ecx,%ebx,4)
195
movq %mm3, (%ecx,%ebp)
196
movq %mm7, (%ecx,%ebx,8)
219
.long fftwf_kdft_k7_mgenus
227
.globl fftwf_codelet_n1k7_9
228
fftwf_codelet_n1k7_9:
234
call fftwf_kdft_register