1 /*
2 * Copyright (c) 1997-1999, 2003 Massachusetts Institute of Technology
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 *
18 */
19
20 /* This file was automatically generated --- DO NOT EDIT */
21 /* Generated on Mon Mar 24 02:07:28 EST 2003 */
22
23 #include "fftw-int.h"
24 #include "fftw.h"
25
26 /* Generated by: /homee/stevenj/cvs/fftw/gensrc/genfft -magic-alignment-check -magic-twiddle-load-all -magic-variables 4 -magic-loopi -hc2real 128 */
27
28 /*
29 * This function contains 956 FP additions, 374 FP multiplications,
30 * (or, 812 additions, 230 multiplications, 144 fused multiply/add),
31 * 176 stack variables, and 256 memory accesses
32 */
33 static const fftw_real K195090322 =
34 FFTW_KONST(+0.195090322016128267848284868477022240927691618);
35 static const fftw_real K980785280 =
36 FFTW_KONST(+0.980785280403230449126182236134239036973933731);
37 static const fftw_real K555570233 =
38 FFTW_KONST(+0.555570233019602224742830813948532874374937191);
39 static const fftw_real K831469612 =
40 FFTW_KONST(+0.831469612302545237078788377617905756738560812);
41 static const fftw_real K995184726 =
42 FFTW_KONST(+0.995184726672196886244836953109479921575474869);
43 static const fftw_real K098017140 =
44 FFTW_KONST(+0.098017140329560601994195563888641845861136673);
45 static const fftw_real K471396736 =
46 FFTW_KONST(+0.471396736825997648556387625905254377657460319);
47 static const fftw_real K881921264 =
48 FFTW_KONST(+0.881921264348355029712756863660388349508442621);
49 static const fftw_real K803207531 =
50 FFTW_KONST(+0.803207531480644909806676512963141923879569427);
51 static const fftw_real K595699304 =
52 FFTW_KONST(+0.595699304492433343467036528829969889511926338);
53 static const fftw_real K989176509 =
54 FFTW_KONST(+0.989176509964780973451673738016243063983689533);
55 static const fftw_real K146730474 =
56 FFTW_KONST(+0.146730474455361751658850129646717819706215317);
57 static const fftw_real K773010453 =
58 FFTW_KONST(+0.773010453362736960810906609758469800971041293);
59 static const fftw_real K634393284 =
60 FFTW_KONST(+0.634393284163645498215171613225493370675687095);
61 static const fftw_real K290284677 =
62 FFTW_KONST(+0.290284677254462367636192375817395274691476278);
63 static const fftw_real K956940335 =
64 FFTW_KONST(+0.956940335732208864935797886980269969482849206);
65 static const fftw_real K336889853 =
66 FFTW_KONST(+0.336889853392220050689253212619147570477766780);
67 static const fftw_real K941544065 =
68 FFTW_KONST(+0.941544065183020778412509402599502357185589796);
69 static const fftw_real K903989293 =
70 FFTW_KONST(+0.903989293123443331586200297230537048710132025);
71 static const fftw_real K427555093 =
72 FFTW_KONST(+0.427555093430282094320966856888798534304578629);
73 static const fftw_real K998795456 =
74 FFTW_KONST(+0.998795456205172392714771604759100694443203615);
75 static const fftw_real K049067674 =
76 FFTW_KONST(+0.049067674327418014254954976942682658314745363);
77 static const fftw_real K671558954 =
78 FFTW_KONST(+0.671558954847018400625376850427421803228750632);
79 static const fftw_real K740951125 =
80 FFTW_KONST(+0.740951125354959091175616897495162729728955309);
81 static const fftw_real K242980179 =
82 FFTW_KONST(+0.242980179903263889948274162077471118320990783);
83 static const fftw_real K970031253 =
84 FFTW_KONST(+0.970031253194543992603984207286100251456865962);
85 static const fftw_real K514102744 =
86 FFTW_KONST(+0.514102744193221726593693838968815772608049120);
87 static const fftw_real K857728610 =
88 FFTW_KONST(+0.857728610000272069902269984284770137042490799);
89 static const fftw_real K765366864 =
90 FFTW_KONST(+0.765366864730179543456919968060797733522689125);
91 static const fftw_real K1_847759065 =
92 FFTW_KONST(+1.847759065022573512256366378793576573644833252);
93 static const fftw_real K1_414213562 =
94 FFTW_KONST(+1.414213562373095048801688724209698078569671875);
95 static const fftw_real K2_000000000 =
96 FFTW_KONST(+2.000000000000000000000000000000000000000000000);
97
98 /*
99 * Generator Id's :
100 * $Id: exprdag.ml,v 1.43 2003/03/16 23:43:46 stevenj Exp $
101 * $Id: fft.ml,v 1.44 2003/03/16 23:43:46 stevenj Exp $
102 * $Id: to_c.ml,v 1.26 2003/03/16 23:43:46 stevenj Exp $
103 */
104
fftw_hc2real_128(const fftw_real * real_input,const fftw_real * imag_input,fftw_real * output,int real_istride,int imag_istride,int ostride)105 void fftw_hc2real_128(const fftw_real *real_input,
106 const fftw_real *imag_input, fftw_real *output,
107 int real_istride, int imag_istride, int ostride)
108 {
109 fftw_real tmp10;
110 fftw_real tmp454;
111 fftw_real tmp134;
112 fftw_real tmp326;
113 fftw_real tmp582;
114 fftw_real tmp715;
115 fftw_real tmp785;
116 fftw_real tmp901;
117 fftw_real tmp17;
118 fftw_real tmp143;
119 fftw_real tmp327;
120 fftw_real tmp455;
121 fftw_real tmp574;
122 fftw_real tmp716;
123 fftw_real tmp782;
124 fftw_real tmp902;
125 fftw_real tmp112;
126 fftw_real tmp478;
127 fftw_real tmp507;
128 fftw_real tmp411;
129 fftw_real tmp646;
130 fftw_real tmp731;
131 fftw_real tmp662;
132 fftw_real tmp728;
133 fftw_real tmp848;
134 fftw_real tmp917;
135 fftw_real tmp832;
136 fftw_real tmp914;
137 fftw_real tmp825;
138 fftw_real tmp916;
139 fftw_real tmp845;
140 fftw_real tmp913;
141 fftw_real tmp127;
142 fftw_real tmp481;
143 fftw_real tmp506;
144 fftw_real tmp408;
145 fftw_real tmp262;
146 fftw_real tmp288;
147 fftw_real tmp350;
148 fftw_real tmp360;
149 fftw_real tmp659;
150 fftw_real tmp730;
151 fftw_real tmp631;
152 fftw_real tmp727;
153 fftw_real tmp281;
154 fftw_real tmp289;
155 fftw_real tmp353;
156 fftw_real tmp361;
157 fftw_real tmp33;
158 fftw_real tmp457;
159 fftw_real tmp153;
160 fftw_real tmp329;
161 fftw_real tmp431;
162 fftw_real tmp458;
163 fftw_real tmp162;
164 fftw_real tmp330;
165 fftw_real tmp559;
166 fftw_real tmp566;
167 fftw_real tmp712;
168 fftw_real tmp683;
169 fftw_real tmp684;
170 fftw_real tmp713;
171 fftw_real tmp775;
172 fftw_real tmp778;
173 fftw_real tmp898;
174 fftw_real tmp865;
175 fftw_real tmp866;
176 fftw_real tmp899;
177 fftw_real tmp49;
178 fftw_real tmp461;
179 fftw_real tmp668;
180 fftw_real tmp708;
181 fftw_real tmp854;
182 fftw_real tmp894;
183 fftw_real tmp794;
184 fftw_real tmp891;
185 fftw_real tmp536;
186 fftw_real tmp705;
187 fftw_real tmp335;
188 fftw_real tmp365;
189 fftw_real tmp183;
190 fftw_real tmp293;
191 fftw_real tmp417;
192 fftw_real tmp465;
193 fftw_real tmp64;
194 fftw_real tmp464;
195 fftw_real tmp671;
196 fftw_real tmp706;
197 fftw_real tmp857;
198 fftw_real tmp892;
199 fftw_real tmp801;
200 fftw_real tmp895;
201 fftw_real tmp551;
202 fftw_real tmp709;
203 fftw_real tmp338;
204 fftw_real tmp366;
205 fftw_real tmp202;
206 fftw_real tmp294;
207 fftw_real tmp420;
208 fftw_real tmp462;
209 fftw_real tmp81;
210 fftw_real tmp471;
211 fftw_real tmp503;
212 fftw_real tmp404;
213 fftw_real tmp615;
214 fftw_real tmp724;
215 fftw_real tmp655;
216 fftw_real tmp721;
217 fftw_real tmp841;
218 fftw_real tmp910;
219 fftw_real tmp817;
220 fftw_real tmp907;
221 fftw_real tmp810;
222 fftw_real tmp909;
223 fftw_real tmp838;
224 fftw_real tmp906;
225 fftw_real tmp96;
226 fftw_real tmp474;
227 fftw_real tmp504;
228 fftw_real tmp401;
229 fftw_real tmp223;
230 fftw_real tmp285;
231 fftw_real tmp343;
232 fftw_real tmp357;
233 fftw_real tmp652;
234 fftw_real tmp723;
235 fftw_real tmp600;
236 fftw_real tmp720;
237 fftw_real tmp242;
238 fftw_real tmp286;
239 fftw_real tmp346;
240 fftw_real tmp358;
241 ASSERT_ALIGNED_DOUBLE;
242 {
243 fftw_real tmp5;
244 fftw_real tmp580;
245 fftw_real tmp3;
246 fftw_real tmp578;
247 fftw_real tmp9;
248 fftw_real tmp575;
249 fftw_real tmp133;
250 fftw_real tmp576;
251 fftw_real tmp6;
252 fftw_real tmp130;
253 ASSERT_ALIGNED_DOUBLE;
254 {
255 fftw_real tmp4;
256 fftw_real tmp579;
257 fftw_real tmp1;
258 fftw_real tmp2;
259 ASSERT_ALIGNED_DOUBLE;
260 tmp4 = real_input[32 * real_istride];
261 tmp5 = K2_000000000 * tmp4;
262 tmp579 = imag_input[32 * imag_istride];
263 tmp580 = K2_000000000 * tmp579;
264 tmp1 = real_input[0];
265 tmp2 = real_input[64 * real_istride];
266 tmp3 = tmp1 + tmp2;
267 tmp578 = tmp1 - tmp2;
268 {
269 fftw_real tmp7;
270 fftw_real tmp8;
271 fftw_real tmp131;
272 fftw_real tmp132;
273 ASSERT_ALIGNED_DOUBLE;
274 tmp7 = real_input[16 * real_istride];
275 tmp8 = real_input[48 * real_istride];
276 tmp9 = K2_000000000 * (tmp7 + tmp8);
277 tmp575 = tmp7 - tmp8;
278 tmp131 = imag_input[16 * imag_istride];
279 tmp132 = imag_input[48 * imag_istride];
280 tmp133 = K2_000000000 * (tmp131 - tmp132);
281 tmp576 = tmp131 + tmp132;
282 }
283 }
284 tmp6 = tmp3 + tmp5;
285 tmp10 = tmp6 + tmp9;
286 tmp454 = tmp6 - tmp9;
287 tmp130 = tmp3 - tmp5;
288 tmp134 = tmp130 - tmp133;
289 tmp326 = tmp130 + tmp133;
290 {
291 fftw_real tmp577;
292 fftw_real tmp581;
293 fftw_real tmp783;
294 fftw_real tmp784;
295 ASSERT_ALIGNED_DOUBLE;
296 tmp577 = K1_414213562 * (tmp575 - tmp576);
297 tmp581 = tmp578 - tmp580;
298 tmp582 = tmp577 + tmp581;
299 tmp715 = tmp581 - tmp577;
300 tmp783 = tmp578 + tmp580;
301 tmp784 = K1_414213562 * (tmp575 + tmp576);
302 tmp785 = tmp783 - tmp784;
303 tmp901 = tmp784 + tmp783;
304 }
305 }
306 {
307 fftw_real tmp13;
308 fftw_real tmp568;
309 fftw_real tmp141;
310 fftw_real tmp572;
311 fftw_real tmp16;
312 fftw_real tmp571;
313 fftw_real tmp138;
314 fftw_real tmp569;
315 fftw_real tmp135;
316 fftw_real tmp142;
317 ASSERT_ALIGNED_DOUBLE;
318 {
319 fftw_real tmp11;
320 fftw_real tmp12;
321 fftw_real tmp139;
322 fftw_real tmp140;
323 ASSERT_ALIGNED_DOUBLE;
324 tmp11 = real_input[8 * real_istride];
325 tmp12 = real_input[56 * real_istride];
326 tmp13 = tmp11 + tmp12;
327 tmp568 = tmp11 - tmp12;
328 tmp139 = imag_input[8 * imag_istride];
329 tmp140 = imag_input[56 * imag_istride];
330 tmp141 = tmp139 - tmp140;
331 tmp572 = tmp139 + tmp140;
332 }
333 {
334 fftw_real tmp14;
335 fftw_real tmp15;
336 fftw_real tmp136;
337 fftw_real tmp137;
338 ASSERT_ALIGNED_DOUBLE;
339 tmp14 = real_input[24 * real_istride];
340 tmp15 = real_input[40 * real_istride];
341 tmp16 = tmp14 + tmp15;
342 tmp571 = tmp15 - tmp14;
343 tmp136 = imag_input[24 * imag_istride];
344 tmp137 = imag_input[40 * imag_istride];
345 tmp138 = tmp136 - tmp137;
346 tmp569 = tmp136 + tmp137;
347 }
348 tmp17 = K2_000000000 * (tmp13 + tmp16);
349 tmp135 = tmp13 - tmp16;
350 tmp142 = tmp138 + tmp141;
351 tmp143 = K1_414213562 * (tmp135 - tmp142);
352 tmp327 = K1_414213562 * (tmp135 + tmp142);
353 tmp455 = K2_000000000 * (tmp141 - tmp138);
354 {
355 fftw_real tmp570;
356 fftw_real tmp573;
357 fftw_real tmp780;
358 fftw_real tmp781;
359 ASSERT_ALIGNED_DOUBLE;
360 tmp570 = tmp568 - tmp569;
361 tmp573 = tmp571 + tmp572;
362 tmp574 = (K1_847759065 * tmp570) - (K765366864 * tmp573);
363 tmp716 = (K765366864 * tmp570) + (K1_847759065 * tmp573);
364 tmp780 = tmp568 + tmp569;
365 tmp781 = tmp572 - tmp571;
366 tmp782 = (K765366864 * tmp780) - (K1_847759065 * tmp781);
367 tmp902 = (K1_847759065 * tmp780) + (K765366864 * tmp781);
368 }
369 }
370 {
371 fftw_real tmp104;
372 fftw_real tmp244;
373 fftw_real tmp260;
374 fftw_real tmp406;
375 fftw_real tmp626;
376 fftw_real tmp819;
377 fftw_real tmp629;
378 fftw_real tmp820;
379 fftw_real tmp126;
380 fftw_real tmp272;
381 fftw_real tmp270;
382 fftw_real tmp410;
383 fftw_real tmp634;
384 fftw_real tmp829;
385 fftw_real tmp637;
386 fftw_real tmp830;
387 fftw_real tmp111;
388 fftw_real tmp253;
389 fftw_real tmp251;
390 fftw_real tmp407;
391 fftw_real tmp619;
392 fftw_real tmp822;
393 fftw_real tmp622;
394 fftw_real tmp823;
395 fftw_real tmp119;
396 fftw_real tmp263;
397 fftw_real tmp279;
398 fftw_real tmp409;
399 fftw_real tmp641;
400 fftw_real tmp826;
401 fftw_real tmp644;
402 fftw_real tmp827;
403 ASSERT_ALIGNED_DOUBLE;
404 {
405 fftw_real tmp100;
406 fftw_real tmp624;
407 fftw_real tmp259;
408 fftw_real tmp628;
409 fftw_real tmp103;
410 fftw_real tmp627;
411 fftw_real tmp256;
412 fftw_real tmp625;
413 ASSERT_ALIGNED_DOUBLE;
414 {
415 fftw_real tmp98;
416 fftw_real tmp99;
417 fftw_real tmp257;
418 fftw_real tmp258;
419 ASSERT_ALIGNED_DOUBLE;
420 tmp98 = real_input[3 * real_istride];
421 tmp99 = real_input[61 * real_istride];
422 tmp100 = tmp98 + tmp99;
423 tmp624 = tmp98 - tmp99;
424 tmp257 = imag_input[3 * imag_istride];
425 tmp258 = imag_input[61 * imag_istride];
426 tmp259 = tmp257 - tmp258;
427 tmp628 = tmp257 + tmp258;
428 }
429 {
430 fftw_real tmp101;
431 fftw_real tmp102;
432 fftw_real tmp254;
433 fftw_real tmp255;
434 ASSERT_ALIGNED_DOUBLE;
435 tmp101 = real_input[29 * real_istride];
436 tmp102 = real_input[35 * real_istride];
437 tmp103 = tmp101 + tmp102;
438 tmp627 = tmp102 - tmp101;
439 tmp254 = imag_input[29 * imag_istride];
440 tmp255 = imag_input[35 * imag_istride];
441 tmp256 = tmp254 - tmp255;
442 tmp625 = tmp254 + tmp255;
443 }
444 tmp104 = tmp100 + tmp103;
445 tmp244 = tmp100 - tmp103;
446 tmp260 = tmp256 + tmp259;
447 tmp406 = tmp259 - tmp256;
448 tmp626 = tmp624 - tmp625;
449 tmp819 = tmp624 + tmp625;
450 tmp629 = tmp627 + tmp628;
451 tmp820 = tmp628 - tmp627;
452 }
453 {
454 fftw_real tmp122;
455 fftw_real tmp632;
456 fftw_real tmp269;
457 fftw_real tmp636;
458 fftw_real tmp125;
459 fftw_real tmp635;
460 fftw_real tmp266;
461 fftw_real tmp633;
462 ASSERT_ALIGNED_DOUBLE;
463 {
464 fftw_real tmp120;
465 fftw_real tmp121;
466 fftw_real tmp267;
467 fftw_real tmp268;
468 ASSERT_ALIGNED_DOUBLE;
469 tmp120 = real_input[11 * real_istride];
470 tmp121 = real_input[53 * real_istride];
471 tmp122 = tmp120 + tmp121;
472 tmp632 = tmp120 - tmp121;
473 tmp267 = imag_input[11 * imag_istride];
474 tmp268 = imag_input[53 * imag_istride];
475 tmp269 = tmp267 - tmp268;
476 tmp636 = tmp267 + tmp268;
477 }
478 {
479 fftw_real tmp123;
480 fftw_real tmp124;
481 fftw_real tmp264;
482 fftw_real tmp265;
483 ASSERT_ALIGNED_DOUBLE;
484 tmp123 = real_input[21 * real_istride];
485 tmp124 = real_input[43 * real_istride];
486 tmp125 = tmp123 + tmp124;
487 tmp635 = tmp124 - tmp123;
488 tmp264 = imag_input[21 * imag_istride];
489 tmp265 = imag_input[43 * imag_istride];
490 tmp266 = tmp264 - tmp265;
491 tmp633 = tmp264 + tmp265;
492 }
493 tmp126 = tmp122 + tmp125;
494 tmp272 = tmp125 - tmp122;
495 tmp270 = tmp266 + tmp269;
496 tmp410 = tmp269 - tmp266;
497 tmp634 = tmp632 - tmp633;
498 tmp829 = tmp632 + tmp633;
499 tmp637 = tmp635 + tmp636;
500 tmp830 = tmp636 - tmp635;
501 }
502 {
503 fftw_real tmp107;
504 fftw_real tmp617;
505 fftw_real tmp250;
506 fftw_real tmp621;
507 fftw_real tmp110;
508 fftw_real tmp620;
509 fftw_real tmp247;
510 fftw_real tmp618;
511 ASSERT_ALIGNED_DOUBLE;
512 {
513 fftw_real tmp105;
514 fftw_real tmp106;
515 fftw_real tmp248;
516 fftw_real tmp249;
517 ASSERT_ALIGNED_DOUBLE;
518 tmp105 = real_input[13 * real_istride];
519 tmp106 = real_input[51 * real_istride];
520 tmp107 = tmp105 + tmp106;
521 tmp617 = tmp105 - tmp106;
522 tmp248 = imag_input[13 * imag_istride];
523 tmp249 = imag_input[51 * imag_istride];
524 tmp250 = tmp248 - tmp249;
525 tmp621 = tmp248 + tmp249;
526 }
527 {
528 fftw_real tmp108;
529 fftw_real tmp109;
530 fftw_real tmp245;
531 fftw_real tmp246;
532 ASSERT_ALIGNED_DOUBLE;
533 tmp108 = real_input[19 * real_istride];
534 tmp109 = real_input[45 * real_istride];
535 tmp110 = tmp108 + tmp109;
536 tmp620 = tmp109 - tmp108;
537 tmp245 = imag_input[19 * imag_istride];
538 tmp246 = imag_input[45 * imag_istride];
539 tmp247 = tmp245 - tmp246;
540 tmp618 = tmp245 + tmp246;
541 }
542 tmp111 = tmp107 + tmp110;
543 tmp253 = tmp110 - tmp107;
544 tmp251 = tmp247 + tmp250;
545 tmp407 = tmp250 - tmp247;
546 tmp619 = tmp617 - tmp618;
547 tmp822 = tmp617 + tmp618;
548 tmp622 = tmp620 + tmp621;
549 tmp823 = tmp621 - tmp620;
550 }
551 {
552 fftw_real tmp115;
553 fftw_real tmp639;
554 fftw_real tmp278;
555 fftw_real tmp643;
556 fftw_real tmp118;
557 fftw_real tmp642;
558 fftw_real tmp275;
559 fftw_real tmp640;
560 ASSERT_ALIGNED_DOUBLE;
561 {
562 fftw_real tmp113;
563 fftw_real tmp114;
564 fftw_real tmp276;
565 fftw_real tmp277;
566 ASSERT_ALIGNED_DOUBLE;
567 tmp113 = real_input[5 * real_istride];
568 tmp114 = real_input[59 * real_istride];
569 tmp115 = tmp113 + tmp114;
570 tmp639 = tmp113 - tmp114;
571 tmp276 = imag_input[5 * imag_istride];
572 tmp277 = imag_input[59 * imag_istride];
573 tmp278 = tmp276 - tmp277;
574 tmp643 = tmp276 + tmp277;
575 }
576 {
577 fftw_real tmp116;
578 fftw_real tmp117;
579 fftw_real tmp273;
580 fftw_real tmp274;
581 ASSERT_ALIGNED_DOUBLE;
582 tmp116 = real_input[27 * real_istride];
583 tmp117 = real_input[37 * real_istride];
584 tmp118 = tmp116 + tmp117;
585 tmp642 = tmp117 - tmp116;
586 tmp273 = imag_input[27 * imag_istride];
587 tmp274 = imag_input[37 * imag_istride];
588 tmp275 = tmp273 - tmp274;
589 tmp640 = tmp273 + tmp274;
590 }
591 tmp119 = tmp115 + tmp118;
592 tmp263 = tmp115 - tmp118;
593 tmp279 = tmp275 + tmp278;
594 tmp409 = tmp278 - tmp275;
595 tmp641 = tmp639 - tmp640;
596 tmp826 = tmp639 + tmp640;
597 tmp644 = tmp642 + tmp643;
598 tmp827 = tmp643 - tmp642;
599 }
600 {
601 fftw_real tmp828;
602 fftw_real tmp831;
603 fftw_real tmp623;
604 fftw_real tmp630;
605 ASSERT_ALIGNED_DOUBLE;
606 {
607 fftw_real tmp476;
608 fftw_real tmp477;
609 fftw_real tmp638;
610 fftw_real tmp645;
611 ASSERT_ALIGNED_DOUBLE;
612 tmp112 = tmp104 + tmp111;
613 tmp476 = tmp104 - tmp111;
614 tmp477 = tmp410 + tmp409;
615 tmp478 = tmp476 - tmp477;
616 tmp507 = tmp476 + tmp477;
617 tmp411 = tmp409 - tmp410;
618 tmp638 = (K857728610 * tmp634) - (K514102744 * tmp637);
619 tmp645 = (K970031253 * tmp641) - (K242980179 * tmp644);
620 tmp646 = tmp638 + tmp645;
621 tmp731 = tmp638 - tmp645;
622 }
623 {
624 fftw_real tmp660;
625 fftw_real tmp661;
626 fftw_real tmp846;
627 fftw_real tmp847;
628 ASSERT_ALIGNED_DOUBLE;
629 tmp660 = (K242980179 * tmp641) + (K970031253 * tmp644);
630 tmp661 = (K514102744 * tmp634) + (K857728610 * tmp637);
631 tmp662 = tmp660 - tmp661;
632 tmp728 = tmp661 + tmp660;
633 tmp846 = (K740951125 * tmp826) - (K671558954 * tmp827);
634 tmp847 = (K049067674 * tmp829) + (K998795456 * tmp830);
635 tmp848 = tmp846 - tmp847;
636 tmp917 = tmp847 + tmp846;
637 }
638 tmp828 = (K671558954 * tmp826) + (K740951125 * tmp827);
639 tmp831 = (K998795456 * tmp829) - (K049067674 * tmp830);
640 tmp832 = tmp828 - tmp831;
641 tmp914 = tmp831 + tmp828;
642 {
643 fftw_real tmp821;
644 fftw_real tmp824;
645 fftw_real tmp843;
646 fftw_real tmp844;
647 ASSERT_ALIGNED_DOUBLE;
648 tmp821 = (K427555093 * tmp819) + (K903989293 * tmp820);
649 tmp824 = (K941544065 * tmp822) - (K336889853 * tmp823);
650 tmp825 = tmp821 - tmp824;
651 tmp916 = tmp824 + tmp821;
652 tmp843 = (K903989293 * tmp819) - (K427555093 * tmp820);
653 tmp844 = (K336889853 * tmp822) + (K941544065 * tmp823);
654 tmp845 = tmp843 - tmp844;
655 tmp913 = tmp844 + tmp843;
656 }
657 {
658 fftw_real tmp479;
659 fftw_real tmp480;
660 fftw_real tmp252;
661 fftw_real tmp261;
662 ASSERT_ALIGNED_DOUBLE;
663 tmp127 = tmp119 + tmp126;
664 tmp479 = tmp126 - tmp119;
665 tmp480 = tmp407 + tmp406;
666 tmp481 = tmp479 + tmp480;
667 tmp506 = tmp480 - tmp479;
668 tmp408 = tmp406 - tmp407;
669 tmp252 = tmp244 - tmp251;
670 tmp261 = tmp253 + tmp260;
671 tmp262 = (K956940335 * tmp252) - (K290284677 * tmp261);
672 tmp288 = (K290284677 * tmp252) + (K956940335 * tmp261);
673 }
674 {
675 fftw_real tmp348;
676 fftw_real tmp349;
677 fftw_real tmp657;
678 fftw_real tmp658;
679 ASSERT_ALIGNED_DOUBLE;
680 tmp348 = tmp244 + tmp251;
681 tmp349 = tmp260 - tmp253;
682 tmp350 = (K634393284 * tmp348) - (K773010453 * tmp349);
683 tmp360 = (K773010453 * tmp348) + (K634393284 * tmp349);
684 tmp657 = (K146730474 * tmp626) + (K989176509 * tmp629);
685 tmp658 = (K595699304 * tmp619) + (K803207531 * tmp622);
686 tmp659 = tmp657 - tmp658;
687 tmp730 = tmp658 + tmp657;
688 }
689 tmp623 = (K803207531 * tmp619) - (K595699304 * tmp622);
690 tmp630 = (K989176509 * tmp626) - (K146730474 * tmp629);
691 tmp631 = tmp623 + tmp630;
692 tmp727 = tmp630 - tmp623;
693 {
694 fftw_real tmp271;
695 fftw_real tmp280;
696 fftw_real tmp351;
697 fftw_real tmp352;
698 ASSERT_ALIGNED_DOUBLE;
699 tmp271 = tmp263 - tmp270;
700 tmp280 = tmp272 + tmp279;
701 tmp281 = (K881921264 * tmp271) - (K471396736 * tmp280);
702 tmp289 = (K471396736 * tmp271) + (K881921264 * tmp280);
703 tmp351 = tmp263 + tmp270;
704 tmp352 = tmp279 - tmp272;
705 tmp353 = (K098017140 * tmp351) - (K995184726 * tmp352);
706 tmp361 = (K995184726 * tmp351) + (K098017140 * tmp352);
707 }
708 }
709 }
710 {
711 fftw_real tmp21;
712 fftw_real tmp773;
713 fftw_real tmp562;
714 fftw_real tmp157;
715 fftw_real tmp24;
716 fftw_real tmp774;
717 fftw_real tmp565;
718 fftw_real tmp160;
719 fftw_real tmp28;
720 fftw_real tmp776;
721 fftw_real tmp555;
722 fftw_real tmp148;
723 fftw_real tmp31;
724 fftw_real tmp777;
725 fftw_real tmp558;
726 fftw_real tmp151;
727 ASSERT_ALIGNED_DOUBLE;
728 {
729 fftw_real tmp19;
730 fftw_real tmp20;
731 fftw_real tmp560;
732 fftw_real tmp155;
733 fftw_real tmp156;
734 fftw_real tmp561;
735 ASSERT_ALIGNED_DOUBLE;
736 tmp19 = real_input[4 * real_istride];
737 tmp20 = real_input[60 * real_istride];
738 tmp560 = tmp19 - tmp20;
739 tmp155 = imag_input[28 * imag_istride];
740 tmp156 = imag_input[36 * imag_istride];
741 tmp561 = tmp155 + tmp156;
742 tmp21 = tmp19 + tmp20;
743 tmp773 = tmp560 + tmp561;
744 tmp562 = tmp560 - tmp561;
745 tmp157 = tmp155 - tmp156;
746 }
747 {
748 fftw_real tmp22;
749 fftw_real tmp23;
750 fftw_real tmp563;
751 fftw_real tmp158;
752 fftw_real tmp159;
753 fftw_real tmp564;
754 ASSERT_ALIGNED_DOUBLE;
755 tmp22 = real_input[28 * real_istride];
756 tmp23 = real_input[36 * real_istride];
757 tmp563 = tmp23 - tmp22;
758 tmp158 = imag_input[4 * imag_istride];
759 tmp159 = imag_input[60 * imag_istride];
760 tmp564 = tmp158 + tmp159;
761 tmp24 = tmp22 + tmp23;
762 tmp774 = tmp564 - tmp563;
763 tmp565 = tmp563 + tmp564;
764 tmp160 = tmp158 - tmp159;
765 }
766 {
767 fftw_real tmp26;
768 fftw_real tmp27;
769 fftw_real tmp553;
770 fftw_real tmp146;
771 fftw_real tmp147;
772 fftw_real tmp554;
773 ASSERT_ALIGNED_DOUBLE;
774 tmp26 = real_input[12 * real_istride];
775 tmp27 = real_input[52 * real_istride];
776 tmp553 = tmp26 - tmp27;
777 tmp146 = imag_input[20 * imag_istride];
778 tmp147 = imag_input[44 * imag_istride];
779 tmp554 = tmp146 + tmp147;
780 tmp28 = tmp26 + tmp27;
781 tmp776 = tmp553 + tmp554;
782 tmp555 = tmp553 - tmp554;
783 tmp148 = tmp146 - tmp147;
784 }
785 {
786 fftw_real tmp29;
787 fftw_real tmp30;
788 fftw_real tmp556;
789 fftw_real tmp149;
790 fftw_real tmp150;
791 fftw_real tmp557;
792 ASSERT_ALIGNED_DOUBLE;
793 tmp29 = real_input[20 * real_istride];
794 tmp30 = real_input[44 * real_istride];
795 tmp556 = tmp30 - tmp29;
796 tmp149 = imag_input[12 * imag_istride];
797 tmp150 = imag_input[52 * imag_istride];
798 tmp557 = tmp149 + tmp150;
799 tmp31 = tmp29 + tmp30;
800 tmp777 = tmp557 - tmp556;
801 tmp558 = tmp556 + tmp557;
802 tmp151 = tmp149 - tmp150;
803 }
804 {
805 fftw_real tmp25;
806 fftw_real tmp32;
807 fftw_real tmp145;
808 fftw_real tmp152;
809 ASSERT_ALIGNED_DOUBLE;
810 tmp25 = tmp21 + tmp24;
811 tmp32 = tmp28 + tmp31;
812 tmp33 = K2_000000000 * (tmp25 + tmp32);
813 tmp457 = tmp25 - tmp32;
814 tmp145 = tmp21 - tmp24;
815 tmp152 = tmp148 + tmp151;
816 tmp153 = tmp145 - tmp152;
817 tmp329 = tmp145 + tmp152;
818 }
819 {
820 fftw_real tmp429;
821 fftw_real tmp430;
822 fftw_real tmp154;
823 fftw_real tmp161;
824 ASSERT_ALIGNED_DOUBLE;
825 tmp429 = tmp160 - tmp157;
826 tmp430 = tmp151 - tmp148;
827 tmp431 = K2_000000000 * (tmp429 - tmp430);
828 tmp458 = tmp430 + tmp429;
829 tmp154 = tmp31 - tmp28;
830 tmp161 = tmp157 + tmp160;
831 tmp162 = tmp154 + tmp161;
832 tmp330 = tmp161 - tmp154;
833 }
834 tmp559 = (K831469612 * tmp555) - (K555570233 * tmp558);
835 tmp566 = (K980785280 * tmp562) - (K195090322 * tmp565);
836 tmp712 = tmp566 - tmp559;
837 tmp683 = (K195090322 * tmp562) + (K980785280 * tmp565);
838 tmp684 = (K555570233 * tmp555) + (K831469612 * tmp558);
839 tmp713 = tmp684 + tmp683;
840 tmp775 = (K831469612 * tmp773) - (K555570233 * tmp774);
841 tmp778 = (K195090322 * tmp776) + (K980785280 * tmp777);
842 tmp898 = tmp778 + tmp775;
843 tmp865 = (K555570233 * tmp773) + (K831469612 * tmp774);
844 tmp866 = (K980785280 * tmp776) - (K195090322 * tmp777);
845 tmp899 = tmp866 + tmp865;
846 }
847 {
848 fftw_real tmp37;
849 fftw_real tmp180;
850 fftw_real tmp40;
851 fftw_real tmp177;
852 fftw_real tmp165;
853 fftw_real tmp534;
854 fftw_real tmp789;
855 fftw_real tmp788;
856 fftw_real tmp531;
857 fftw_real tmp181;
858 fftw_real tmp44;
859 fftw_real tmp171;
860 fftw_real tmp47;
861 fftw_real tmp168;
862 fftw_real tmp172;
863 fftw_real tmp527;
864 fftw_real tmp792;
865 fftw_real tmp791;
866 fftw_real tmp524;
867 fftw_real tmp174;
868 ASSERT_ALIGNED_DOUBLE;
869 {
870 fftw_real tmp529;
871 fftw_real tmp533;
872 fftw_real tmp532;
873 fftw_real tmp530;
874 ASSERT_ALIGNED_DOUBLE;
875 {
876 fftw_real tmp35;
877 fftw_real tmp36;
878 fftw_real tmp178;
879 fftw_real tmp179;
880 ASSERT_ALIGNED_DOUBLE;
881 tmp35 = real_input[2 * real_istride];
882 tmp36 = real_input[62 * real_istride];
883 tmp37 = tmp35 + tmp36;
884 tmp529 = tmp35 - tmp36;
885 tmp178 = imag_input[2 * imag_istride];
886 tmp179 = imag_input[62 * imag_istride];
887 tmp180 = tmp178 - tmp179;
888 tmp533 = tmp178 + tmp179;
889 }
890 {
891 fftw_real tmp38;
892 fftw_real tmp39;
893 fftw_real tmp175;
894 fftw_real tmp176;
895 ASSERT_ALIGNED_DOUBLE;
896 tmp38 = real_input[30 * real_istride];
897 tmp39 = real_input[34 * real_istride];
898 tmp40 = tmp38 + tmp39;
899 tmp532 = tmp39 - tmp38;
900 tmp175 = imag_input[30 * imag_istride];
901 tmp176 = imag_input[34 * imag_istride];
902 tmp177 = tmp175 - tmp176;
903 tmp530 = tmp175 + tmp176;
904 }
905 tmp165 = tmp37 - tmp40;
906 tmp534 = tmp532 + tmp533;
907 tmp789 = tmp533 - tmp532;
908 tmp788 = tmp529 + tmp530;
909 tmp531 = tmp529 - tmp530;
910 tmp181 = tmp177 + tmp180;
911 }
912 {
913 fftw_real tmp522;
914 fftw_real tmp526;
915 fftw_real tmp525;
916 fftw_real tmp523;
917 ASSERT_ALIGNED_DOUBLE;
918 {
919 fftw_real tmp42;
920 fftw_real tmp43;
921 fftw_real tmp169;
922 fftw_real tmp170;
923 ASSERT_ALIGNED_DOUBLE;
924 tmp42 = real_input[14 * real_istride];
925 tmp43 = real_input[50 * real_istride];
926 tmp44 = tmp42 + tmp43;
927 tmp522 = tmp42 - tmp43;
928 tmp169 = imag_input[14 * imag_istride];
929 tmp170 = imag_input[50 * imag_istride];
930 tmp171 = tmp169 - tmp170;
931 tmp526 = tmp169 + tmp170;
932 }
933 {
934 fftw_real tmp45;
935 fftw_real tmp46;
936 fftw_real tmp166;
937 fftw_real tmp167;
938 ASSERT_ALIGNED_DOUBLE;
939 tmp45 = real_input[18 * real_istride];
940 tmp46 = real_input[46 * real_istride];
941 tmp47 = tmp45 + tmp46;
942 tmp525 = tmp46 - tmp45;
943 tmp166 = imag_input[18 * imag_istride];
944 tmp167 = imag_input[46 * imag_istride];
945 tmp168 = tmp166 - tmp167;
946 tmp523 = tmp166 + tmp167;
947 }
948 tmp172 = tmp168 + tmp171;
949 tmp527 = tmp525 + tmp526;
950 tmp792 = tmp526 - tmp525;
951 tmp791 = tmp522 + tmp523;
952 tmp524 = tmp522 - tmp523;
953 tmp174 = tmp47 - tmp44;
954 }
955 {
956 fftw_real tmp41;
957 fftw_real tmp48;
958 fftw_real tmp666;
959 fftw_real tmp667;
960 ASSERT_ALIGNED_DOUBLE;
961 tmp41 = tmp37 + tmp40;
962 tmp48 = tmp44 + tmp47;
963 tmp49 = tmp41 + tmp48;
964 tmp461 = tmp41 - tmp48;
965 tmp666 = (K098017140 * tmp531) + (K995184726 * tmp534);
966 tmp667 = (K634393284 * tmp524) + (K773010453 * tmp527);
967 tmp668 = tmp666 - tmp667;
968 tmp708 = tmp667 + tmp666;
969 }
970 {
971 fftw_real tmp852;
972 fftw_real tmp853;
973 fftw_real tmp790;
974 fftw_real tmp793;
975 ASSERT_ALIGNED_DOUBLE;
976 tmp852 = (K290284677 * tmp788) + (K956940335 * tmp789);
977 tmp853 = (K881921264 * tmp791) - (K471396736 * tmp792);
978 tmp854 = tmp852 - tmp853;
979 tmp894 = tmp853 + tmp852;
980 tmp790 = (K956940335 * tmp788) - (K290284677 * tmp789);
981 tmp793 = (K471396736 * tmp791) + (K881921264 * tmp792);
982 tmp794 = tmp790 - tmp793;
983 tmp891 = tmp793 + tmp790;
984 }
985 {
986 fftw_real tmp528;
987 fftw_real tmp535;
988 fftw_real tmp333;
989 fftw_real tmp334;
990 ASSERT_ALIGNED_DOUBLE;
991 tmp528 = (K773010453 * tmp524) - (K634393284 * tmp527);
992 tmp535 = (K995184726 * tmp531) - (K098017140 * tmp534);
993 tmp536 = tmp528 + tmp535;
994 tmp705 = tmp535 - tmp528;
995 tmp333 = tmp165 + tmp172;
996 tmp334 = tmp181 - tmp174;
997 tmp335 = (K831469612 * tmp333) - (K555570233 * tmp334);
998 tmp365 = (K555570233 * tmp333) + (K831469612 * tmp334);
999 }
1000 {
1001 fftw_real tmp173;
1002 fftw_real tmp182;
1003 fftw_real tmp415;
1004 fftw_real tmp416;
1005 ASSERT_ALIGNED_DOUBLE;
1006 tmp173 = tmp165 - tmp172;
1007 tmp182 = tmp174 + tmp181;
1008 tmp183 = (K980785280 * tmp173) - (K195090322 * tmp182);
1009 tmp293 = (K195090322 * tmp173) + (K980785280 * tmp182);
1010 tmp415 = tmp180 - tmp177;
1011 tmp416 = tmp171 - tmp168;
1012 tmp417 = tmp415 - tmp416;
1013 tmp465 = tmp416 + tmp415;
1014 }
1015 }
1016 {
1017 fftw_real tmp52;
1018 fftw_real tmp199;
1019 fftw_real tmp55;
1020 fftw_real tmp196;
1021 fftw_real tmp184;
1022 fftw_real tmp549;
1023 fftw_real tmp799;
1024 fftw_real tmp798;
1025 fftw_real tmp546;
1026 fftw_real tmp200;
1027 fftw_real tmp59;
1028 fftw_real tmp190;
1029 fftw_real tmp62;
1030 fftw_real tmp187;
1031 fftw_real tmp191;
1032 fftw_real tmp542;
1033 fftw_real tmp796;
1034 fftw_real tmp795;
1035 fftw_real tmp539;
1036 fftw_real tmp193;
1037 ASSERT_ALIGNED_DOUBLE;
1038 {
1039 fftw_real tmp544;
1040 fftw_real tmp548;
1041 fftw_real tmp547;
1042 fftw_real tmp545;
1043 ASSERT_ALIGNED_DOUBLE;
1044 {
1045 fftw_real tmp50;
1046 fftw_real tmp51;
1047 fftw_real tmp197;
1048 fftw_real tmp198;
1049 ASSERT_ALIGNED_DOUBLE;
1050 tmp50 = real_input[6 * real_istride];
1051 tmp51 = real_input[58 * real_istride];
1052 tmp52 = tmp50 + tmp51;
1053 tmp544 = tmp50 - tmp51;
1054 tmp197 = imag_input[6 * imag_istride];
1055 tmp198 = imag_input[58 * imag_istride];
1056 tmp199 = tmp197 - tmp198;
1057 tmp548 = tmp197 + tmp198;
1058 }
1059 {
1060 fftw_real tmp53;
1061 fftw_real tmp54;
1062 fftw_real tmp194;
1063 fftw_real tmp195;
1064 ASSERT_ALIGNED_DOUBLE;
1065 tmp53 = real_input[26 * real_istride];
1066 tmp54 = real_input[38 * real_istride];
1067 tmp55 = tmp53 + tmp54;
1068 tmp547 = tmp54 - tmp53;
1069 tmp194 = imag_input[26 * imag_istride];
1070 tmp195 = imag_input[38 * imag_istride];
1071 tmp196 = tmp194 - tmp195;
1072 tmp545 = tmp194 + tmp195;
1073 }
1074 tmp184 = tmp52 - tmp55;
1075 tmp549 = tmp547 + tmp548;
1076 tmp799 = tmp548 - tmp547;
1077 tmp798 = tmp544 + tmp545;
1078 tmp546 = tmp544 - tmp545;
1079 tmp200 = tmp196 + tmp199;
1080 }
1081 {
1082 fftw_real tmp537;
1083 fftw_real tmp541;
1084 fftw_real tmp540;
1085 fftw_real tmp538;
1086 ASSERT_ALIGNED_DOUBLE;
1087 {
1088 fftw_real tmp57;
1089 fftw_real tmp58;
1090 fftw_real tmp188;
1091 fftw_real tmp189;
1092 ASSERT_ALIGNED_DOUBLE;
1093 tmp57 = real_input[10 * real_istride];
1094 tmp58 = real_input[54 * real_istride];
1095 tmp59 = tmp57 + tmp58;
1096 tmp537 = tmp57 - tmp58;
1097 tmp188 = imag_input[10 * imag_istride];
1098 tmp189 = imag_input[54 * imag_istride];
1099 tmp190 = tmp188 - tmp189;
1100 tmp541 = tmp188 + tmp189;
1101 }
1102 {
1103 fftw_real tmp60;
1104 fftw_real tmp61;
1105 fftw_real tmp185;
1106 fftw_real tmp186;
1107 ASSERT_ALIGNED_DOUBLE;
1108 tmp60 = real_input[22 * real_istride];
1109 tmp61 = real_input[42 * real_istride];
1110 tmp62 = tmp60 + tmp61;
1111 tmp540 = tmp61 - tmp60;
1112 tmp185 = imag_input[22 * imag_istride];
1113 tmp186 = imag_input[42 * imag_istride];
1114 tmp187 = tmp185 - tmp186;
1115 tmp538 = tmp185 + tmp186;
1116 }
1117 tmp191 = tmp187 + tmp190;
1118 tmp542 = tmp540 + tmp541;
1119 tmp796 = tmp541 - tmp540;
1120 tmp795 = tmp537 + tmp538;
1121 tmp539 = tmp537 - tmp538;
1122 tmp193 = tmp62 - tmp59;
1123 }
1124 {
1125 fftw_real tmp56;
1126 fftw_real tmp63;
1127 fftw_real tmp669;
1128 fftw_real tmp670;
1129 ASSERT_ALIGNED_DOUBLE;
1130 tmp56 = tmp52 + tmp55;
1131 tmp63 = tmp59 + tmp62;
1132 tmp64 = tmp56 + tmp63;
1133 tmp464 = tmp63 - tmp56;
1134 tmp669 = (K290284677 * tmp546) + (K956940335 * tmp549);
1135 tmp670 = (K471396736 * tmp539) + (K881921264 * tmp542);
1136 tmp671 = tmp669 - tmp670;
1137 tmp706 = tmp670 + tmp669;
1138 }
1139 {
1140 fftw_real tmp855;
1141 fftw_real tmp856;
1142 fftw_real tmp797;
1143 fftw_real tmp800;
1144 ASSERT_ALIGNED_DOUBLE;
1145 tmp855 = (K773010453 * tmp798) + (K634393284 * tmp799);
1146 tmp856 = (K995184726 * tmp795) + (K098017140 * tmp796);
1147 tmp857 = tmp855 - tmp856;
1148 tmp892 = tmp856 + tmp855;
1149 tmp797 = (K098017140 * tmp795) - (K995184726 * tmp796);
1150 tmp800 = (K634393284 * tmp798) - (K773010453 * tmp799);
1151 tmp801 = tmp797 + tmp800;
1152 tmp895 = tmp797 - tmp800;
1153 }
1154 {
1155 fftw_real tmp543;
1156 fftw_real tmp550;
1157 fftw_real tmp336;
1158 fftw_real tmp337;
1159 ASSERT_ALIGNED_DOUBLE;
1160 tmp543 = (K881921264 * tmp539) - (K471396736 * tmp542);
1161 tmp550 = (K956940335 * tmp546) - (K290284677 * tmp549);
1162 tmp551 = tmp543 + tmp550;
1163 tmp709 = tmp543 - tmp550;
1164 tmp336 = tmp184 + tmp191;
1165 tmp337 = tmp200 - tmp193;
1166 tmp338 = (K195090322 * tmp336) + (K980785280 * tmp337);
1167 tmp366 = (K980785280 * tmp336) - (K195090322 * tmp337);
1168 }
1169 {
1170 fftw_real tmp192;
1171 fftw_real tmp201;
1172 fftw_real tmp418;
1173 fftw_real tmp419;
1174 ASSERT_ALIGNED_DOUBLE;
1175 tmp192 = tmp184 - tmp191;
1176 tmp201 = tmp193 + tmp200;
1177 tmp202 = (K831469612 * tmp192) - (K555570233 * tmp201);
1178 tmp294 = (K555570233 * tmp192) + (K831469612 * tmp201);
1179 tmp418 = tmp199 - tmp196;
1180 tmp419 = tmp190 - tmp187;
1181 tmp420 = tmp418 - tmp419;
1182 tmp462 = tmp419 + tmp418;
1183 }
1184 }
1185 {
1186 fftw_real tmp73;
1187 fftw_real tmp205;
1188 fftw_real tmp221;
1189 fftw_real tmp399;
1190 fftw_real tmp595;
1191 fftw_real tmp804;
1192 fftw_real tmp598;
1193 fftw_real tmp805;
1194 fftw_real tmp95;
1195 fftw_real tmp233;
1196 fftw_real tmp231;
1197 fftw_real tmp403;
1198 fftw_real tmp603;
1199 fftw_real tmp814;
1200 fftw_real tmp606;
1201 fftw_real tmp815;
1202 fftw_real tmp80;
1203 fftw_real tmp214;
1204 fftw_real tmp212;
1205 fftw_real tmp400;
1206 fftw_real tmp588;
1207 fftw_real tmp807;
1208 fftw_real tmp591;
1209 fftw_real tmp808;
1210 fftw_real tmp88;
1211 fftw_real tmp224;
1212 fftw_real tmp240;
1213 fftw_real tmp402;
1214 fftw_real tmp610;
1215 fftw_real tmp811;
1216 fftw_real tmp613;
1217 fftw_real tmp812;
1218 ASSERT_ALIGNED_DOUBLE;
1219 {
1220 fftw_real tmp69;
1221 fftw_real tmp593;
1222 fftw_real tmp220;
1223 fftw_real tmp597;
1224 fftw_real tmp72;
1225 fftw_real tmp596;
1226 fftw_real tmp217;
1227 fftw_real tmp594;
1228 ASSERT_ALIGNED_DOUBLE;
1229 {
1230 fftw_real tmp67;
1231 fftw_real tmp68;
1232 fftw_real tmp218;
1233 fftw_real tmp219;
1234 ASSERT_ALIGNED_DOUBLE;
1235 tmp67 = real_input[real_istride];
1236 tmp68 = real_input[63 * real_istride];
1237 tmp69 = tmp67 + tmp68;
1238 tmp593 = tmp67 - tmp68;
1239 tmp218 = imag_input[imag_istride];
1240 tmp219 = imag_input[63 * imag_istride];
1241 tmp220 = tmp218 - tmp219;
1242 tmp597 = tmp218 + tmp219;
1243 }
1244 {
1245 fftw_real tmp70;
1246 fftw_real tmp71;
1247 fftw_real tmp215;
1248 fftw_real tmp216;
1249 ASSERT_ALIGNED_DOUBLE;
1250 tmp70 = real_input[31 * real_istride];
1251 tmp71 = real_input[33 * real_istride];
1252 tmp72 = tmp70 + tmp71;
1253 tmp596 = tmp71 - tmp70;
1254 tmp215 = imag_input[31 * imag_istride];
1255 tmp216 = imag_input[33 * imag_istride];
1256 tmp217 = tmp215 - tmp216;
1257 tmp594 = tmp215 + tmp216;
1258 }
1259 tmp73 = tmp69 + tmp72;
1260 tmp205 = tmp69 - tmp72;
1261 tmp221 = tmp217 + tmp220;
1262 tmp399 = tmp220 - tmp217;
1263 tmp595 = tmp593 - tmp594;
1264 tmp804 = tmp593 + tmp594;
1265 tmp598 = tmp596 + tmp597;
1266 tmp805 = tmp597 - tmp596;
1267 }
1268 {
1269 fftw_real tmp91;
1270 fftw_real tmp601;
1271 fftw_real tmp230;
1272 fftw_real tmp605;
1273 fftw_real tmp94;
1274 fftw_real tmp604;
1275 fftw_real tmp227;
1276 fftw_real tmp602;
1277 ASSERT_ALIGNED_DOUBLE;
1278 {
1279 fftw_real tmp89;
1280 fftw_real tmp90;
1281 fftw_real tmp228;
1282 fftw_real tmp229;
1283 ASSERT_ALIGNED_DOUBLE;
1284 tmp89 = real_input[9 * real_istride];
1285 tmp90 = real_input[55 * real_istride];
1286 tmp91 = tmp89 + tmp90;
1287 tmp601 = tmp89 - tmp90;
1288 tmp228 = imag_input[9 * imag_istride];
1289 tmp229 = imag_input[55 * imag_istride];
1290 tmp230 = tmp228 - tmp229;
1291 tmp605 = tmp228 + tmp229;
1292 }
1293 {
1294 fftw_real tmp92;
1295 fftw_real tmp93;
1296 fftw_real tmp225;
1297 fftw_real tmp226;
1298 ASSERT_ALIGNED_DOUBLE;
1299 tmp92 = real_input[23 * real_istride];
1300 tmp93 = real_input[41 * real_istride];
1301 tmp94 = tmp92 + tmp93;
1302 tmp604 = tmp93 - tmp92;
1303 tmp225 = imag_input[23 * imag_istride];
1304 tmp226 = imag_input[41 * imag_istride];
1305 tmp227 = tmp225 - tmp226;
1306 tmp602 = tmp225 + tmp226;
1307 }
1308 tmp95 = tmp91 + tmp94;
1309 tmp233 = tmp94 - tmp91;
1310 tmp231 = tmp227 + tmp230;
1311 tmp403 = tmp230 - tmp227;
1312 tmp603 = tmp601 - tmp602;
1313 tmp814 = tmp601 + tmp602;
1314 tmp606 = tmp604 + tmp605;
1315 tmp815 = tmp605 - tmp604;
1316 }
1317 {
1318 fftw_real tmp76;
1319 fftw_real tmp586;
1320 fftw_real tmp211;
1321 fftw_real tmp590;
1322 fftw_real tmp79;
1323 fftw_real tmp589;
1324 fftw_real tmp208;
1325 fftw_real tmp587;
1326 ASSERT_ALIGNED_DOUBLE;
1327 {
1328 fftw_real tmp74;
1329 fftw_real tmp75;
1330 fftw_real tmp209;
1331 fftw_real tmp210;
1332 ASSERT_ALIGNED_DOUBLE;
1333 tmp74 = real_input[15 * real_istride];
1334 tmp75 = real_input[49 * real_istride];
1335 tmp76 = tmp74 + tmp75;
1336 tmp586 = tmp74 - tmp75;
1337 tmp209 = imag_input[15 * imag_istride];
1338 tmp210 = imag_input[49 * imag_istride];
1339 tmp211 = tmp209 - tmp210;
1340 tmp590 = tmp209 + tmp210;
1341 }
1342 {
1343 fftw_real tmp77;
1344 fftw_real tmp78;
1345 fftw_real tmp206;
1346 fftw_real tmp207;
1347 ASSERT_ALIGNED_DOUBLE;
1348 tmp77 = real_input[17 * real_istride];
1349 tmp78 = real_input[47 * real_istride];
1350 tmp79 = tmp77 + tmp78;
1351 tmp589 = tmp78 - tmp77;
1352 tmp206 = imag_input[17 * imag_istride];
1353 tmp207 = imag_input[47 * imag_istride];
1354 tmp208 = tmp206 - tmp207;
1355 tmp587 = tmp206 + tmp207;
1356 }
1357 tmp80 = tmp76 + tmp79;
1358 tmp214 = tmp79 - tmp76;
1359 tmp212 = tmp208 + tmp211;
1360 tmp400 = tmp211 - tmp208;
1361 tmp588 = tmp586 - tmp587;
1362 tmp807 = tmp586 + tmp587;
1363 tmp591 = tmp589 + tmp590;
1364 tmp808 = tmp590 - tmp589;
1365 }
1366 {
1367 fftw_real tmp84;
1368 fftw_real tmp608;
1369 fftw_real tmp239;
1370 fftw_real tmp612;
1371 fftw_real tmp87;
1372 fftw_real tmp611;
1373 fftw_real tmp236;
1374 fftw_real tmp609;
1375 ASSERT_ALIGNED_DOUBLE;
1376 {
1377 fftw_real tmp82;
1378 fftw_real tmp83;
1379 fftw_real tmp237;
1380 fftw_real tmp238;
1381 ASSERT_ALIGNED_DOUBLE;
1382 tmp82 = real_input[7 * real_istride];
1383 tmp83 = real_input[57 * real_istride];
1384 tmp84 = tmp82 + tmp83;
1385 tmp608 = tmp82 - tmp83;
1386 tmp237 = imag_input[7 * imag_istride];
1387 tmp238 = imag_input[57 * imag_istride];
1388 tmp239 = tmp237 - tmp238;
1389 tmp612 = tmp237 + tmp238;
1390 }
1391 {
1392 fftw_real tmp85;
1393 fftw_real tmp86;
1394 fftw_real tmp234;
1395 fftw_real tmp235;
1396 ASSERT_ALIGNED_DOUBLE;
1397 tmp85 = real_input[25 * real_istride];
1398 tmp86 = real_input[39 * real_istride];
1399 tmp87 = tmp85 + tmp86;
1400 tmp611 = tmp86 - tmp85;
1401 tmp234 = imag_input[25 * imag_istride];
1402 tmp235 = imag_input[39 * imag_istride];
1403 tmp236 = tmp234 - tmp235;
1404 tmp609 = tmp234 + tmp235;
1405 }
1406 tmp88 = tmp84 + tmp87;
1407 tmp224 = tmp84 - tmp87;
1408 tmp240 = tmp236 + tmp239;
1409 tmp402 = tmp239 - tmp236;
1410 tmp610 = tmp608 - tmp609;
1411 tmp811 = tmp608 + tmp609;
1412 tmp613 = tmp611 + tmp612;
1413 tmp812 = tmp612 - tmp611;
1414 }
1415 {
1416 fftw_real tmp813;
1417 fftw_real tmp816;
1418 fftw_real tmp592;
1419 fftw_real tmp599;
1420 ASSERT_ALIGNED_DOUBLE;
1421 {
1422 fftw_real tmp469;
1423 fftw_real tmp470;
1424 fftw_real tmp607;
1425 fftw_real tmp614;
1426 ASSERT_ALIGNED_DOUBLE;
1427 tmp81 = tmp73 + tmp80;
1428 tmp469 = tmp73 - tmp80;
1429 tmp470 = tmp403 + tmp402;
1430 tmp471 = tmp469 - tmp470;
1431 tmp503 = tmp469 + tmp470;
1432 tmp404 = tmp402 - tmp403;
1433 tmp607 = (K903989293 * tmp603) - (K427555093 * tmp606);
1434 tmp614 = (K941544065 * tmp610) - (K336889853 * tmp613);
1435 tmp615 = tmp607 + tmp614;
1436 tmp724 = tmp607 - tmp614;
1437 }
1438 {
1439 fftw_real tmp653;
1440 fftw_real tmp654;
1441 fftw_real tmp839;
1442 fftw_real tmp840;
1443 ASSERT_ALIGNED_DOUBLE;
1444 tmp653 = (K336889853 * tmp610) + (K941544065 * tmp613);
1445 tmp654 = (K427555093 * tmp603) + (K903989293 * tmp606);
1446 tmp655 = tmp653 - tmp654;
1447 tmp721 = tmp654 + tmp653;
1448 tmp839 = (K242980179 * tmp814) - (K970031253 * tmp815);
1449 tmp840 = (K514102744 * tmp811) - (K857728610 * tmp812);
1450 tmp841 = tmp839 + tmp840;
1451 tmp910 = tmp839 - tmp840;
1452 }
1453 tmp813 = (K857728610 * tmp811) + (K514102744 * tmp812);
1454 tmp816 = (K970031253 * tmp814) + (K242980179 * tmp815);
1455 tmp817 = tmp813 - tmp816;
1456 tmp907 = tmp816 + tmp813;
1457 {
1458 fftw_real tmp806;
1459 fftw_real tmp809;
1460 fftw_real tmp836;
1461 fftw_real tmp837;
1462 ASSERT_ALIGNED_DOUBLE;
1463 tmp806 = (K146730474 * tmp804) + (K989176509 * tmp805);
1464 tmp809 = (K803207531 * tmp807) - (K595699304 * tmp808);
1465 tmp810 = tmp806 - tmp809;
1466 tmp909 = tmp809 + tmp806;
1467 tmp836 = (K989176509 * tmp804) - (K146730474 * tmp805);
1468 tmp837 = (K595699304 * tmp807) + (K803207531 * tmp808);
1469 tmp838 = tmp836 - tmp837;
1470 tmp906 = tmp837 + tmp836;
1471 }
1472 {
1473 fftw_real tmp472;
1474 fftw_real tmp473;
1475 fftw_real tmp213;
1476 fftw_real tmp222;
1477 ASSERT_ALIGNED_DOUBLE;
1478 tmp96 = tmp88 + tmp95;
1479 tmp472 = tmp95 - tmp88;
1480 tmp473 = tmp400 + tmp399;
1481 tmp474 = tmp472 + tmp473;
1482 tmp504 = tmp473 - tmp472;
1483 tmp401 = tmp399 - tmp400;
1484 tmp213 = tmp205 - tmp212;
1485 tmp222 = tmp214 + tmp221;
1486 tmp223 = (K995184726 * tmp213) - (K098017140 * tmp222);
1487 tmp285 = (K098017140 * tmp213) + (K995184726 * tmp222);
1488 }
1489 {
1490 fftw_real tmp341;
1491 fftw_real tmp342;
1492 fftw_real tmp650;
1493 fftw_real tmp651;
1494 ASSERT_ALIGNED_DOUBLE;
1495 tmp341 = tmp205 + tmp212;
1496 tmp342 = tmp221 - tmp214;
1497 tmp343 = (K956940335 * tmp341) - (K290284677 * tmp342);
1498 tmp357 = (K290284677 * tmp341) + (K956940335 * tmp342);
1499 tmp650 = (K049067674 * tmp595) + (K998795456 * tmp598);
1500 tmp651 = (K671558954 * tmp588) + (K740951125 * tmp591);
1501 tmp652 = tmp650 - tmp651;
1502 tmp723 = tmp651 + tmp650;
1503 }
1504 tmp592 = (K740951125 * tmp588) - (K671558954 * tmp591);
1505 tmp599 = (K998795456 * tmp595) - (K049067674 * tmp598);
1506 tmp600 = tmp592 + tmp599;
1507 tmp720 = tmp599 - tmp592;
1508 {
1509 fftw_real tmp232;
1510 fftw_real tmp241;
1511 fftw_real tmp344;
1512 fftw_real tmp345;
1513 ASSERT_ALIGNED_DOUBLE;
1514 tmp232 = tmp224 - tmp231;
1515 tmp241 = tmp233 + tmp240;
1516 tmp242 = (K773010453 * tmp232) - (K634393284 * tmp241);
1517 tmp286 = (K634393284 * tmp232) + (K773010453 * tmp241);
1518 tmp344 = tmp224 + tmp231;
1519 tmp345 = tmp240 - tmp233;
1520 tmp346 = (K471396736 * tmp344) + (K881921264 * tmp345);
1521 tmp358 = (K881921264 * tmp344) - (K471396736 * tmp345);
1522 }
1523 }
1524 }
1525 {
1526 fftw_real tmp65;
1527 fftw_real tmp421;
1528 fftw_real tmp34;
1529 fftw_real tmp414;
1530 fftw_real tmp129;
1531 fftw_real tmp423;
1532 fftw_real tmp413;
1533 fftw_real tmp424;
1534 fftw_real tmp18;
1535 fftw_real tmp66;
1536 fftw_real tmp398;
1537 ASSERT_ALIGNED_DOUBLE;
1538 tmp65 = K2_000000000 * (tmp49 + tmp64);
1539 tmp421 = K2_000000000 * (tmp417 - tmp420);
1540 tmp18 = tmp10 + tmp17;
1541 tmp34 = tmp18 + tmp33;
1542 tmp414 = tmp18 - tmp33;
1543 {
1544 fftw_real tmp97;
1545 fftw_real tmp128;
1546 fftw_real tmp405;
1547 fftw_real tmp412;
1548 ASSERT_ALIGNED_DOUBLE;
1549 tmp97 = tmp81 + tmp96;
1550 tmp128 = tmp112 + tmp127;
1551 tmp129 = K2_000000000 * (tmp97 + tmp128);
1552 tmp423 = tmp97 - tmp128;
1553 tmp405 = tmp401 - tmp404;
1554 tmp412 = tmp408 - tmp411;
1555 tmp413 = K2_000000000 * (tmp405 - tmp412);
1556 tmp424 = tmp405 + tmp412;
1557 }
1558 tmp66 = tmp34 + tmp65;
1559 output[64 * ostride] = tmp66 - tmp129;
1560 output[0] = tmp66 + tmp129;
1561 tmp398 = tmp34 - tmp65;
1562 output[32 * ostride] = tmp398 - tmp413;
1563 output[96 * ostride] = tmp398 + tmp413;
1564 {
1565 fftw_real tmp422;
1566 fftw_real tmp425;
1567 fftw_real tmp426;
1568 fftw_real tmp427;
1569 ASSERT_ALIGNED_DOUBLE;
1570 tmp422 = tmp414 - tmp421;
1571 tmp425 = K1_414213562 * (tmp423 - tmp424);
1572 output[80 * ostride] = tmp422 - tmp425;
1573 output[16 * ostride] = tmp422 + tmp425;
1574 tmp426 = tmp414 + tmp421;
1575 tmp427 = K1_414213562 * (tmp423 + tmp424);
1576 output[48 * ostride] = tmp426 - tmp427;
1577 output[112 * ostride] = tmp426 + tmp427;
1578 }
1579 }
1580 {
1581 fftw_real tmp432;
1582 fftw_real tmp446;
1583 fftw_real tmp442;
1584 fftw_real tmp450;
1585 fftw_real tmp435;
1586 fftw_real tmp447;
1587 fftw_real tmp439;
1588 fftw_real tmp449;
1589 fftw_real tmp428;
1590 fftw_real tmp440;
1591 fftw_real tmp441;
1592 ASSERT_ALIGNED_DOUBLE;
1593 tmp428 = tmp10 - tmp17;
1594 tmp432 = tmp428 - tmp431;
1595 tmp446 = tmp428 + tmp431;
1596 tmp440 = tmp127 - tmp112;
1597 tmp441 = tmp401 + tmp404;
1598 tmp442 = tmp440 + tmp441;
1599 tmp450 = tmp441 - tmp440;
1600 {
1601 fftw_real tmp433;
1602 fftw_real tmp434;
1603 fftw_real tmp437;
1604 fftw_real tmp438;
1605 ASSERT_ALIGNED_DOUBLE;
1606 tmp433 = tmp49 - tmp64;
1607 tmp434 = tmp417 + tmp420;
1608 tmp435 = K1_414213562 * (tmp433 - tmp434);
1609 tmp447 = K1_414213562 * (tmp433 + tmp434);
1610 tmp437 = tmp81 - tmp96;
1611 tmp438 = tmp408 + tmp411;
1612 tmp439 = tmp437 - tmp438;
1613 tmp449 = tmp437 + tmp438;
1614 }
1615 {
1616 fftw_real tmp436;
1617 fftw_real tmp443;
1618 fftw_real tmp444;
1619 fftw_real tmp445;
1620 ASSERT_ALIGNED_DOUBLE;
1621 tmp436 = tmp432 + tmp435;
1622 tmp443 = (K1_847759065 * tmp439) - (K765366864 * tmp442);
1623 output[72 * ostride] = tmp436 - tmp443;
1624 output[8 * ostride] = tmp436 + tmp443;
1625 tmp444 = tmp432 - tmp435;
1626 tmp445 = (K1_847759065 * tmp442) + (K765366864 * tmp439);
1627 output[40 * ostride] = tmp444 - tmp445;
1628 output[104 * ostride] = tmp444 + tmp445;
1629 }
1630 {
1631 fftw_real tmp448;
1632 fftw_real tmp451;
1633 fftw_real tmp452;
1634 fftw_real tmp453;
1635 ASSERT_ALIGNED_DOUBLE;
1636 tmp448 = tmp446 - tmp447;
1637 tmp451 = (K765366864 * tmp449) - (K1_847759065 * tmp450);
1638 output[88 * ostride] = tmp448 - tmp451;
1639 output[24 * ostride] = tmp448 + tmp451;
1640 tmp452 = tmp446 + tmp447;
1641 tmp453 = (K765366864 * tmp450) + (K1_847759065 * tmp449);
1642 output[56 * ostride] = tmp452 - tmp453;
1643 output[120 * ostride] = tmp452 + tmp453;
1644 }
1645 }
1646 {
1647 fftw_real tmp203;
1648 fftw_real tmp295;
1649 fftw_real tmp164;
1650 fftw_real tmp292;
1651 fftw_real tmp283;
1652 fftw_real tmp297;
1653 fftw_real tmp291;
1654 fftw_real tmp298;
1655 fftw_real tmp144;
1656 fftw_real tmp163;
1657 fftw_real tmp204;
1658 fftw_real tmp284;
1659 ASSERT_ALIGNED_DOUBLE;
1660 tmp203 = K2_000000000 * (tmp183 + tmp202);
1661 tmp295 = K2_000000000 * (tmp293 - tmp294);
1662 tmp144 = tmp134 + tmp143;
1663 tmp163 = (K1_847759065 * tmp153) - (K765366864 * tmp162);
1664 tmp164 = tmp144 + tmp163;
1665 tmp292 = tmp144 - tmp163;
1666 {
1667 fftw_real tmp243;
1668 fftw_real tmp282;
1669 fftw_real tmp287;
1670 fftw_real tmp290;
1671 ASSERT_ALIGNED_DOUBLE;
1672 tmp243 = tmp223 + tmp242;
1673 tmp282 = tmp262 + tmp281;
1674 tmp283 = K2_000000000 * (tmp243 + tmp282);
1675 tmp297 = tmp243 - tmp282;
1676 tmp287 = tmp285 - tmp286;
1677 tmp290 = tmp288 - tmp289;
1678 tmp291 = K2_000000000 * (tmp287 - tmp290);
1679 tmp298 = tmp287 + tmp290;
1680 }
1681 tmp204 = tmp164 + tmp203;
1682 output[66 * ostride] = tmp204 - tmp283;
1683 output[2 * ostride] = tmp204 + tmp283;
1684 tmp284 = tmp164 - tmp203;
1685 output[34 * ostride] = tmp284 - tmp291;
1686 output[98 * ostride] = tmp284 + tmp291;
1687 {
1688 fftw_real tmp296;
1689 fftw_real tmp299;
1690 fftw_real tmp300;
1691 fftw_real tmp301;
1692 ASSERT_ALIGNED_DOUBLE;
1693 tmp296 = tmp292 - tmp295;
1694 tmp299 = K1_414213562 * (tmp297 - tmp298);
1695 output[82 * ostride] = tmp296 - tmp299;
1696 output[18 * ostride] = tmp296 + tmp299;
1697 tmp300 = tmp292 + tmp295;
1698 tmp301 = K1_414213562 * (tmp297 + tmp298);
1699 output[50 * ostride] = tmp300 - tmp301;
1700 output[114 * ostride] = tmp300 + tmp301;
1701 }
1702 }
1703 {
1704 fftw_real tmp304;
1705 fftw_real tmp318;
1706 fftw_real tmp314;
1707 fftw_real tmp322;
1708 fftw_real tmp307;
1709 fftw_real tmp319;
1710 fftw_real tmp311;
1711 fftw_real tmp321;
1712 ASSERT_ALIGNED_DOUBLE;
1713 {
1714 fftw_real tmp302;
1715 fftw_real tmp303;
1716 fftw_real tmp312;
1717 fftw_real tmp313;
1718 ASSERT_ALIGNED_DOUBLE;
1719 tmp302 = tmp134 - tmp143;
1720 tmp303 = (K765366864 * tmp153) + (K1_847759065 * tmp162);
1721 tmp304 = tmp302 - tmp303;
1722 tmp318 = tmp302 + tmp303;
1723 tmp312 = tmp285 + tmp286;
1724 tmp313 = tmp281 - tmp262;
1725 tmp314 = tmp312 + tmp313;
1726 tmp322 = tmp312 - tmp313;
1727 }
1728 {
1729 fftw_real tmp305;
1730 fftw_real tmp306;
1731 fftw_real tmp309;
1732 fftw_real tmp310;
1733 ASSERT_ALIGNED_DOUBLE;
1734 tmp305 = tmp183 - tmp202;
1735 tmp306 = tmp293 + tmp294;
1736 tmp307 = K1_414213562 * (tmp305 - tmp306);
1737 tmp319 = K1_414213562 * (tmp305 + tmp306);
1738 tmp309 = tmp223 - tmp242;
1739 tmp310 = tmp288 + tmp289;
1740 tmp311 = tmp309 - tmp310;
1741 tmp321 = tmp309 + tmp310;
1742 }
1743 {
1744 fftw_real tmp308;
1745 fftw_real tmp315;
1746 fftw_real tmp316;
1747 fftw_real tmp317;
1748 ASSERT_ALIGNED_DOUBLE;
1749 tmp308 = tmp304 + tmp307;
1750 tmp315 = (K1_847759065 * tmp311) - (K765366864 * tmp314);
1751 output[74 * ostride] = tmp308 - tmp315;
1752 output[10 * ostride] = tmp308 + tmp315;
1753 tmp316 = tmp304 - tmp307;
1754 tmp317 = (K1_847759065 * tmp314) + (K765366864 * tmp311);
1755 output[42 * ostride] = tmp316 - tmp317;
1756 output[106 * ostride] = tmp316 + tmp317;
1757 }
1758 {
1759 fftw_real tmp320;
1760 fftw_real tmp323;
1761 fftw_real tmp324;
1762 fftw_real tmp325;
1763 ASSERT_ALIGNED_DOUBLE;
1764 tmp320 = tmp318 - tmp319;
1765 tmp323 = (K765366864 * tmp321) - (K1_847759065 * tmp322);
1766 output[90 * ostride] = tmp320 - tmp323;
1767 output[26 * ostride] = tmp320 + tmp323;
1768 tmp324 = tmp318 + tmp319;
1769 tmp325 = (K765366864 * tmp322) + (K1_847759065 * tmp321);
1770 output[58 * ostride] = tmp324 - tmp325;
1771 output[122 * ostride] = tmp324 + tmp325;
1772 }
1773 }
1774 {
1775 fftw_real tmp460;
1776 fftw_real tmp488;
1777 fftw_real tmp487;
1778 fftw_real tmp492;
1779 fftw_real tmp483;
1780 fftw_real tmp491;
1781 fftw_real tmp467;
1782 fftw_real tmp489;
1783 fftw_real tmp468;
1784 fftw_real tmp484;
1785 ASSERT_ALIGNED_DOUBLE;
1786 {
1787 fftw_real tmp456;
1788 fftw_real tmp459;
1789 fftw_real tmp485;
1790 fftw_real tmp486;
1791 ASSERT_ALIGNED_DOUBLE;
1792 tmp456 = tmp454 - tmp455;
1793 tmp459 = K1_414213562 * (tmp457 - tmp458);
1794 tmp460 = tmp456 + tmp459;
1795 tmp488 = tmp456 - tmp459;
1796 tmp485 = (K980785280 * tmp474) + (K195090322 * tmp471);
1797 tmp486 = (K831469612 * tmp481) + (K555570233 * tmp478);
1798 tmp487 = K2_000000000 * (tmp485 - tmp486);
1799 tmp492 = tmp485 + tmp486;
1800 }
1801 {
1802 fftw_real tmp475;
1803 fftw_real tmp482;
1804 fftw_real tmp463;
1805 fftw_real tmp466;
1806 ASSERT_ALIGNED_DOUBLE;
1807 tmp475 = (K980785280 * tmp471) - (K195090322 * tmp474);
1808 tmp482 = (K831469612 * tmp478) - (K555570233 * tmp481);
1809 tmp483 = K2_000000000 * (tmp475 + tmp482);
1810 tmp491 = tmp475 - tmp482;
1811 tmp463 = tmp461 - tmp462;
1812 tmp466 = tmp464 + tmp465;
1813 tmp467 = (K1_847759065 * tmp463) - (K765366864 * tmp466);
1814 tmp489 = (K1_847759065 * tmp466) + (K765366864 * tmp463);
1815 }
1816 tmp468 = tmp460 + tmp467;
1817 output[68 * ostride] = tmp468 - tmp483;
1818 output[4 * ostride] = tmp468 + tmp483;
1819 tmp484 = tmp460 - tmp467;
1820 output[36 * ostride] = tmp484 - tmp487;
1821 output[100 * ostride] = tmp484 + tmp487;
1822 {
1823 fftw_real tmp490;
1824 fftw_real tmp493;
1825 fftw_real tmp494;
1826 fftw_real tmp495;
1827 ASSERT_ALIGNED_DOUBLE;
1828 tmp490 = tmp488 - tmp489;
1829 tmp493 = K1_414213562 * (tmp491 - tmp492);
1830 output[84 * ostride] = tmp490 - tmp493;
1831 output[20 * ostride] = tmp490 + tmp493;
1832 tmp494 = tmp488 + tmp489;
1833 tmp495 = K1_414213562 * (tmp491 + tmp492);
1834 output[52 * ostride] = tmp494 - tmp495;
1835 output[116 * ostride] = tmp494 + tmp495;
1836 }
1837 }
1838 {
1839 fftw_real tmp498;
1840 fftw_real tmp514;
1841 fftw_real tmp513;
1842 fftw_real tmp518;
1843 fftw_real tmp509;
1844 fftw_real tmp517;
1845 fftw_real tmp501;
1846 fftw_real tmp515;
1847 fftw_real tmp502;
1848 fftw_real tmp510;
1849 ASSERT_ALIGNED_DOUBLE;
1850 {
1851 fftw_real tmp496;
1852 fftw_real tmp497;
1853 fftw_real tmp511;
1854 fftw_real tmp512;
1855 ASSERT_ALIGNED_DOUBLE;
1856 tmp496 = tmp454 + tmp455;
1857 tmp497 = K1_414213562 * (tmp457 + tmp458);
1858 tmp498 = tmp496 - tmp497;
1859 tmp514 = tmp496 + tmp497;
1860 tmp511 = (K831469612 * tmp504) + (K555570233 * tmp503);
1861 tmp512 = (K980785280 * tmp507) - (K195090322 * tmp506);
1862 tmp513 = K2_000000000 * (tmp511 - tmp512);
1863 tmp518 = tmp511 + tmp512;
1864 }
1865 {
1866 fftw_real tmp505;
1867 fftw_real tmp508;
1868 fftw_real tmp499;
1869 fftw_real tmp500;
1870 ASSERT_ALIGNED_DOUBLE;
1871 tmp505 = (K831469612 * tmp503) - (K555570233 * tmp504);
1872 tmp508 = (K980785280 * tmp506) + (K195090322 * tmp507);
1873 tmp509 = K2_000000000 * (tmp505 - tmp508);
1874 tmp517 = tmp505 + tmp508;
1875 tmp499 = tmp461 + tmp462;
1876 tmp500 = tmp465 - tmp464;
1877 tmp501 = (K765366864 * tmp499) - (K1_847759065 * tmp500);
1878 tmp515 = (K765366864 * tmp500) + (K1_847759065 * tmp499);
1879 }
1880 tmp502 = tmp498 + tmp501;
1881 output[76 * ostride] = tmp502 - tmp509;
1882 output[12 * ostride] = tmp502 + tmp509;
1883 tmp510 = tmp498 - tmp501;
1884 output[44 * ostride] = tmp510 - tmp513;
1885 output[108 * ostride] = tmp510 + tmp513;
1886 {
1887 fftw_real tmp516;
1888 fftw_real tmp519;
1889 fftw_real tmp520;
1890 fftw_real tmp521;
1891 ASSERT_ALIGNED_DOUBLE;
1892 tmp516 = tmp514 - tmp515;
1893 tmp519 = K1_414213562 * (tmp517 - tmp518);
1894 output[92 * ostride] = tmp516 - tmp519;
1895 output[28 * ostride] = tmp516 + tmp519;
1896 tmp520 = tmp514 + tmp515;
1897 tmp521 = K1_414213562 * (tmp517 + tmp518);
1898 output[60 * ostride] = tmp520 - tmp521;
1899 output[124 * ostride] = tmp520 + tmp521;
1900 }
1901 }
1902 {
1903 fftw_real tmp339;
1904 fftw_real tmp367;
1905 fftw_real tmp332;
1906 fftw_real tmp364;
1907 fftw_real tmp355;
1908 fftw_real tmp369;
1909 fftw_real tmp363;
1910 fftw_real tmp370;
1911 fftw_real tmp328;
1912 fftw_real tmp331;
1913 fftw_real tmp340;
1914 fftw_real tmp356;
1915 ASSERT_ALIGNED_DOUBLE;
1916 tmp339 = K2_000000000 * (tmp335 - tmp338);
1917 tmp367 = K2_000000000 * (tmp365 - tmp366);
1918 tmp328 = tmp326 - tmp327;
1919 tmp331 = (K765366864 * tmp329) - (K1_847759065 * tmp330);
1920 tmp332 = tmp328 + tmp331;
1921 tmp364 = tmp328 - tmp331;
1922 {
1923 fftw_real tmp347;
1924 fftw_real tmp354;
1925 fftw_real tmp359;
1926 fftw_real tmp362;
1927 ASSERT_ALIGNED_DOUBLE;
1928 tmp347 = tmp343 - tmp346;
1929 tmp354 = tmp350 + tmp353;
1930 tmp355 = K2_000000000 * (tmp347 + tmp354);
1931 tmp369 = tmp347 - tmp354;
1932 tmp359 = tmp357 - tmp358;
1933 tmp362 = tmp360 - tmp361;
1934 tmp363 = K2_000000000 * (tmp359 - tmp362);
1935 tmp370 = tmp359 + tmp362;
1936 }
1937 tmp340 = tmp332 + tmp339;
1938 output[70 * ostride] = tmp340 - tmp355;
1939 output[6 * ostride] = tmp340 + tmp355;
1940 tmp356 = tmp332 - tmp339;
1941 output[38 * ostride] = tmp356 - tmp363;
1942 output[102 * ostride] = tmp356 + tmp363;
1943 {
1944 fftw_real tmp368;
1945 fftw_real tmp371;
1946 fftw_real tmp372;
1947 fftw_real tmp373;
1948 ASSERT_ALIGNED_DOUBLE;
1949 tmp368 = tmp364 - tmp367;
1950 tmp371 = K1_414213562 * (tmp369 - tmp370);
1951 output[86 * ostride] = tmp368 - tmp371;
1952 output[22 * ostride] = tmp368 + tmp371;
1953 tmp372 = tmp364 + tmp367;
1954 tmp373 = K1_414213562 * (tmp369 + tmp370);
1955 output[54 * ostride] = tmp372 - tmp373;
1956 output[118 * ostride] = tmp372 + tmp373;
1957 }
1958 }
1959 {
1960 fftw_real tmp376;
1961 fftw_real tmp390;
1962 fftw_real tmp386;
1963 fftw_real tmp394;
1964 fftw_real tmp379;
1965 fftw_real tmp391;
1966 fftw_real tmp383;
1967 fftw_real tmp393;
1968 ASSERT_ALIGNED_DOUBLE;
1969 {
1970 fftw_real tmp374;
1971 fftw_real tmp375;
1972 fftw_real tmp384;
1973 fftw_real tmp385;
1974 ASSERT_ALIGNED_DOUBLE;
1975 tmp374 = tmp326 + tmp327;
1976 tmp375 = (K1_847759065 * tmp329) + (K765366864 * tmp330);
1977 tmp376 = tmp374 - tmp375;
1978 tmp390 = tmp374 + tmp375;
1979 tmp384 = tmp357 + tmp358;
1980 tmp385 = tmp353 - tmp350;
1981 tmp386 = tmp384 + tmp385;
1982 tmp394 = tmp384 - tmp385;
1983 }
1984 {
1985 fftw_real tmp377;
1986 fftw_real tmp378;
1987 fftw_real tmp381;
1988 fftw_real tmp382;
1989 ASSERT_ALIGNED_DOUBLE;
1990 tmp377 = tmp335 + tmp338;
1991 tmp378 = tmp365 + tmp366;
1992 tmp379 = K1_414213562 * (tmp377 - tmp378);
1993 tmp391 = K1_414213562 * (tmp378 + tmp377);
1994 tmp381 = tmp343 + tmp346;
1995 tmp382 = tmp360 + tmp361;
1996 tmp383 = tmp381 - tmp382;
1997 tmp393 = tmp381 + tmp382;
1998 }
1999 {
2000 fftw_real tmp380;
2001 fftw_real tmp387;
2002 fftw_real tmp388;
2003 fftw_real tmp389;
2004 ASSERT_ALIGNED_DOUBLE;
2005 tmp380 = tmp376 + tmp379;
2006 tmp387 = (K1_847759065 * tmp383) - (K765366864 * tmp386);
2007 output[78 * ostride] = tmp380 - tmp387;
2008 output[14 * ostride] = tmp380 + tmp387;
2009 tmp388 = tmp376 - tmp379;
2010 tmp389 = (K1_847759065 * tmp386) + (K765366864 * tmp383);
2011 output[46 * ostride] = tmp388 - tmp389;
2012 output[110 * ostride] = tmp388 + tmp389;
2013 }
2014 {
2015 fftw_real tmp392;
2016 fftw_real tmp395;
2017 fftw_real tmp396;
2018 fftw_real tmp397;
2019 ASSERT_ALIGNED_DOUBLE;
2020 tmp392 = tmp390 - tmp391;
2021 tmp395 = (K765366864 * tmp393) - (K1_847759065 * tmp394);
2022 output[94 * ostride] = tmp392 - tmp395;
2023 output[30 * ostride] = tmp392 + tmp395;
2024 tmp396 = tmp390 + tmp391;
2025 tmp397 = (K765366864 * tmp394) + (K1_847759065 * tmp393);
2026 output[62 * ostride] = tmp396 - tmp397;
2027 output[126 * ostride] = tmp396 + tmp397;
2028 }
2029 }
2030 {
2031 fftw_real tmp552;
2032 fftw_real tmp672;
2033 fftw_real tmp584;
2034 fftw_real tmp665;
2035 fftw_real tmp648;
2036 fftw_real tmp674;
2037 fftw_real tmp664;
2038 fftw_real tmp675;
2039 fftw_real tmp567;
2040 fftw_real tmp583;
2041 fftw_real tmp585;
2042 fftw_real tmp649;
2043 ASSERT_ALIGNED_DOUBLE;
2044 tmp552 = K2_000000000 * (tmp536 + tmp551);
2045 tmp672 = K2_000000000 * (tmp668 - tmp671);
2046 tmp567 = K2_000000000 * (tmp559 + tmp566);
2047 tmp583 = tmp574 + tmp582;
2048 tmp584 = tmp567 + tmp583;
2049 tmp665 = tmp583 - tmp567;
2050 {
2051 fftw_real tmp616;
2052 fftw_real tmp647;
2053 fftw_real tmp656;
2054 fftw_real tmp663;
2055 ASSERT_ALIGNED_DOUBLE;
2056 tmp616 = tmp600 + tmp615;
2057 tmp647 = tmp631 + tmp646;
2058 tmp648 = K2_000000000 * (tmp616 + tmp647);
2059 tmp674 = tmp616 - tmp647;
2060 tmp656 = tmp652 - tmp655;
2061 tmp663 = tmp659 - tmp662;
2062 tmp664 = K2_000000000 * (tmp656 - tmp663);
2063 tmp675 = tmp656 + tmp663;
2064 }
2065 tmp585 = tmp552 + tmp584;
2066 output[65 * ostride] = tmp585 - tmp648;
2067 output[ostride] = tmp648 + tmp585;
2068 tmp649 = tmp584 - tmp552;
2069 output[33 * ostride] = tmp649 - tmp664;
2070 output[97 * ostride] = tmp664 + tmp649;
2071 {
2072 fftw_real tmp673;
2073 fftw_real tmp676;
2074 fftw_real tmp677;
2075 fftw_real tmp678;
2076 ASSERT_ALIGNED_DOUBLE;
2077 tmp673 = tmp665 - tmp672;
2078 tmp676 = K1_414213562 * (tmp674 - tmp675);
2079 output[81 * ostride] = tmp673 - tmp676;
2080 output[17 * ostride] = tmp676 + tmp673;
2081 tmp677 = tmp672 + tmp665;
2082 tmp678 = K1_414213562 * (tmp674 + tmp675);
2083 output[49 * ostride] = tmp677 - tmp678;
2084 output[113 * ostride] = tmp678 + tmp677;
2085 }
2086 }
2087 {
2088 fftw_real tmp681;
2089 fftw_real tmp698;
2090 fftw_real tmp693;
2091 fftw_real tmp701;
2092 fftw_real tmp686;
2093 fftw_real tmp697;
2094 fftw_real tmp690;
2095 fftw_real tmp700;
2096 ASSERT_ALIGNED_DOUBLE;
2097 {
2098 fftw_real tmp679;
2099 fftw_real tmp680;
2100 fftw_real tmp691;
2101 fftw_real tmp692;
2102 ASSERT_ALIGNED_DOUBLE;
2103 tmp679 = tmp536 - tmp551;
2104 tmp680 = tmp668 + tmp671;
2105 tmp681 = K1_414213562 * (tmp679 - tmp680);
2106 tmp698 = K1_414213562 * (tmp679 + tmp680);
2107 tmp691 = tmp652 + tmp655;
2108 tmp692 = tmp646 - tmp631;
2109 tmp693 = tmp691 + tmp692;
2110 tmp701 = tmp691 - tmp692;
2111 }
2112 {
2113 fftw_real tmp682;
2114 fftw_real tmp685;
2115 fftw_real tmp688;
2116 fftw_real tmp689;
2117 ASSERT_ALIGNED_DOUBLE;
2118 tmp682 = tmp582 - tmp574;
2119 tmp685 = K2_000000000 * (tmp683 - tmp684);
2120 tmp686 = tmp682 - tmp685;
2121 tmp697 = tmp685 + tmp682;
2122 tmp688 = tmp600 - tmp615;
2123 tmp689 = tmp659 + tmp662;
2124 tmp690 = tmp688 - tmp689;
2125 tmp700 = tmp688 + tmp689;
2126 }
2127 {
2128 fftw_real tmp687;
2129 fftw_real tmp694;
2130 fftw_real tmp695;
2131 fftw_real tmp696;
2132 ASSERT_ALIGNED_DOUBLE;
2133 tmp687 = tmp681 + tmp686;
2134 tmp694 = (K1_847759065 * tmp690) - (K765366864 * tmp693);
2135 output[73 * ostride] = tmp687 - tmp694;
2136 output[9 * ostride] = tmp694 + tmp687;
2137 tmp695 = tmp686 - tmp681;
2138 tmp696 = (K1_847759065 * tmp693) + (K765366864 * tmp690);
2139 output[41 * ostride] = tmp695 - tmp696;
2140 output[105 * ostride] = tmp696 + tmp695;
2141 }
2142 {
2143 fftw_real tmp699;
2144 fftw_real tmp702;
2145 fftw_real tmp703;
2146 fftw_real tmp704;
2147 ASSERT_ALIGNED_DOUBLE;
2148 tmp699 = tmp697 - tmp698;
2149 tmp702 = (K765366864 * tmp700) - (K1_847759065 * tmp701);
2150 output[89 * ostride] = tmp699 - tmp702;
2151 output[25 * ostride] = tmp702 + tmp699;
2152 tmp703 = tmp698 + tmp697;
2153 tmp704 = (K765366864 * tmp701) + (K1_847759065 * tmp700);
2154 output[57 * ostride] = tmp703 - tmp704;
2155 output[121 * ostride] = tmp704 + tmp703;
2156 }
2157 }
2158 {
2159 fftw_real tmp711;
2160 fftw_real tmp740;
2161 fftw_real tmp718;
2162 fftw_real tmp739;
2163 fftw_real tmp726;
2164 fftw_real tmp736;
2165 fftw_real tmp733;
2166 fftw_real tmp737;
2167 fftw_real tmp742;
2168 fftw_real tmp743;
2169 ASSERT_ALIGNED_DOUBLE;
2170 {
2171 fftw_real tmp707;
2172 fftw_real tmp710;
2173 fftw_real tmp714;
2174 fftw_real tmp717;
2175 ASSERT_ALIGNED_DOUBLE;
2176 tmp707 = tmp705 - tmp706;
2177 tmp710 = tmp708 + tmp709;
2178 tmp711 = (K1_847759065 * tmp707) - (K765366864 * tmp710);
2179 tmp740 = (K1_847759065 * tmp710) + (K765366864 * tmp707);
2180 tmp714 = K1_414213562 * (tmp712 - tmp713);
2181 tmp717 = tmp715 - tmp716;
2182 tmp718 = tmp714 + tmp717;
2183 tmp739 = tmp717 - tmp714;
2184 {
2185 fftw_real tmp722;
2186 fftw_real tmp725;
2187 fftw_real tmp729;
2188 fftw_real tmp732;
2189 ASSERT_ALIGNED_DOUBLE;
2190 tmp722 = tmp720 - tmp721;
2191 tmp725 = tmp723 + tmp724;
2192 tmp726 = (K980785280 * tmp722) - (K195090322 * tmp725);
2193 tmp736 = (K980785280 * tmp725) + (K195090322 * tmp722);
2194 tmp729 = tmp727 - tmp728;
2195 tmp732 = tmp730 + tmp731;
2196 tmp733 = (K831469612 * tmp729) - (K555570233 * tmp732);
2197 tmp737 = (K831469612 * tmp732) + (K555570233 * tmp729);
2198 }
2199 tmp742 = tmp726 - tmp733;
2200 tmp743 = tmp736 + tmp737;
2201 }
2202 {
2203 fftw_real tmp719;
2204 fftw_real tmp734;
2205 fftw_real tmp735;
2206 fftw_real tmp738;
2207 ASSERT_ALIGNED_DOUBLE;
2208 tmp719 = tmp711 + tmp718;
2209 tmp734 = K2_000000000 * (tmp726 + tmp733);
2210 output[69 * ostride] = tmp719 - tmp734;
2211 output[5 * ostride] = tmp734 + tmp719;
2212 tmp735 = tmp718 - tmp711;
2213 tmp738 = K2_000000000 * (tmp736 - tmp737);
2214 output[37 * ostride] = tmp735 - tmp738;
2215 output[101 * ostride] = tmp738 + tmp735;
2216 }
2217 {
2218 fftw_real tmp741;
2219 fftw_real tmp744;
2220 fftw_real tmp745;
2221 fftw_real tmp746;
2222 ASSERT_ALIGNED_DOUBLE;
2223 tmp741 = tmp739 - tmp740;
2224 tmp744 = K1_414213562 * (tmp742 - tmp743);
2225 output[85 * ostride] = tmp741 - tmp744;
2226 output[21 * ostride] = tmp744 + tmp741;
2227 tmp745 = tmp740 + tmp739;
2228 tmp746 = K1_414213562 * (tmp742 + tmp743);
2229 output[53 * ostride] = tmp745 - tmp746;
2230 output[117 * ostride] = tmp746 + tmp745;
2231 }
2232 }
2233 {
2234 fftw_real tmp749;
2235 fftw_real tmp766;
2236 fftw_real tmp752;
2237 fftw_real tmp765;
2238 fftw_real tmp756;
2239 fftw_real tmp762;
2240 fftw_real tmp759;
2241 fftw_real tmp763;
2242 fftw_real tmp768;
2243 fftw_real tmp769;
2244 ASSERT_ALIGNED_DOUBLE;
2245 {
2246 fftw_real tmp747;
2247 fftw_real tmp748;
2248 fftw_real tmp750;
2249 fftw_real tmp751;
2250 ASSERT_ALIGNED_DOUBLE;
2251 tmp747 = tmp705 + tmp706;
2252 tmp748 = tmp708 - tmp709;
2253 tmp749 = (K765366864 * tmp747) - (K1_847759065 * tmp748);
2254 tmp766 = (K765366864 * tmp748) + (K1_847759065 * tmp747);
2255 tmp750 = tmp716 + tmp715;
2256 tmp751 = K1_414213562 * (tmp712 + tmp713);
2257 tmp752 = tmp750 - tmp751;
2258 tmp765 = tmp751 + tmp750;
2259 {
2260 fftw_real tmp754;
2261 fftw_real tmp755;
2262 fftw_real tmp757;
2263 fftw_real tmp758;
2264 ASSERT_ALIGNED_DOUBLE;
2265 tmp754 = tmp720 + tmp721;
2266 tmp755 = tmp723 - tmp724;
2267 tmp756 = (K831469612 * tmp754) - (K555570233 * tmp755);
2268 tmp762 = (K831469612 * tmp755) + (K555570233 * tmp754);
2269 tmp757 = tmp730 - tmp731;
2270 tmp758 = tmp727 + tmp728;
2271 tmp759 = (K980785280 * tmp757) + (K195090322 * tmp758);
2272 tmp763 = (K980785280 * tmp758) - (K195090322 * tmp757);
2273 }
2274 tmp768 = tmp756 + tmp759;
2275 tmp769 = tmp762 + tmp763;
2276 }
2277 {
2278 fftw_real tmp753;
2279 fftw_real tmp760;
2280 fftw_real tmp761;
2281 fftw_real tmp764;
2282 ASSERT_ALIGNED_DOUBLE;
2283 tmp753 = tmp749 + tmp752;
2284 tmp760 = K2_000000000 * (tmp756 - tmp759);
2285 output[77 * ostride] = tmp753 - tmp760;
2286 output[13 * ostride] = tmp760 + tmp753;
2287 tmp761 = tmp752 - tmp749;
2288 tmp764 = K2_000000000 * (tmp762 - tmp763);
2289 output[45 * ostride] = tmp761 - tmp764;
2290 output[109 * ostride] = tmp764 + tmp761;
2291 }
2292 {
2293 fftw_real tmp767;
2294 fftw_real tmp770;
2295 fftw_real tmp771;
2296 fftw_real tmp772;
2297 ASSERT_ALIGNED_DOUBLE;
2298 tmp767 = tmp765 - tmp766;
2299 tmp770 = K1_414213562 * (tmp768 - tmp769);
2300 output[93 * ostride] = tmp767 - tmp770;
2301 output[29 * ostride] = tmp770 + tmp767;
2302 tmp771 = tmp766 + tmp765;
2303 tmp772 = K1_414213562 * (tmp768 + tmp769);
2304 output[61 * ostride] = tmp771 - tmp772;
2305 output[125 * ostride] = tmp772 + tmp771;
2306 }
2307 }
2308 {
2309 fftw_real tmp802;
2310 fftw_real tmp858;
2311 fftw_real tmp787;
2312 fftw_real tmp851;
2313 fftw_real tmp834;
2314 fftw_real tmp861;
2315 fftw_real tmp850;
2316 fftw_real tmp860;
2317 fftw_real tmp779;
2318 fftw_real tmp786;
2319 fftw_real tmp803;
2320 fftw_real tmp835;
2321 ASSERT_ALIGNED_DOUBLE;
2322 tmp802 = K2_000000000 * (tmp794 + tmp801);
2323 tmp858 = K2_000000000 * (tmp854 - tmp857);
2324 tmp779 = K2_000000000 * (tmp775 - tmp778);
2325 tmp786 = tmp782 + tmp785;
2326 tmp787 = tmp779 + tmp786;
2327 tmp851 = tmp786 - tmp779;
2328 {
2329 fftw_real tmp818;
2330 fftw_real tmp833;
2331 fftw_real tmp842;
2332 fftw_real tmp849;
2333 ASSERT_ALIGNED_DOUBLE;
2334 tmp818 = tmp810 - tmp817;
2335 tmp833 = tmp825 - tmp832;
2336 tmp834 = K2_000000000 * (tmp818 - tmp833);
2337 tmp861 = tmp818 + tmp833;
2338 tmp842 = tmp838 + tmp841;
2339 tmp849 = tmp845 + tmp848;
2340 tmp850 = K2_000000000 * (tmp842 + tmp849);
2341 tmp860 = tmp842 - tmp849;
2342 }
2343 tmp803 = tmp787 - tmp802;
2344 output[35 * ostride] = tmp803 - tmp834;
2345 output[99 * ostride] = tmp834 + tmp803;
2346 tmp835 = tmp802 + tmp787;
2347 output[67 * ostride] = tmp835 - tmp850;
2348 output[3 * ostride] = tmp850 + tmp835;
2349 {
2350 fftw_real tmp859;
2351 fftw_real tmp862;
2352 fftw_real tmp863;
2353 fftw_real tmp864;
2354 ASSERT_ALIGNED_DOUBLE;
2355 tmp859 = tmp851 - tmp858;
2356 tmp862 = K1_414213562 * (tmp860 - tmp861);
2357 output[83 * ostride] = tmp859 - tmp862;
2358 output[19 * ostride] = tmp862 + tmp859;
2359 tmp863 = tmp858 + tmp851;
2360 tmp864 = K1_414213562 * (tmp860 + tmp861);
2361 output[51 * ostride] = tmp863 - tmp864;
2362 output[115 * ostride] = tmp864 + tmp863;
2363 }
2364 }
2365 {
2366 fftw_real tmp869;
2367 fftw_real tmp884;
2368 fftw_real tmp879;
2369 fftw_real tmp887;
2370 fftw_real tmp872;
2371 fftw_real tmp883;
2372 fftw_real tmp876;
2373 fftw_real tmp886;
2374 ASSERT_ALIGNED_DOUBLE;
2375 {
2376 fftw_real tmp867;
2377 fftw_real tmp868;
2378 fftw_real tmp877;
2379 fftw_real tmp878;
2380 ASSERT_ALIGNED_DOUBLE;
2381 tmp867 = K2_000000000 * (tmp865 - tmp866);
2382 tmp868 = tmp785 - tmp782;
2383 tmp869 = tmp867 + tmp868;
2384 tmp884 = tmp868 - tmp867;
2385 tmp877 = tmp810 + tmp817;
2386 tmp878 = tmp848 - tmp845;
2387 tmp879 = tmp877 - tmp878;
2388 tmp887 = tmp877 + tmp878;
2389 }
2390 {
2391 fftw_real tmp870;
2392 fftw_real tmp871;
2393 fftw_real tmp874;
2394 fftw_real tmp875;
2395 ASSERT_ALIGNED_DOUBLE;
2396 tmp870 = tmp794 - tmp801;
2397 tmp871 = tmp854 + tmp857;
2398 tmp872 = K1_414213562 * (tmp870 + tmp871);
2399 tmp883 = K1_414213562 * (tmp870 - tmp871);
2400 tmp874 = tmp838 - tmp841;
2401 tmp875 = tmp825 + tmp832;
2402 tmp876 = tmp874 + tmp875;
2403 tmp886 = tmp874 - tmp875;
2404 }
2405 {
2406 fftw_real tmp873;
2407 fftw_real tmp880;
2408 fftw_real tmp881;
2409 fftw_real tmp882;
2410 ASSERT_ALIGNED_DOUBLE;
2411 tmp873 = tmp869 - tmp872;
2412 tmp880 = (K765366864 * tmp876) - (K1_847759065 * tmp879);
2413 output[91 * ostride] = tmp873 - tmp880;
2414 output[27 * ostride] = tmp880 + tmp873;
2415 tmp881 = tmp872 + tmp869;
2416 tmp882 = (K765366864 * tmp879) + (K1_847759065 * tmp876);
2417 output[59 * ostride] = tmp881 - tmp882;
2418 output[123 * ostride] = tmp882 + tmp881;
2419 }
2420 {
2421 fftw_real tmp885;
2422 fftw_real tmp888;
2423 fftw_real tmp889;
2424 fftw_real tmp890;
2425 ASSERT_ALIGNED_DOUBLE;
2426 tmp885 = tmp883 + tmp884;
2427 tmp888 = (K1_847759065 * tmp886) - (K765366864 * tmp887);
2428 output[75 * ostride] = tmp885 - tmp888;
2429 output[11 * ostride] = tmp888 + tmp885;
2430 tmp889 = tmp884 - tmp883;
2431 tmp890 = (K1_847759065 * tmp887) + (K765366864 * tmp886);
2432 output[43 * ostride] = tmp889 - tmp890;
2433 output[107 * ostride] = tmp890 + tmp889;
2434 }
2435 }
2436 {
2437 fftw_real tmp897;
2438 fftw_real tmp926;
2439 fftw_real tmp904;
2440 fftw_real tmp925;
2441 fftw_real tmp912;
2442 fftw_real tmp922;
2443 fftw_real tmp919;
2444 fftw_real tmp923;
2445 fftw_real tmp928;
2446 fftw_real tmp929;
2447 ASSERT_ALIGNED_DOUBLE;
2448 {
2449 fftw_real tmp893;
2450 fftw_real tmp896;
2451 fftw_real tmp900;
2452 fftw_real tmp903;
2453 ASSERT_ALIGNED_DOUBLE;
2454 tmp893 = tmp891 - tmp892;
2455 tmp896 = tmp894 + tmp895;
2456 tmp897 = (K1_847759065 * tmp893) - (K765366864 * tmp896);
2457 tmp926 = (K1_847759065 * tmp896) + (K765366864 * tmp893);
2458 tmp900 = K1_414213562 * (tmp898 - tmp899);
2459 tmp903 = tmp901 - tmp902;
2460 tmp904 = tmp900 + tmp903;
2461 tmp925 = tmp903 - tmp900;
2462 {
2463 fftw_real tmp908;
2464 fftw_real tmp911;
2465 fftw_real tmp915;
2466 fftw_real tmp918;
2467 ASSERT_ALIGNED_DOUBLE;
2468 tmp908 = tmp906 - tmp907;
2469 tmp911 = tmp909 + tmp910;
2470 tmp912 = (K980785280 * tmp908) - (K195090322 * tmp911);
2471 tmp922 = (K980785280 * tmp911) + (K195090322 * tmp908);
2472 tmp915 = tmp913 - tmp914;
2473 tmp918 = tmp916 - tmp917;
2474 tmp919 = (K831469612 * tmp915) - (K555570233 * tmp918);
2475 tmp923 = (K831469612 * tmp918) + (K555570233 * tmp915);
2476 }
2477 tmp928 = tmp912 - tmp919;
2478 tmp929 = tmp922 + tmp923;
2479 }
2480 {
2481 fftw_real tmp905;
2482 fftw_real tmp920;
2483 fftw_real tmp921;
2484 fftw_real tmp924;
2485 ASSERT_ALIGNED_DOUBLE;
2486 tmp905 = tmp897 + tmp904;
2487 tmp920 = K2_000000000 * (tmp912 + tmp919);
2488 output[71 * ostride] = tmp905 - tmp920;
2489 output[7 * ostride] = tmp920 + tmp905;
2490 tmp921 = tmp904 - tmp897;
2491 tmp924 = K2_000000000 * (tmp922 - tmp923);
2492 output[39 * ostride] = tmp921 - tmp924;
2493 output[103 * ostride] = tmp924 + tmp921;
2494 }
2495 {
2496 fftw_real tmp927;
2497 fftw_real tmp930;
2498 fftw_real tmp931;
2499 fftw_real tmp932;
2500 ASSERT_ALIGNED_DOUBLE;
2501 tmp927 = tmp925 - tmp926;
2502 tmp930 = K1_414213562 * (tmp928 - tmp929);
2503 output[87 * ostride] = tmp927 - tmp930;
2504 output[23 * ostride] = tmp930 + tmp927;
2505 tmp931 = tmp926 + tmp925;
2506 tmp932 = K1_414213562 * (tmp928 + tmp929);
2507 output[55 * ostride] = tmp931 - tmp932;
2508 output[119 * ostride] = tmp932 + tmp931;
2509 }
2510 }
2511 {
2512 fftw_real tmp935;
2513 fftw_real tmp951;
2514 fftw_real tmp938;
2515 fftw_real tmp952;
2516 fftw_real tmp942;
2517 fftw_real tmp948;
2518 fftw_real tmp945;
2519 fftw_real tmp949;
2520 fftw_real tmp954;
2521 fftw_real tmp955;
2522 ASSERT_ALIGNED_DOUBLE;
2523 {
2524 fftw_real tmp933;
2525 fftw_real tmp934;
2526 fftw_real tmp936;
2527 fftw_real tmp937;
2528 ASSERT_ALIGNED_DOUBLE;
2529 tmp933 = tmp902 + tmp901;
2530 tmp934 = K1_414213562 * (tmp898 + tmp899);
2531 tmp935 = tmp933 - tmp934;
2532 tmp951 = tmp934 + tmp933;
2533 tmp936 = tmp891 + tmp892;
2534 tmp937 = tmp894 - tmp895;
2535 tmp938 = (K765366864 * tmp936) - (K1_847759065 * tmp937);
2536 tmp952 = (K765366864 * tmp937) + (K1_847759065 * tmp936);
2537 {
2538 fftw_real tmp940;
2539 fftw_real tmp941;
2540 fftw_real tmp943;
2541 fftw_real tmp944;
2542 ASSERT_ALIGNED_DOUBLE;
2543 tmp940 = tmp909 - tmp910;
2544 tmp941 = tmp906 + tmp907;
2545 tmp942 = (K831469612 * tmp940) + (K555570233 * tmp941);
2546 tmp948 = (K831469612 * tmp941) - (K555570233 * tmp940);
2547 tmp943 = tmp913 + tmp914;
2548 tmp944 = tmp916 + tmp917;
2549 tmp945 = (K980785280 * tmp943) - (K195090322 * tmp944);
2550 tmp949 = (K980785280 * tmp944) + (K195090322 * tmp943);
2551 }
2552 tmp954 = tmp948 + tmp949;
2553 tmp955 = tmp942 + tmp945;
2554 }
2555 {
2556 fftw_real tmp939;
2557 fftw_real tmp946;
2558 fftw_real tmp947;
2559 fftw_real tmp950;
2560 ASSERT_ALIGNED_DOUBLE;
2561 tmp939 = tmp935 - tmp938;
2562 tmp946 = K2_000000000 * (tmp942 - tmp945);
2563 output[47 * ostride] = tmp939 - tmp946;
2564 output[111 * ostride] = tmp946 + tmp939;
2565 tmp947 = tmp938 + tmp935;
2566 tmp950 = K2_000000000 * (tmp948 - tmp949);
2567 output[79 * ostride] = tmp947 - tmp950;
2568 output[15 * ostride] = tmp950 + tmp947;
2569 }
2570 {
2571 fftw_real tmp953;
2572 fftw_real tmp956;
2573 fftw_real tmp957;
2574 fftw_real tmp958;
2575 ASSERT_ALIGNED_DOUBLE;
2576 tmp953 = tmp951 - tmp952;
2577 tmp956 = K1_414213562 * (tmp954 - tmp955);
2578 output[95 * ostride] = tmp953 - tmp956;
2579 output[31 * ostride] = tmp956 + tmp953;
2580 tmp957 = tmp952 + tmp951;
2581 tmp958 = K1_414213562 * (tmp955 + tmp954);
2582 output[63 * ostride] = tmp957 - tmp958;
2583 output[127 * ostride] = tmp958 + tmp957;
2584 }
2585 }
2586 }
2587
2588 fftw_codelet_desc fftw_hc2real_128_desc = {
2589 "fftw_hc2real_128",
2590 (void (*)()) fftw_hc2real_128,
2591 128,
2592 FFTW_BACKWARD,
2593 FFTW_HC2REAL,
2594 2831,
2595 0,
2596 (const int *) 0,
2597 };
2598