annotate src/fftw-3.3.5/dft/scalar/codelets/t2_64.c @ 83:ae30d91d2ffe

Replace these with versions built using an older toolset (so as to avoid ABI compatibilities when linking on Ubuntu 14.04 for packaging purposes)
author Chris Cannam
date Fri, 07 Feb 2020 11:51:13 +0000
parents 2cd0e3b3e1fd
children
rev   line source
Chris@42 1 /*
Chris@42 2 * Copyright (c) 2003, 2007-14 Matteo Frigo
Chris@42 3 * Copyright (c) 2003, 2007-14 Massachusetts Institute of Technology
Chris@42 4 *
Chris@42 5 * This program is free software; you can redistribute it and/or modify
Chris@42 6 * it under the terms of the GNU General Public License as published by
Chris@42 7 * the Free Software Foundation; either version 2 of the License, or
Chris@42 8 * (at your option) any later version.
Chris@42 9 *
Chris@42 10 * This program is distributed in the hope that it will be useful,
Chris@42 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Chris@42 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Chris@42 13 * GNU General Public License for more details.
Chris@42 14 *
Chris@42 15 * You should have received a copy of the GNU General Public License
Chris@42 16 * along with this program; if not, write to the Free Software
Chris@42 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Chris@42 18 *
Chris@42 19 */
Chris@42 20
Chris@42 21 /* This file was automatically generated --- DO NOT EDIT */
Chris@42 22 /* Generated on Sat Jul 30 16:36:47 EDT 2016 */
Chris@42 23
Chris@42 24 #include "codelet-dft.h"
Chris@42 25
Chris@42 26 #ifdef HAVE_FMA
Chris@42 27
Chris@42 28 /* Generated by: ../../../genfft/gen_twiddle.native -fma -reorder-insns -schedule-for-pipeline -compact -variables 4 -pipeline-latency 4 -twiddle-log3 -precompute-twiddles -n 64 -name t2_64 -include t.h */
Chris@42 29
Chris@42 30 /*
Chris@42 31 * This function contains 1154 FP additions, 840 FP multiplications,
Chris@42 32 * (or, 520 additions, 206 multiplications, 634 fused multiply/add),
Chris@42 33 * 349 stack variables, 15 constants, and 256 memory accesses
Chris@42 34 */
Chris@42 35 #include "t.h"
Chris@42 36
Chris@42 37 static void t2_64(R *ri, R *ii, const R *W, stride rs, INT mb, INT me, INT ms)
Chris@42 38 {
Chris@42 39 DK(KP995184726, +0.995184726672196886244836953109479921575474869);
Chris@42 40 DK(KP773010453, +0.773010453362736960810906609758469800971041293);
Chris@42 41 DK(KP956940335, +0.956940335732208864935797886980269969482849206);
Chris@42 42 DK(KP881921264, +0.881921264348355029712756863660388349508442621);
Chris@42 43 DK(KP820678790, +0.820678790828660330972281985331011598767386482);
Chris@42 44 DK(KP098491403, +0.098491403357164253077197521291327432293052451);
Chris@42 45 DK(KP534511135, +0.534511135950791641089685961295362908582039528);
Chris@42 46 DK(KP303346683, +0.303346683607342391675883946941299872384187453);
Chris@42 47 DK(KP831469612, +0.831469612302545237078788377617905756738560812);
Chris@42 48 DK(KP980785280, +0.980785280403230449126182236134239036973933731);
Chris@42 49 DK(KP668178637, +0.668178637919298919997757686523080761552472251);
Chris@42 50 DK(KP198912367, +0.198912367379658006911597622644676228597850501);
Chris@42 51 DK(KP923879532, +0.923879532511286756128183189396788286822416626);
Chris@42 52 DK(KP707106781, +0.707106781186547524400844362104849039284835938);
Chris@42 53 DK(KP414213562, +0.414213562373095048801688724209698078569671875);
Chris@42 54 {
Chris@42 55 INT m;
Chris@42 56 for (m = mb, W = W + (mb * 10); m < me; m = m + 1, ri = ri + ms, ii = ii + ms, W = W + 10, MAKE_VOLATILE_STRIDE(128, rs)) {
Chris@42 57 E Tg0, TlC, TlB, Tg3;
Chris@42 58 {
Chris@42 59 E T2, T3, Tc, T8, Te, T5, T6, T14, T3d, T3i, TJ, T7, Tr, T3g, TG;
Chris@42 60 E T10, T3a, TL, TP, Tb, Tt, T17, Td, Ti, T3N, T3R, T1i, Tu, T1I, T2U;
Chris@42 61 E T1t, T3U, T5O, T48, T2u, T7B, TK, T79, T3D, T2h, T2l, T3G, T1x, T3X, T2d;
Chris@42 62 E T1M, T2X, T4B, T4x, T3j, T4T, T29, T5s, T81, T5w, T7X, T7N, T7h, T64, T6a;
Chris@42 63 E T6e, T7l, T60, T7R, T6h, T5A, T7o, T6J, T6k, T5E, T6N, T7r, T6x, T6t, T7c;
Chris@42 64 E TO, T2x, T7E, TU, TQ, T2C, T2y, T5R, T4b, T4c, T4g, T4W, T3m, T3r, T3n;
Chris@42 65 E T1k, Tx, Ty, T4p, T4s, TC, T23, T1Z, T19, Th, T31, T35, T1e, T44, T41;
Chris@42 66 E T1a, T6W, T70, T55, T59, T3v, T3z, Tf, T1R, T2N, T2Q, T1V, T1p, T1l, Tm;
Chris@42 67 {
Chris@42 68 E T1H, T1s, T2g, Tg, Tw, TH, T2t, T47, T3h, T3M, T4w, T28, T3Q, T4A, T2c;
Chris@42 69 E Ts;
Chris@42 70 {
Chris@42 71 E T4, T13, TI, TF, TZ, Ta, T9;
Chris@42 72 T2 = W[0];
Chris@42 73 T3 = W[2];
Chris@42 74 Tc = W[5];
Chris@42 75 T8 = W[4];
Chris@42 76 Te = W[6];
Chris@42 77 T4 = T2 * T3;
Chris@42 78 T13 = T2 * Tc;
Chris@42 79 TI = T3 * Tc;
Chris@42 80 TF = T3 * T8;
Chris@42 81 T1H = T8 * Te;
Chris@42 82 TZ = T2 * T8;
Chris@42 83 T5 = W[1];
Chris@42 84 T6 = W[3];
Chris@42 85 T1s = T3 * Te;
Chris@42 86 T2g = T2 * Te;
Chris@42 87 T14 = FNMS(T5, T8, T13);
Chris@42 88 T3d = FMA(T5, T8, T13);
Chris@42 89 T3i = FNMS(T6, T8, TI);
Chris@42 90 TJ = FMA(T6, T8, TI);
Chris@42 91 T7 = FNMS(T5, T6, T4);
Chris@42 92 Tr = FMA(T5, T6, T4);
Chris@42 93 Ta = T2 * T6;
Chris@42 94 Tg = T7 * Tc;
Chris@42 95 Tw = Tr * Tc;
Chris@42 96 T3g = FMA(T6, Tc, TF);
Chris@42 97 TG = FNMS(T6, Tc, TF);
Chris@42 98 T10 = FMA(T5, Tc, TZ);
Chris@42 99 T3a = FNMS(T5, Tc, TZ);
Chris@42 100 TH = TG * Te;
Chris@42 101 T2t = T10 * Te;
Chris@42 102 T47 = T3a * Te;
Chris@42 103 T3h = T3g * Te;
Chris@42 104 TL = W[8];
Chris@42 105 TP = W[9];
Chris@42 106 T9 = T7 * T8;
Chris@42 107 Tb = FMA(T5, T3, Ta);
Chris@42 108 Tt = FNMS(T5, T3, Ta);
Chris@42 109 T3M = T2 * TL;
Chris@42 110 T4w = T8 * TL;
Chris@42 111 T28 = T3 * TL;
Chris@42 112 T3Q = T2 * TP;
Chris@42 113 T4A = T8 * TP;
Chris@42 114 T2c = T3 * TP;
Chris@42 115 T17 = FNMS(Tb, Tc, T9);
Chris@42 116 Td = FMA(Tb, Tc, T9);
Chris@42 117 Ts = Tr * T8;
Chris@42 118 Ti = W[7];
Chris@42 119 }
Chris@42 120 {
Chris@42 121 E T5r, T80, T1L, T2k, T1w, T5z, T2B, T2v;
Chris@42 122 T3N = FMA(T5, TP, T3M);
Chris@42 123 T3R = FNMS(T5, TL, T3Q);
Chris@42 124 T1i = FMA(Tt, Tc, Ts);
Chris@42 125 Tu = FNMS(Tt, Tc, Ts);
Chris@42 126 T1I = FNMS(Tc, Ti, T1H);
Chris@42 127 T2U = FMA(Tc, Ti, T1H);
Chris@42 128 T1t = FMA(T6, Ti, T1s);
Chris@42 129 T3U = FNMS(T6, Ti, T1s);
Chris@42 130 T5O = FNMS(T3d, Ti, T47);
Chris@42 131 T48 = FMA(T3d, Ti, T47);
Chris@42 132 T2u = FMA(T14, Ti, T2t);
Chris@42 133 T7B = FNMS(T14, Ti, T2t);
Chris@42 134 T1L = T8 * Ti;
Chris@42 135 T2k = T2 * Ti;
Chris@42 136 T1w = T3 * Ti;
Chris@42 137 TK = FMA(TJ, Ti, TH);
Chris@42 138 T79 = FNMS(TJ, Ti, TH);
Chris@42 139 T3D = FMA(T5, Ti, T2g);
Chris@42 140 T2h = FNMS(T5, Ti, T2g);
Chris@42 141 T2l = FMA(T5, Te, T2k);
Chris@42 142 T3G = FNMS(T5, Te, T2k);
Chris@42 143 T1x = FNMS(T6, Te, T1w);
Chris@42 144 T3X = FMA(T6, Te, T1w);
Chris@42 145 T2d = FNMS(T6, TL, T2c);
Chris@42 146 T1M = FMA(Tc, Te, T1L);
Chris@42 147 T2X = FNMS(Tc, Te, T1L);
Chris@42 148 T4B = FNMS(Tc, TL, T4A);
Chris@42 149 T4x = FMA(Tc, TP, T4w);
Chris@42 150 T3j = FMA(T3i, Ti, T3h);
Chris@42 151 T4T = FNMS(T3i, Ti, T3h);
Chris@42 152 T29 = FMA(T6, TP, T28);
Chris@42 153 T5r = T3g * TL;
Chris@42 154 T80 = T7 * TP;
Chris@42 155 {
Chris@42 156 E T7M, T7g, T63, T5v, T7W;
Chris@42 157 T5v = T3g * TP;
Chris@42 158 T7W = T7 * TL;
Chris@42 159 T5s = FMA(T3i, TP, T5r);
Chris@42 160 T81 = FNMS(Tb, TL, T80);
Chris@42 161 T5w = FNMS(T3i, TL, T5v);
Chris@42 162 T7X = FMA(Tb, TP, T7W);
Chris@42 163 T7M = TG * TL;
Chris@42 164 T7g = T10 * TL;
Chris@42 165 T63 = T3a * TP;
Chris@42 166 {
Chris@42 167 E T6d, T7k, T69, T5Z, T7Q;
Chris@42 168 T69 = Tr * TL;
Chris@42 169 T7N = FMA(TJ, TP, T7M);
Chris@42 170 T7h = FMA(T14, TP, T7g);
Chris@42 171 T64 = FNMS(T3d, TL, T63);
Chris@42 172 T6a = FMA(Tt, TP, T69);
Chris@42 173 T6d = Tr * TP;
Chris@42 174 T7k = T10 * TP;
Chris@42 175 T5Z = T3a * TL;
Chris@42 176 T7Q = TG * TP;
Chris@42 177 T6e = FNMS(Tt, TL, T6d);
Chris@42 178 T7l = FNMS(T14, TL, T7k);
Chris@42 179 T60 = FMA(T3d, TP, T5Z);
Chris@42 180 T7R = FNMS(TJ, TL, T7Q);
Chris@42 181 T5z = Tr * Te;
Chris@42 182 }
Chris@42 183 }
Chris@42 184 {
Chris@42 185 E T6I, T5D, T6M, T6s, T6w;
Chris@42 186 T6I = T7 * Te;
Chris@42 187 T5D = Tr * Ti;
Chris@42 188 T6M = T7 * Ti;
Chris@42 189 T6h = FNMS(Tt, Ti, T5z);
Chris@42 190 T5A = FMA(Tt, Ti, T5z);
Chris@42 191 T7o = FMA(Tb, Ti, T6I);
Chris@42 192 T6J = FNMS(Tb, Ti, T6I);
Chris@42 193 T6k = FMA(Tt, Te, T5D);
Chris@42 194 T5E = FNMS(Tt, Te, T5D);
Chris@42 195 T6N = FMA(Tb, Te, T6M);
Chris@42 196 T7r = FNMS(Tb, Te, T6M);
Chris@42 197 T6s = T2U * TL;
Chris@42 198 T6w = T2U * TP;
Chris@42 199 {
Chris@42 200 E TN, TT, TM, T2w;
Chris@42 201 TN = TG * Ti;
Chris@42 202 T2w = T10 * Ti;
Chris@42 203 T6x = FNMS(T2X, TL, T6w);
Chris@42 204 T6t = FMA(T2X, TP, T6s);
Chris@42 205 T7c = FMA(TJ, Te, TN);
Chris@42 206 TO = FNMS(TJ, Te, TN);
Chris@42 207 TT = TK * TP;
Chris@42 208 TM = TK * TL;
Chris@42 209 T2x = FNMS(T14, Te, T2w);
Chris@42 210 T7E = FMA(T14, Te, T2w);
Chris@42 211 TU = FNMS(TO, TL, TT);
Chris@42 212 TQ = FMA(TO, TP, TM);
Chris@42 213 T2B = T2u * TP;
Chris@42 214 T2v = T2u * TL;
Chris@42 215 }
Chris@42 216 }
Chris@42 217 {
Chris@42 218 E T1Y, T22, Tv, TB;
Chris@42 219 {
Chris@42 220 E T49, T4f, T4a, T3l, T3q, T3k;
Chris@42 221 T4a = T3a * Ti;
Chris@42 222 T2C = FNMS(T2x, TL, T2B);
Chris@42 223 T2y = FMA(T2x, TP, T2v);
Chris@42 224 T5R = FMA(T3d, Te, T4a);
Chris@42 225 T4b = FNMS(T3d, Te, T4a);
Chris@42 226 T49 = T48 * TL;
Chris@42 227 T4f = T48 * TP;
Chris@42 228 T3l = T3g * Ti;
Chris@42 229 T4c = FMA(T4b, TP, T49);
Chris@42 230 T4g = FNMS(T4b, TL, T4f);
Chris@42 231 T4W = FMA(T3i, Te, T3l);
Chris@42 232 T3m = FNMS(T3i, Te, T3l);
Chris@42 233 T1Y = Tu * TL;
Chris@42 234 T3q = T3j * TP;
Chris@42 235 T3k = T3j * TL;
Chris@42 236 T22 = Tu * TP;
Chris@42 237 Tv = Tu * Te;
Chris@42 238 T3r = FNMS(T3m, TL, T3q);
Chris@42 239 T3n = FMA(T3m, TP, T3k);
Chris@42 240 TB = Tu * Ti;
Chris@42 241 T1k = FNMS(Tt, T8, Tw);
Chris@42 242 Tx = FMA(Tt, T8, Tw);
Chris@42 243 }
Chris@42 244 {
Chris@42 245 E T30, T34, T18, T1d;
Chris@42 246 T30 = T17 * TL;
Chris@42 247 T34 = T17 * TP;
Chris@42 248 T18 = T17 * Te;
Chris@42 249 Ty = FMA(Tx, Ti, Tv);
Chris@42 250 T4p = FNMS(Tx, Ti, Tv);
Chris@42 251 T4s = FMA(Tx, Te, TB);
Chris@42 252 TC = FNMS(Tx, Te, TB);
Chris@42 253 T23 = FNMS(Tx, TL, T22);
Chris@42 254 T1Z = FMA(Tx, TP, T1Y);
Chris@42 255 T1d = T17 * Ti;
Chris@42 256 T19 = FMA(Tb, T8, Tg);
Chris@42 257 Th = FNMS(Tb, T8, Tg);
Chris@42 258 {
Chris@42 259 E T1j, T1o, T1Q, T1U;
Chris@42 260 T1j = T1i * TL;
Chris@42 261 {
Chris@42 262 E T6V, T6Z, T54, T58;
Chris@42 263 T6V = Ty * TL;
Chris@42 264 T6Z = Ty * TP;
Chris@42 265 T31 = FMA(T19, TP, T30);
Chris@42 266 T35 = FNMS(T19, TL, T34);
Chris@42 267 T1e = FMA(T19, Te, T1d);
Chris@42 268 T44 = FNMS(T19, Te, T1d);
Chris@42 269 T41 = FMA(T19, Ti, T18);
Chris@42 270 T1a = FNMS(T19, Ti, T18);
Chris@42 271 T6W = FMA(TC, TP, T6V);
Chris@42 272 T70 = FNMS(TC, TL, T6Z);
Chris@42 273 T1o = T1i * TP;
Chris@42 274 T54 = T41 * TL;
Chris@42 275 T58 = T41 * TP;
Chris@42 276 T1Q = T1i * Te;
Chris@42 277 T1U = T1i * Ti;
Chris@42 278 T55 = FMA(T44, TP, T54);
Chris@42 279 T59 = FNMS(T44, TL, T58);
Chris@42 280 }
Chris@42 281 T3v = Td * TL;
Chris@42 282 T3z = Td * TP;
Chris@42 283 Tf = Td * Te;
Chris@42 284 T1R = FMA(T1k, Ti, T1Q);
Chris@42 285 T2N = FNMS(T1k, Ti, T1Q);
Chris@42 286 T2Q = FMA(T1k, Te, T1U);
Chris@42 287 T1V = FNMS(T1k, Te, T1U);
Chris@42 288 T1p = FNMS(T1k, TL, T1o);
Chris@42 289 T1l = FMA(T1k, TP, T1j);
Chris@42 290 Tm = Td * Ti;
Chris@42 291 }
Chris@42 292 }
Chris@42 293 }
Chris@42 294 }
Chris@42 295 }
Chris@42 296 {
Chris@42 297 E Tl9, TlD, TY, Tg4, T8w, TdS, TkE, Tkd, T2G, Tge, Tgh, TiK, Te1, T98, Te0;
Chris@42 298 E T9f, Te5, T9p, Tgq, T39, Te8, T9M, TiN, Tgn, TeE, TbI, Thr, T74, TeP, TcB;
Chris@42 299 E Tja, Thc, T8D, TdT, T1B, TkD, T8K, TdU, Tg7, Tk7, T8T, TdY, T27, Tg9, T90;
Chris@42 300 E TdX, Tgc, TiJ, T9Y, Tec, T4k, TgB, Tal, Tef, Tgy, TiT, Taz, Tel, T5d, Th0;
Chris@42 301 E Tbs, Tew, TgL, TiZ, T3K, Tgo, Tgt, TiO, T9P, Te6, T9E, Te9, T4L, Tgz, TgE;
Chris@42 302 E TiU, Tao, Ted, Tad, Teg, T5I, TgM, Th3, Tj0, Tbv, Tem, TaO, Tex, T7v, Thd;
Chris@42 303 E Thu, Tjb, TcE, TeF, TbX, TeQ, T68, Tj5, Tez, Teq, Tbj, Tbx, TgS, Th5, T6B;
Chris@42 304 E Tj6, TeA, Tet, Tb4, Tby, TgX, Th6, T7V, Tjg, TeS, TeJ, Tcs, TcG, Thj, Thw;
Chris@42 305 E T84, T83, T85, Tc7, T8k, Tc3, T86, T89, T8b;
Chris@42 306 {
Chris@42 307 E T3w, T3A, T4H, T4E, T8e, T8i, T5j, T5n, T4U, T4S, T4V, Tau, T5b, Tbq, T4X;
Chris@42 308 E T50, T52;
Chris@42 309 {
Chris@42 310 E T72, Tcz, Tcv, T6Q, Tha, TbG, T6U, Tcx, T99, T9e;
Chris@42 311 {
Chris@42 312 E T1, Tkb, Tp, Tka, TR, TV, TE, T8s, TS, T8t;
Chris@42 313 {
Chris@42 314 E Tn, Tj, T8d, T8h, T5i, T5m;
Chris@42 315 T1 = ri[0];
Chris@42 316 T8d = T1R * TL;
Chris@42 317 T8h = T1R * TP;
Chris@42 318 T3w = FMA(Th, TP, T3v);
Chris@42 319 T3A = FNMS(Th, TL, T3z);
Chris@42 320 Tn = FMA(Th, Te, Tm);
Chris@42 321 T4H = FNMS(Th, Te, Tm);
Chris@42 322 T4E = FMA(Th, Ti, Tf);
Chris@42 323 Tj = FNMS(Th, Ti, Tf);
Chris@42 324 T8e = FMA(T1V, TP, T8d);
Chris@42 325 T8i = FNMS(T1V, TL, T8h);
Chris@42 326 Tkb = ii[0];
Chris@42 327 T5i = T4E * TL;
Chris@42 328 T5m = T4E * TP;
Chris@42 329 {
Chris@42 330 E Tk, To, Tl, Tk9;
Chris@42 331 Tk = ri[WS(rs, 32)];
Chris@42 332 To = ii[WS(rs, 32)];
Chris@42 333 T5j = FMA(T4H, TP, T5i);
Chris@42 334 T5n = FNMS(T4H, TL, T5m);
Chris@42 335 Tl = Tj * Tk;
Chris@42 336 Tk9 = Tj * To;
Chris@42 337 {
Chris@42 338 E Tz, TD, TA, T8r;
Chris@42 339 Tz = ri[WS(rs, 16)];
Chris@42 340 TD = ii[WS(rs, 16)];
Chris@42 341 Tp = FMA(Tn, To, Tl);
Chris@42 342 Tka = FNMS(Tn, Tk, Tk9);
Chris@42 343 TA = Ty * Tz;
Chris@42 344 T8r = Ty * TD;
Chris@42 345 TR = ri[WS(rs, 48)];
Chris@42 346 TV = ii[WS(rs, 48)];
Chris@42 347 TE = FMA(TC, TD, TA);
Chris@42 348 T8s = FNMS(TC, Tz, T8r);
Chris@42 349 TS = TQ * TR;
Chris@42 350 T8t = TQ * TV;
Chris@42 351 }
Chris@42 352 }
Chris@42 353 }
Chris@42 354 {
Chris@42 355 E T8q, Tq, Tl7, Tkc, TW, T8u;
Chris@42 356 T8q = T1 - Tp;
Chris@42 357 Tq = T1 + Tp;
Chris@42 358 Tl7 = Tkb - Tka;
Chris@42 359 Tkc = Tka + Tkb;
Chris@42 360 TW = FMA(TU, TV, TS);
Chris@42 361 T8u = FNMS(TU, TR, T8t);
Chris@42 362 {
Chris@42 363 E TX, Tl8, T8v, Tk8;
Chris@42 364 TX = TE + TW;
Chris@42 365 Tl8 = TE - TW;
Chris@42 366 T8v = T8s - T8u;
Chris@42 367 Tk8 = T8s + T8u;
Chris@42 368 Tl9 = Tl7 - Tl8;
Chris@42 369 TlD = Tl8 + Tl7;
Chris@42 370 TY = Tq + TX;
Chris@42 371 Tg4 = Tq - TX;
Chris@42 372 T8w = T8q - T8v;
Chris@42 373 TdS = T8q + T8v;
Chris@42 374 TkE = Tkc - Tk8;
Chris@42 375 Tkd = Tk8 + Tkc;
Chris@42 376 }
Chris@42 377 }
Chris@42 378 }
Chris@42 379 {
Chris@42 380 E T2f, T93, T2E, T9d, T2n, T95, T2s, T9b;
Chris@42 381 {
Chris@42 382 E T2a, T2e, T2i, T2m;
Chris@42 383 T2a = ri[WS(rs, 60)];
Chris@42 384 T2e = ii[WS(rs, 60)];
Chris@42 385 {
Chris@42 386 E T2z, T2D, T2b, T92, T2A, T9c;
Chris@42 387 T2z = ri[WS(rs, 44)];
Chris@42 388 T2D = ii[WS(rs, 44)];
Chris@42 389 T2b = T29 * T2a;
Chris@42 390 T92 = T29 * T2e;
Chris@42 391 T2A = T2y * T2z;
Chris@42 392 T9c = T2y * T2D;
Chris@42 393 T2f = FMA(T2d, T2e, T2b);
Chris@42 394 T93 = FNMS(T2d, T2a, T92);
Chris@42 395 T2E = FMA(T2C, T2D, T2A);
Chris@42 396 T9d = FNMS(T2C, T2z, T9c);
Chris@42 397 }
Chris@42 398 T2i = ri[WS(rs, 28)];
Chris@42 399 T2m = ii[WS(rs, 28)];
Chris@42 400 {
Chris@42 401 E T2p, T2r, T2j, T94, T2q, T9a;
Chris@42 402 T2p = ri[WS(rs, 12)];
Chris@42 403 T2r = ii[WS(rs, 12)];
Chris@42 404 T2j = T2h * T2i;
Chris@42 405 T94 = T2h * T2m;
Chris@42 406 T2q = TG * T2p;
Chris@42 407 T9a = TG * T2r;
Chris@42 408 T2n = FMA(T2l, T2m, T2j);
Chris@42 409 T95 = FNMS(T2l, T2i, T94);
Chris@42 410 T2s = FMA(TJ, T2r, T2q);
Chris@42 411 T9b = FNMS(TJ, T2p, T9a);
Chris@42 412 }
Chris@42 413 }
Chris@42 414 {
Chris@42 415 E T2o, Tgf, T96, T97, T2F, Tgg;
Chris@42 416 T99 = T2f - T2n;
Chris@42 417 T2o = T2f + T2n;
Chris@42 418 Tgf = T93 + T95;
Chris@42 419 T96 = T93 - T95;
Chris@42 420 T97 = T2s - T2E;
Chris@42 421 T2F = T2s + T2E;
Chris@42 422 Tgg = T9b + T9d;
Chris@42 423 T9e = T9b - T9d;
Chris@42 424 T2G = T2o + T2F;
Chris@42 425 Tge = T2o - T2F;
Chris@42 426 Tgh = Tgf - Tgg;
Chris@42 427 TiK = Tgf + Tgg;
Chris@42 428 Te1 = T96 - T97;
Chris@42 429 T98 = T96 + T97;
Chris@42 430 }
Chris@42 431 }
Chris@42 432 {
Chris@42 433 E T9K, T2T, T9G, T9n, Tgl, T9o, T38, T9I;
Chris@42 434 {
Chris@42 435 E T2M, T9k, T37, T2V, T2S, T2W, T2Y, T9m, T32, T33, T36, T2Z, T9H;
Chris@42 436 {
Chris@42 437 E T2J, T2L, T2K, T9j;
Chris@42 438 T2J = ri[WS(rs, 2)];
Chris@42 439 T2L = ii[WS(rs, 2)];
Chris@42 440 T32 = ri[WS(rs, 50)];
Chris@42 441 Te0 = T99 + T9e;
Chris@42 442 T9f = T99 - T9e;
Chris@42 443 T2K = Tr * T2J;
Chris@42 444 T9j = Tr * T2L;
Chris@42 445 T33 = T31 * T32;
Chris@42 446 T36 = ii[WS(rs, 50)];
Chris@42 447 T2M = FMA(Tt, T2L, T2K);
Chris@42 448 T9k = FNMS(Tt, T2J, T9j);
Chris@42 449 }
Chris@42 450 {
Chris@42 451 E T2O, T9J, T2R, T2P, T9l;
Chris@42 452 T2O = ri[WS(rs, 34)];
Chris@42 453 T37 = FMA(T35, T36, T33);
Chris@42 454 T9J = T31 * T36;
Chris@42 455 T2R = ii[WS(rs, 34)];
Chris@42 456 T2P = T2N * T2O;
Chris@42 457 T2V = ri[WS(rs, 18)];
Chris@42 458 T9K = FNMS(T35, T32, T9J);
Chris@42 459 T9l = T2N * T2R;
Chris@42 460 T2S = FMA(T2Q, T2R, T2P);
Chris@42 461 T2W = T2U * T2V;
Chris@42 462 T2Y = ii[WS(rs, 18)];
Chris@42 463 T9m = FNMS(T2Q, T2O, T9l);
Chris@42 464 }
Chris@42 465 T2T = T2M + T2S;
Chris@42 466 T9G = T2M - T2S;
Chris@42 467 T2Z = FMA(T2X, T2Y, T2W);
Chris@42 468 T9H = T2U * T2Y;
Chris@42 469 T9n = T9k - T9m;
Chris@42 470 Tgl = T9k + T9m;
Chris@42 471 T9o = T2Z - T37;
Chris@42 472 T38 = T2Z + T37;
Chris@42 473 T9I = FNMS(T2X, T2V, T9H);
Chris@42 474 }
Chris@42 475 {
Chris@42 476 E T6H, TbD, T6P, T6R, T6T, TbF, T6S, Tcw;
Chris@42 477 {
Chris@42 478 E T6X, T71, T6E, TbC, T6K, TbE;
Chris@42 479 {
Chris@42 480 E T6F, T6G, T9L, Tgm;
Chris@42 481 T6E = ri[WS(rs, 63)];
Chris@42 482 Te5 = T9n - T9o;
Chris@42 483 T9p = T9n + T9o;
Chris@42 484 Tgq = T2T - T38;
Chris@42 485 T39 = T2T + T38;
Chris@42 486 T9L = T9I - T9K;
Chris@42 487 Tgm = T9I + T9K;
Chris@42 488 T6F = TL * T6E;
Chris@42 489 T6G = ii[WS(rs, 63)];
Chris@42 490 Te8 = T9G + T9L;
Chris@42 491 T9M = T9G - T9L;
Chris@42 492 TiN = Tgl + Tgm;
Chris@42 493 Tgn = Tgl - Tgm;
Chris@42 494 TbC = TL * T6G;
Chris@42 495 T6H = FMA(TP, T6G, T6F);
Chris@42 496 }
Chris@42 497 T6X = ri[WS(rs, 47)];
Chris@42 498 T71 = ii[WS(rs, 47)];
Chris@42 499 TbD = FNMS(TP, T6E, TbC);
Chris@42 500 {
Chris@42 501 E T6O, T6L, T6Y, Tcy;
Chris@42 502 T6K = ri[WS(rs, 31)];
Chris@42 503 T6Y = T6W * T6X;
Chris@42 504 Tcy = T6W * T71;
Chris@42 505 T6O = ii[WS(rs, 31)];
Chris@42 506 T6L = T6J * T6K;
Chris@42 507 T72 = FMA(T70, T71, T6Y);
Chris@42 508 Tcz = FNMS(T70, T6X, Tcy);
Chris@42 509 TbE = T6J * T6O;
Chris@42 510 T6P = FMA(T6N, T6O, T6L);
Chris@42 511 }
Chris@42 512 T6R = ri[WS(rs, 15)];
Chris@42 513 T6T = ii[WS(rs, 15)];
Chris@42 514 TbF = FNMS(T6N, T6K, TbE);
Chris@42 515 }
Chris@42 516 Tcv = T6H - T6P;
Chris@42 517 T6Q = T6H + T6P;
Chris@42 518 T6S = TK * T6R;
Chris@42 519 Tcw = TK * T6T;
Chris@42 520 Tha = TbD + TbF;
Chris@42 521 TbG = TbD - TbF;
Chris@42 522 T6U = FMA(TO, T6T, T6S);
Chris@42 523 Tcx = FNMS(TO, T6R, Tcw);
Chris@42 524 }
Chris@42 525 }
Chris@42 526 {
Chris@42 527 E T1J, T1G, T1K, T8O, T25, T8Y, T1N, T1S, T1W;
Chris@42 528 {
Chris@42 529 E T1b, T16, T1c, T8y, T1z, T8I, T1f, T1m, T1q;
Chris@42 530 {
Chris@42 531 E T11, T12, T15, T1u, T1y, T8x, T1v, T8H;
Chris@42 532 T11 = ri[WS(rs, 8)];
Chris@42 533 {
Chris@42 534 E TbH, T73, TcA, Thb;
Chris@42 535 TbH = T6U - T72;
Chris@42 536 T73 = T6U + T72;
Chris@42 537 TcA = Tcx - Tcz;
Chris@42 538 Thb = Tcx + Tcz;
Chris@42 539 TeE = TbG - TbH;
Chris@42 540 TbI = TbG + TbH;
Chris@42 541 Thr = T6Q - T73;
Chris@42 542 T74 = T6Q + T73;
Chris@42 543 TeP = Tcv + TcA;
Chris@42 544 TcB = Tcv - TcA;
Chris@42 545 Tja = Tha + Thb;
Chris@42 546 Thc = Tha - Thb;
Chris@42 547 T12 = T10 * T11;
Chris@42 548 }
Chris@42 549 T15 = ii[WS(rs, 8)];
Chris@42 550 T1u = ri[WS(rs, 24)];
Chris@42 551 T1y = ii[WS(rs, 24)];
Chris@42 552 T1b = ri[WS(rs, 40)];
Chris@42 553 T16 = FMA(T14, T15, T12);
Chris@42 554 T8x = T10 * T15;
Chris@42 555 T1v = T1t * T1u;
Chris@42 556 T8H = T1t * T1y;
Chris@42 557 T1c = T1a * T1b;
Chris@42 558 T8y = FNMS(T14, T11, T8x);
Chris@42 559 T1z = FMA(T1x, T1y, T1v);
Chris@42 560 T8I = FNMS(T1x, T1u, T8H);
Chris@42 561 T1f = ii[WS(rs, 40)];
Chris@42 562 T1m = ri[WS(rs, 56)];
Chris@42 563 T1q = ii[WS(rs, 56)];
Chris@42 564 }
Chris@42 565 {
Chris@42 566 E T1D, T1E, T1F, T20, T24, T8N, T21, T8X;
Chris@42 567 {
Chris@42 568 E T1h, T8C, T8A, T1r, T8G, Tg5, T8B;
Chris@42 569 T1D = ri[WS(rs, 4)];
Chris@42 570 {
Chris@42 571 E T1g, T8z, T1n, T8F;
Chris@42 572 T1g = FMA(T1e, T1f, T1c);
Chris@42 573 T8z = T1a * T1f;
Chris@42 574 T1n = T1l * T1m;
Chris@42 575 T8F = T1l * T1q;
Chris@42 576 T1h = T16 + T1g;
Chris@42 577 T8C = T16 - T1g;
Chris@42 578 T8A = FNMS(T1e, T1b, T8z);
Chris@42 579 T1r = FMA(T1p, T1q, T1n);
Chris@42 580 T8G = FNMS(T1p, T1m, T8F);
Chris@42 581 T1E = T7 * T1D;
Chris@42 582 }
Chris@42 583 Tg5 = T8y + T8A;
Chris@42 584 T8B = T8y - T8A;
Chris@42 585 {
Chris@42 586 E T1A, T8E, Tg6, T8J;
Chris@42 587 T1A = T1r + T1z;
Chris@42 588 T8E = T1r - T1z;
Chris@42 589 Tg6 = T8G + T8I;
Chris@42 590 T8J = T8G - T8I;
Chris@42 591 T8D = T8B - T8C;
Chris@42 592 TdT = T8C + T8B;
Chris@42 593 T1B = T1h + T1A;
Chris@42 594 TkD = T1A - T1h;
Chris@42 595 T8K = T8E + T8J;
Chris@42 596 TdU = T8E - T8J;
Chris@42 597 Tg7 = Tg5 - Tg6;
Chris@42 598 Tk7 = Tg5 + Tg6;
Chris@42 599 T1F = ii[WS(rs, 4)];
Chris@42 600 }
Chris@42 601 }
Chris@42 602 T20 = ri[WS(rs, 52)];
Chris@42 603 T24 = ii[WS(rs, 52)];
Chris@42 604 T1J = ri[WS(rs, 36)];
Chris@42 605 T1G = FMA(Tb, T1F, T1E);
Chris@42 606 T8N = T7 * T1F;
Chris@42 607 T21 = T1Z * T20;
Chris@42 608 T8X = T1Z * T24;
Chris@42 609 T1K = T1I * T1J;
Chris@42 610 T8O = FNMS(Tb, T1D, T8N);
Chris@42 611 T25 = FMA(T23, T24, T21);
Chris@42 612 T8Y = FNMS(T23, T20, T8X);
Chris@42 613 T1N = ii[WS(rs, 36)];
Chris@42 614 T1S = ri[WS(rs, 20)];
Chris@42 615 T1W = ii[WS(rs, 20)];
Chris@42 616 }
Chris@42 617 }
Chris@42 618 {
Chris@42 619 E T3V, T3T, T3W, T9T, T4i, Taj, T3Y, T42, T45;
Chris@42 620 {
Chris@42 621 E T3O, T3P, T3S, T4d, T4h, T9S, T4e, Tai;
Chris@42 622 {
Chris@42 623 E T1P, T8U, T8Q, T1X, T8W, Tga, T8R;
Chris@42 624 T3O = ri[WS(rs, 62)];
Chris@42 625 {
Chris@42 626 E T1O, T8P, T1T, T8V;
Chris@42 627 T1O = FMA(T1M, T1N, T1K);
Chris@42 628 T8P = T1I * T1N;
Chris@42 629 T1T = T1R * T1S;
Chris@42 630 T8V = T1R * T1W;
Chris@42 631 T1P = T1G + T1O;
Chris@42 632 T8U = T1G - T1O;
Chris@42 633 T8Q = FNMS(T1M, T1J, T8P);
Chris@42 634 T1X = FMA(T1V, T1W, T1T);
Chris@42 635 T8W = FNMS(T1V, T1S, T8V);
Chris@42 636 T3P = T3N * T3O;
Chris@42 637 }
Chris@42 638 Tga = T8O + T8Q;
Chris@42 639 T8R = T8O - T8Q;
Chris@42 640 {
Chris@42 641 E T26, T8S, Tgb, T8Z;
Chris@42 642 T26 = T1X + T25;
Chris@42 643 T8S = T1X - T25;
Chris@42 644 Tgb = T8W + T8Y;
Chris@42 645 T8Z = T8W - T8Y;
Chris@42 646 T8T = T8R + T8S;
Chris@42 647 TdY = T8R - T8S;
Chris@42 648 T27 = T1P + T26;
Chris@42 649 Tg9 = T1P - T26;
Chris@42 650 T90 = T8U - T8Z;
Chris@42 651 TdX = T8U + T8Z;
Chris@42 652 Tgc = Tga - Tgb;
Chris@42 653 TiJ = Tga + Tgb;
Chris@42 654 T3S = ii[WS(rs, 62)];
Chris@42 655 }
Chris@42 656 }
Chris@42 657 T4d = ri[WS(rs, 46)];
Chris@42 658 T4h = ii[WS(rs, 46)];
Chris@42 659 T3V = ri[WS(rs, 30)];
Chris@42 660 T3T = FMA(T3R, T3S, T3P);
Chris@42 661 T9S = T3N * T3S;
Chris@42 662 T4e = T4c * T4d;
Chris@42 663 Tai = T4c * T4h;
Chris@42 664 T3W = T3U * T3V;
Chris@42 665 T9T = FNMS(T3R, T3O, T9S);
Chris@42 666 T4i = FMA(T4g, T4h, T4e);
Chris@42 667 Taj = FNMS(T4g, T4d, Tai);
Chris@42 668 T3Y = ii[WS(rs, 30)];
Chris@42 669 T42 = ri[WS(rs, 14)];
Chris@42 670 T45 = ii[WS(rs, 14)];
Chris@42 671 }
Chris@42 672 {
Chris@42 673 E T4P, T4Q, T4R, T56, T5a, Tat, T57, Tbp;
Chris@42 674 {
Chris@42 675 E T40, Taf, T9V, T46, Tah, Tgw, T9W;
Chris@42 676 T4P = ri[WS(rs, 1)];
Chris@42 677 {
Chris@42 678 E T3Z, T9U, T43, Tag;
Chris@42 679 T3Z = FMA(T3X, T3Y, T3W);
Chris@42 680 T9U = T3U * T3Y;
Chris@42 681 T43 = T41 * T42;
Chris@42 682 Tag = T41 * T45;
Chris@42 683 T40 = T3T + T3Z;
Chris@42 684 Taf = T3T - T3Z;
Chris@42 685 T9V = FNMS(T3X, T3V, T9U);
Chris@42 686 T46 = FMA(T44, T45, T43);
Chris@42 687 Tah = FNMS(T44, T42, Tag);
Chris@42 688 T4Q = T2 * T4P;
Chris@42 689 }
Chris@42 690 Tgw = T9T + T9V;
Chris@42 691 T9W = T9T - T9V;
Chris@42 692 {
Chris@42 693 E T4j, T9X, Tgx, Tak;
Chris@42 694 T4j = T46 + T4i;
Chris@42 695 T9X = T46 - T4i;
Chris@42 696 Tgx = Tah + Taj;
Chris@42 697 Tak = Tah - Taj;
Chris@42 698 T9Y = T9W + T9X;
Chris@42 699 Tec = T9W - T9X;
Chris@42 700 T4k = T40 + T4j;
Chris@42 701 TgB = T40 - T4j;
Chris@42 702 Tal = Taf - Tak;
Chris@42 703 Tef = Taf + Tak;
Chris@42 704 Tgy = Tgw - Tgx;
Chris@42 705 TiT = Tgw + Tgx;
Chris@42 706 T4R = ii[WS(rs, 1)];
Chris@42 707 }
Chris@42 708 }
Chris@42 709 T56 = ri[WS(rs, 49)];
Chris@42 710 T5a = ii[WS(rs, 49)];
Chris@42 711 T4U = ri[WS(rs, 33)];
Chris@42 712 T4S = FMA(T5, T4R, T4Q);
Chris@42 713 Tat = T2 * T4R;
Chris@42 714 T57 = T55 * T56;
Chris@42 715 Tbp = T55 * T5a;
Chris@42 716 T4V = T4T * T4U;
Chris@42 717 Tau = FNMS(T5, T4P, Tat);
Chris@42 718 T5b = FMA(T59, T5a, T57);
Chris@42 719 Tbq = FNMS(T59, T56, Tbp);
Chris@42 720 T4X = ii[WS(rs, 33)];
Chris@42 721 T50 = ri[WS(rs, 17)];
Chris@42 722 T52 = ii[WS(rs, 17)];
Chris@42 723 }
Chris@42 724 }
Chris@42 725 }
Chris@42 726 }
Chris@42 727 {
Chris@42 728 E T7a, T78, T7b, TbL, T7t, TbU, T7d, T7i, T7m;
Chris@42 729 {
Chris@42 730 E T4q, T4o, T4r, Ta1, T4J, Taa, T4t, T4y, T4C;
Chris@42 731 {
Chris@42 732 E T3o, T3f, T3p, T9s, T3I, T9B, T3s, T3x, T3B;
Chris@42 733 {
Chris@42 734 E T3b, T3c, T3e, T3E, T3H, T9r, T3F, T9A;
Chris@42 735 {
Chris@42 736 E T4Z, Tbm, Taw, T53, Tbo, TgJ, Tax;
Chris@42 737 T3b = ri[WS(rs, 10)];
Chris@42 738 {
Chris@42 739 E T4Y, Tav, T51, Tbn;
Chris@42 740 T4Y = FMA(T4W, T4X, T4V);
Chris@42 741 Tav = T4T * T4X;
Chris@42 742 T51 = T48 * T50;
Chris@42 743 Tbn = T48 * T52;
Chris@42 744 T4Z = T4S + T4Y;
Chris@42 745 Tbm = T4S - T4Y;
Chris@42 746 Taw = FNMS(T4W, T4U, Tav);
Chris@42 747 T53 = FMA(T4b, T52, T51);
Chris@42 748 Tbo = FNMS(T4b, T50, Tbn);
Chris@42 749 T3c = T3a * T3b;
Chris@42 750 }
Chris@42 751 TgJ = Tau + Taw;
Chris@42 752 Tax = Tau - Taw;
Chris@42 753 {
Chris@42 754 E T5c, Tay, TgK, Tbr;
Chris@42 755 T5c = T53 + T5b;
Chris@42 756 Tay = T53 - T5b;
Chris@42 757 TgK = Tbo + Tbq;
Chris@42 758 Tbr = Tbo - Tbq;
Chris@42 759 Taz = Tax + Tay;
Chris@42 760 Tel = Tax - Tay;
Chris@42 761 T5d = T4Z + T5c;
Chris@42 762 Th0 = T4Z - T5c;
Chris@42 763 Tbs = Tbm - Tbr;
Chris@42 764 Tew = Tbm + Tbr;
Chris@42 765 TgL = TgJ - TgK;
Chris@42 766 TiZ = TgJ + TgK;
Chris@42 767 T3e = ii[WS(rs, 10)];
Chris@42 768 }
Chris@42 769 }
Chris@42 770 T3E = ri[WS(rs, 26)];
Chris@42 771 T3H = ii[WS(rs, 26)];
Chris@42 772 T3o = ri[WS(rs, 42)];
Chris@42 773 T3f = FMA(T3d, T3e, T3c);
Chris@42 774 T9r = T3a * T3e;
Chris@42 775 T3F = T3D * T3E;
Chris@42 776 T9A = T3D * T3H;
Chris@42 777 T3p = T3n * T3o;
Chris@42 778 T9s = FNMS(T3d, T3b, T9r);
Chris@42 779 T3I = FMA(T3G, T3H, T3F);
Chris@42 780 T9B = FNMS(T3G, T3E, T9A);
Chris@42 781 T3s = ii[WS(rs, 42)];
Chris@42 782 T3x = ri[WS(rs, 58)];
Chris@42 783 T3B = ii[WS(rs, 58)];
Chris@42 784 }
Chris@42 785 {
Chris@42 786 E T4l, T4m, T4n, T4F, T4I, Ta0, T4G, Ta9;
Chris@42 787 {
Chris@42 788 E T3u, T9q, T9u, T3C, T9z, Tgr, T9v;
Chris@42 789 T4l = ri[WS(rs, 6)];
Chris@42 790 {
Chris@42 791 E T3t, T9t, T3y, T9y;
Chris@42 792 T3t = FMA(T3r, T3s, T3p);
Chris@42 793 T9t = T3n * T3s;
Chris@42 794 T3y = T3w * T3x;
Chris@42 795 T9y = T3w * T3B;
Chris@42 796 T3u = T3f + T3t;
Chris@42 797 T9q = T3f - T3t;
Chris@42 798 T9u = FNMS(T3r, T3o, T9t);
Chris@42 799 T3C = FMA(T3A, T3B, T3y);
Chris@42 800 T9z = FNMS(T3A, T3x, T9y);
Chris@42 801 T4m = T3g * T4l;
Chris@42 802 }
Chris@42 803 Tgr = T9s + T9u;
Chris@42 804 T9v = T9s - T9u;
Chris@42 805 {
Chris@42 806 E T3J, T9x, Tgs, T9C;
Chris@42 807 T3J = T3C + T3I;
Chris@42 808 T9x = T3C - T3I;
Chris@42 809 Tgs = T9z + T9B;
Chris@42 810 T9C = T9z - T9B;
Chris@42 811 {
Chris@42 812 E T9w, T9O, T9D, T9N;
Chris@42 813 T9w = T9q + T9v;
Chris@42 814 T9O = T9v - T9q;
Chris@42 815 T3K = T3u + T3J;
Chris@42 816 Tgo = T3J - T3u;
Chris@42 817 T9D = T9x - T9C;
Chris@42 818 T9N = T9x + T9C;
Chris@42 819 Tgt = Tgr - Tgs;
Chris@42 820 TiO = Tgr + Tgs;
Chris@42 821 T9P = T9N - T9O;
Chris@42 822 Te6 = T9O + T9N;
Chris@42 823 T9E = T9w - T9D;
Chris@42 824 Te9 = T9w + T9D;
Chris@42 825 T4n = ii[WS(rs, 6)];
Chris@42 826 }
Chris@42 827 }
Chris@42 828 }
Chris@42 829 T4F = ri[WS(rs, 22)];
Chris@42 830 T4I = ii[WS(rs, 22)];
Chris@42 831 T4q = ri[WS(rs, 38)];
Chris@42 832 T4o = FMA(T3i, T4n, T4m);
Chris@42 833 Ta0 = T3g * T4n;
Chris@42 834 T4G = T4E * T4F;
Chris@42 835 Ta9 = T4E * T4I;
Chris@42 836 T4r = T4p * T4q;
Chris@42 837 Ta1 = FNMS(T3i, T4l, Ta0);
Chris@42 838 T4J = FMA(T4H, T4I, T4G);
Chris@42 839 Taa = FNMS(T4H, T4F, Ta9);
Chris@42 840 T4t = ii[WS(rs, 38)];
Chris@42 841 T4y = ri[WS(rs, 54)];
Chris@42 842 T4C = ii[WS(rs, 54)];
Chris@42 843 }
Chris@42 844 }
Chris@42 845 {
Chris@42 846 E T5k, T5h, T5l, TaC, T5G, TaL, T5o, T5t, T5x;
Chris@42 847 {
Chris@42 848 E T5e, T5f, T5g, T5B, T5F, TaB, T5C, TaK;
Chris@42 849 {
Chris@42 850 E T4v, T9Z, Ta3, T4D, Ta8, TgC, Ta4;
Chris@42 851 T5e = ri[WS(rs, 9)];
Chris@42 852 {
Chris@42 853 E T4u, Ta2, T4z, Ta7;
Chris@42 854 T4u = FMA(T4s, T4t, T4r);
Chris@42 855 Ta2 = T4p * T4t;
Chris@42 856 T4z = T4x * T4y;
Chris@42 857 Ta7 = T4x * T4C;
Chris@42 858 T4v = T4o + T4u;
Chris@42 859 T9Z = T4o - T4u;
Chris@42 860 Ta3 = FNMS(T4s, T4q, Ta2);
Chris@42 861 T4D = FMA(T4B, T4C, T4z);
Chris@42 862 Ta8 = FNMS(T4B, T4y, Ta7);
Chris@42 863 T5f = T8 * T5e;
Chris@42 864 }
Chris@42 865 TgC = Ta1 + Ta3;
Chris@42 866 Ta4 = Ta1 - Ta3;
Chris@42 867 {
Chris@42 868 E T4K, Ta6, TgD, Tab;
Chris@42 869 T4K = T4D + T4J;
Chris@42 870 Ta6 = T4D - T4J;
Chris@42 871 TgD = Ta8 + Taa;
Chris@42 872 Tab = Ta8 - Taa;
Chris@42 873 {
Chris@42 874 E Ta5, Tan, Tac, Tam;
Chris@42 875 Ta5 = T9Z + Ta4;
Chris@42 876 Tan = Ta4 - T9Z;
Chris@42 877 T4L = T4v + T4K;
Chris@42 878 Tgz = T4K - T4v;
Chris@42 879 Tac = Ta6 - Tab;
Chris@42 880 Tam = Ta6 + Tab;
Chris@42 881 TgE = TgC - TgD;
Chris@42 882 TiU = TgC + TgD;
Chris@42 883 Tao = Tam - Tan;
Chris@42 884 Ted = Tan + Tam;
Chris@42 885 Tad = Ta5 - Tac;
Chris@42 886 Teg = Ta5 + Tac;
Chris@42 887 T5g = ii[WS(rs, 9)];
Chris@42 888 }
Chris@42 889 }
Chris@42 890 }
Chris@42 891 T5B = ri[WS(rs, 25)];
Chris@42 892 T5F = ii[WS(rs, 25)];
Chris@42 893 T5k = ri[WS(rs, 41)];
Chris@42 894 T5h = FMA(Tc, T5g, T5f);
Chris@42 895 TaB = T8 * T5g;
Chris@42 896 T5C = T5A * T5B;
Chris@42 897 TaK = T5A * T5F;
Chris@42 898 T5l = T5j * T5k;
Chris@42 899 TaC = FNMS(Tc, T5e, TaB);
Chris@42 900 T5G = FMA(T5E, T5F, T5C);
Chris@42 901 TaL = FNMS(T5E, T5B, TaK);
Chris@42 902 T5o = ii[WS(rs, 41)];
Chris@42 903 T5t = ri[WS(rs, 57)];
Chris@42 904 T5x = ii[WS(rs, 57)];
Chris@42 905 }
Chris@42 906 {
Chris@42 907 E T75, T76, T77, T7p, T7s, TbK, T7q, TbT;
Chris@42 908 {
Chris@42 909 E T5q, TaA, TaE, T5y, TaJ, Th1, TaF;
Chris@42 910 T75 = ri[WS(rs, 7)];
Chris@42 911 {
Chris@42 912 E T5p, TaD, T5u, TaI;
Chris@42 913 T5p = FMA(T5n, T5o, T5l);
Chris@42 914 TaD = T5j * T5o;
Chris@42 915 T5u = T5s * T5t;
Chris@42 916 TaI = T5s * T5x;
Chris@42 917 T5q = T5h + T5p;
Chris@42 918 TaA = T5h - T5p;
Chris@42 919 TaE = FNMS(T5n, T5k, TaD);
Chris@42 920 T5y = FMA(T5w, T5x, T5u);
Chris@42 921 TaJ = FNMS(T5w, T5t, TaI);
Chris@42 922 T76 = T1i * T75;
Chris@42 923 }
Chris@42 924 Th1 = TaC + TaE;
Chris@42 925 TaF = TaC - TaE;
Chris@42 926 {
Chris@42 927 E T5H, TaH, Th2, TaM;
Chris@42 928 T5H = T5y + T5G;
Chris@42 929 TaH = T5y - T5G;
Chris@42 930 Th2 = TaJ + TaL;
Chris@42 931 TaM = TaJ - TaL;
Chris@42 932 {
Chris@42 933 E TaG, Tbu, TaN, Tbt;
Chris@42 934 TaG = TaA + TaF;
Chris@42 935 Tbu = TaF - TaA;
Chris@42 936 T5I = T5q + T5H;
Chris@42 937 TgM = T5H - T5q;
Chris@42 938 TaN = TaH - TaM;
Chris@42 939 Tbt = TaH + TaM;
Chris@42 940 Th3 = Th1 - Th2;
Chris@42 941 Tj0 = Th1 + Th2;
Chris@42 942 Tbv = Tbt - Tbu;
Chris@42 943 Tem = Tbu + Tbt;
Chris@42 944 TaO = TaG - TaN;
Chris@42 945 Tex = TaG + TaN;
Chris@42 946 T77 = ii[WS(rs, 7)];
Chris@42 947 }
Chris@42 948 }
Chris@42 949 }
Chris@42 950 T7p = ri[WS(rs, 23)];
Chris@42 951 T7s = ii[WS(rs, 23)];
Chris@42 952 T7a = ri[WS(rs, 39)];
Chris@42 953 T78 = FMA(T1k, T77, T76);
Chris@42 954 TbK = T1i * T77;
Chris@42 955 T7q = T7o * T7p;
Chris@42 956 TbT = T7o * T7s;
Chris@42 957 T7b = T79 * T7a;
Chris@42 958 TbL = FNMS(T1k, T75, TbK);
Chris@42 959 T7t = FMA(T7r, T7s, T7q);
Chris@42 960 TbU = FNMS(T7r, T7p, TbT);
Chris@42 961 T7d = ii[WS(rs, 39)];
Chris@42 962 T7i = ri[WS(rs, 55)];
Chris@42 963 T7m = ii[WS(rs, 55)];
Chris@42 964 }
Chris@42 965 }
Chris@42 966 }
Chris@42 967 {
Chris@42 968 E T6i, T6g, T6j, TaY, T6z, TaU, T6l, T6o, T6q;
Chris@42 969 {
Chris@42 970 E T5P, T5N, T5Q, Tbd, T66, Tb9, T5S, T5V, T5X;
Chris@42 971 {
Chris@42 972 E T5K, T5L, T5M, T61, T65, Tbc, T62, Tb8;
Chris@42 973 {
Chris@42 974 E T7f, TbJ, TbN, T7n, TbS, Ths, TbO;
Chris@42 975 T5K = ri[WS(rs, 5)];
Chris@42 976 {
Chris@42 977 E T7e, TbM, T7j, TbR;
Chris@42 978 T7e = FMA(T7c, T7d, T7b);
Chris@42 979 TbM = T79 * T7d;
Chris@42 980 T7j = T7h * T7i;
Chris@42 981 TbR = T7h * T7m;
Chris@42 982 T7f = T78 + T7e;
Chris@42 983 TbJ = T78 - T7e;
Chris@42 984 TbN = FNMS(T7c, T7a, TbM);
Chris@42 985 T7n = FMA(T7l, T7m, T7j);
Chris@42 986 TbS = FNMS(T7l, T7i, TbR);
Chris@42 987 T5L = Td * T5K;
Chris@42 988 }
Chris@42 989 Ths = TbL + TbN;
Chris@42 990 TbO = TbL - TbN;
Chris@42 991 {
Chris@42 992 E T7u, TbQ, Tht, TbV;
Chris@42 993 T7u = T7n + T7t;
Chris@42 994 TbQ = T7n - T7t;
Chris@42 995 Tht = TbS + TbU;
Chris@42 996 TbV = TbS - TbU;
Chris@42 997 {
Chris@42 998 E TbP, TcD, TbW, TcC;
Chris@42 999 TbP = TbJ + TbO;
Chris@42 1000 TcD = TbO - TbJ;
Chris@42 1001 T7v = T7f + T7u;
Chris@42 1002 Thd = T7u - T7f;
Chris@42 1003 TbW = TbQ - TbV;
Chris@42 1004 TcC = TbQ + TbV;
Chris@42 1005 Thu = Ths - Tht;
Chris@42 1006 Tjb = Ths + Tht;
Chris@42 1007 TcE = TcC - TcD;
Chris@42 1008 TeF = TcD + TcC;
Chris@42 1009 TbX = TbP - TbW;
Chris@42 1010 TeQ = TbP + TbW;
Chris@42 1011 T5M = ii[WS(rs, 5)];
Chris@42 1012 }
Chris@42 1013 }
Chris@42 1014 }
Chris@42 1015 T61 = ri[WS(rs, 53)];
Chris@42 1016 T65 = ii[WS(rs, 53)];
Chris@42 1017 T5P = ri[WS(rs, 37)];
Chris@42 1018 T5N = FMA(Th, T5M, T5L);
Chris@42 1019 Tbc = Td * T5M;
Chris@42 1020 T62 = T60 * T61;
Chris@42 1021 Tb8 = T60 * T65;
Chris@42 1022 T5Q = T5O * T5P;
Chris@42 1023 Tbd = FNMS(Th, T5K, Tbc);
Chris@42 1024 T66 = FMA(T64, T65, T62);
Chris@42 1025 Tb9 = FNMS(T64, T61, Tb8);
Chris@42 1026 T5S = ii[WS(rs, 37)];
Chris@42 1027 T5V = ri[WS(rs, 21)];
Chris@42 1028 T5X = ii[WS(rs, 21)];
Chris@42 1029 }
Chris@42 1030 {
Chris@42 1031 E T6b, T6c, T6f, T6u, T6y, TaX, T6v, TaT;
Chris@42 1032 {
Chris@42 1033 E T5U, Tb5, Tbf, T5Y, Tb7;
Chris@42 1034 T6b = ri[WS(rs, 61)];
Chris@42 1035 {
Chris@42 1036 E T5T, Tbe, T5W, Tb6;
Chris@42 1037 T5T = FMA(T5R, T5S, T5Q);
Chris@42 1038 Tbe = T5O * T5S;
Chris@42 1039 T5W = T3j * T5V;
Chris@42 1040 Tb6 = T3j * T5X;
Chris@42 1041 T5U = T5N + T5T;
Chris@42 1042 Tb5 = T5N - T5T;
Chris@42 1043 Tbf = FNMS(T5R, T5P, Tbe);
Chris@42 1044 T5Y = FMA(T3m, T5X, T5W);
Chris@42 1045 Tb7 = FNMS(T3m, T5V, Tb6);
Chris@42 1046 T6c = T6a * T6b;
Chris@42 1047 }
Chris@42 1048 {
Chris@42 1049 E TgO, Tbg, T67, Tbh;
Chris@42 1050 TgO = Tbd + Tbf;
Chris@42 1051 Tbg = Tbd - Tbf;
Chris@42 1052 T67 = T5Y + T66;
Chris@42 1053 Tbh = T5Y - T66;
Chris@42 1054 {
Chris@42 1055 E TgP, Tba, Tbi, Teo;
Chris@42 1056 TgP = Tb7 + Tb9;
Chris@42 1057 Tba = Tb7 - Tb9;
Chris@42 1058 Tbi = Tbg + Tbh;
Chris@42 1059 Teo = Tbg - Tbh;
Chris@42 1060 {
Chris@42 1061 E TgR, Tbb, Tep, TgQ;
Chris@42 1062 TgR = T5U - T67;
Chris@42 1063 T68 = T5U + T67;
Chris@42 1064 Tbb = Tb5 - Tba;
Chris@42 1065 Tep = Tb5 + Tba;
Chris@42 1066 TgQ = TgO - TgP;
Chris@42 1067 Tj5 = TgO + TgP;
Chris@42 1068 Tez = FMA(KP414213562, Teo, Tep);
Chris@42 1069 Teq = FNMS(KP414213562, Tep, Teo);
Chris@42 1070 Tbj = FNMS(KP414213562, Tbi, Tbb);
Chris@42 1071 Tbx = FMA(KP414213562, Tbb, Tbi);
Chris@42 1072 TgS = TgQ - TgR;
Chris@42 1073 Th5 = TgR + TgQ;
Chris@42 1074 T6f = ii[WS(rs, 61)];
Chris@42 1075 }
Chris@42 1076 }
Chris@42 1077 }
Chris@42 1078 }
Chris@42 1079 T6u = ri[WS(rs, 45)];
Chris@42 1080 T6y = ii[WS(rs, 45)];
Chris@42 1081 T6i = ri[WS(rs, 29)];
Chris@42 1082 T6g = FMA(T6e, T6f, T6c);
Chris@42 1083 TaX = T6a * T6f;
Chris@42 1084 T6v = T6t * T6u;
Chris@42 1085 TaT = T6t * T6y;
Chris@42 1086 T6j = T6h * T6i;
Chris@42 1087 TaY = FNMS(T6e, T6b, TaX);
Chris@42 1088 T6z = FMA(T6x, T6y, T6v);
Chris@42 1089 TaU = FNMS(T6x, T6u, TaT);
Chris@42 1090 T6l = ii[WS(rs, 29)];
Chris@42 1091 T6o = ri[WS(rs, 13)];
Chris@42 1092 T6q = ii[WS(rs, 13)];
Chris@42 1093 }
Chris@42 1094 }
Chris@42 1095 {
Chris@42 1096 E T7C, T7A, T7D, Tcm, T7T, Tci, T7F, T7I, T7K;
Chris@42 1097 {
Chris@42 1098 E T7x, T7y, T7z, T7O, T7S, Tcl, T7P, Tch;
Chris@42 1099 {
Chris@42 1100 E T6n, TaQ, Tb0, T6r, TaS;
Chris@42 1101 T7x = ri[WS(rs, 3)];
Chris@42 1102 {
Chris@42 1103 E T6m, TaZ, T6p, TaR;
Chris@42 1104 T6m = FMA(T6k, T6l, T6j);
Chris@42 1105 TaZ = T6h * T6l;
Chris@42 1106 T6p = T17 * T6o;
Chris@42 1107 TaR = T17 * T6q;
Chris@42 1108 T6n = T6g + T6m;
Chris@42 1109 TaQ = T6g - T6m;
Chris@42 1110 Tb0 = FNMS(T6k, T6i, TaZ);
Chris@42 1111 T6r = FMA(T19, T6q, T6p);
Chris@42 1112 TaS = FNMS(T19, T6o, TaR);
Chris@42 1113 T7y = T3 * T7x;
Chris@42 1114 }
Chris@42 1115 {
Chris@42 1116 E TgU, Tb1, T6A, Tb2;
Chris@42 1117 TgU = TaY + Tb0;
Chris@42 1118 Tb1 = TaY - Tb0;
Chris@42 1119 T6A = T6r + T6z;
Chris@42 1120 Tb2 = T6r - T6z;
Chris@42 1121 {
Chris@42 1122 E TgV, TaV, Tb3, Ter;
Chris@42 1123 TgV = TaS + TaU;
Chris@42 1124 TaV = TaS - TaU;
Chris@42 1125 Tb3 = Tb1 + Tb2;
Chris@42 1126 Ter = Tb1 - Tb2;
Chris@42 1127 {
Chris@42 1128 E TgT, TaW, Tes, TgW;
Chris@42 1129 TgT = T6n - T6A;
Chris@42 1130 T6B = T6n + T6A;
Chris@42 1131 TaW = TaQ - TaV;
Chris@42 1132 Tes = TaQ + TaV;
Chris@42 1133 TgW = TgU - TgV;
Chris@42 1134 Tj6 = TgU + TgV;
Chris@42 1135 TeA = FNMS(KP414213562, Ter, Tes);
Chris@42 1136 Tet = FMA(KP414213562, Tes, Ter);
Chris@42 1137 Tb4 = FMA(KP414213562, Tb3, TaW);
Chris@42 1138 Tby = FNMS(KP414213562, TaW, Tb3);
Chris@42 1139 TgX = TgT + TgW;
Chris@42 1140 Th6 = TgT - TgW;
Chris@42 1141 T7z = ii[WS(rs, 3)];
Chris@42 1142 }
Chris@42 1143 }
Chris@42 1144 }
Chris@42 1145 }
Chris@42 1146 T7O = ri[WS(rs, 51)];
Chris@42 1147 T7S = ii[WS(rs, 51)];
Chris@42 1148 T7C = ri[WS(rs, 35)];
Chris@42 1149 T7A = FMA(T6, T7z, T7y);
Chris@42 1150 Tcl = T3 * T7z;
Chris@42 1151 T7P = T7N * T7O;
Chris@42 1152 Tch = T7N * T7S;
Chris@42 1153 T7D = T7B * T7C;
Chris@42 1154 Tcm = FNMS(T6, T7x, Tcl);
Chris@42 1155 T7T = FMA(T7R, T7S, T7P);
Chris@42 1156 Tci = FNMS(T7R, T7O, Tch);
Chris@42 1157 T7F = ii[WS(rs, 35)];
Chris@42 1158 T7I = ri[WS(rs, 19)];
Chris@42 1159 T7K = ii[WS(rs, 19)];
Chris@42 1160 }
Chris@42 1161 {
Chris@42 1162 E T7Y, T7Z, T82, T8f, T8j, Tc6, T8g, Tc2;
Chris@42 1163 {
Chris@42 1164 E T7H, Tce, Tco, T7L, Tcg;
Chris@42 1165 T7Y = ri[WS(rs, 59)];
Chris@42 1166 {
Chris@42 1167 E T7G, Tcn, T7J, Tcf;
Chris@42 1168 T7G = FMA(T7E, T7F, T7D);
Chris@42 1169 Tcn = T7B * T7F;
Chris@42 1170 T7J = T2u * T7I;
Chris@42 1171 Tcf = T2u * T7K;
Chris@42 1172 T7H = T7A + T7G;
Chris@42 1173 Tce = T7A - T7G;
Chris@42 1174 Tco = FNMS(T7E, T7C, Tcn);
Chris@42 1175 T7L = FMA(T2x, T7K, T7J);
Chris@42 1176 Tcg = FNMS(T2x, T7I, Tcf);
Chris@42 1177 T7Z = T7X * T7Y;
Chris@42 1178 }
Chris@42 1179 {
Chris@42 1180 E Thf, Tcp, T7U, Tcq;
Chris@42 1181 Thf = Tcm + Tco;
Chris@42 1182 Tcp = Tcm - Tco;
Chris@42 1183 T7U = T7L + T7T;
Chris@42 1184 Tcq = T7L - T7T;
Chris@42 1185 {
Chris@42 1186 E Thg, Tcj, Tcr, TeH;
Chris@42 1187 Thg = Tcg + Tci;
Chris@42 1188 Tcj = Tcg - Tci;
Chris@42 1189 Tcr = Tcp + Tcq;
Chris@42 1190 TeH = Tcp - Tcq;
Chris@42 1191 {
Chris@42 1192 E Thi, Tck, TeI, Thh;
Chris@42 1193 Thi = T7H - T7U;
Chris@42 1194 T7V = T7H + T7U;
Chris@42 1195 Tck = Tce - Tcj;
Chris@42 1196 TeI = Tce + Tcj;
Chris@42 1197 Thh = Thf - Thg;
Chris@42 1198 Tjg = Thf + Thg;
Chris@42 1199 TeS = FMA(KP414213562, TeH, TeI);
Chris@42 1200 TeJ = FNMS(KP414213562, TeI, TeH);
Chris@42 1201 Tcs = FNMS(KP414213562, Tcr, Tck);
Chris@42 1202 TcG = FMA(KP414213562, Tck, Tcr);
Chris@42 1203 Thj = Thh - Thi;
Chris@42 1204 Thw = Thi + Thh;
Chris@42 1205 T82 = ii[WS(rs, 59)];
Chris@42 1206 }
Chris@42 1207 }
Chris@42 1208 }
Chris@42 1209 }
Chris@42 1210 T8f = ri[WS(rs, 43)];
Chris@42 1211 T8j = ii[WS(rs, 43)];
Chris@42 1212 T84 = ri[WS(rs, 27)];
Chris@42 1213 T83 = FMA(T81, T82, T7Z);
Chris@42 1214 Tc6 = T7X * T82;
Chris@42 1215 T8g = T8e * T8f;
Chris@42 1216 Tc2 = T8e * T8j;
Chris@42 1217 T85 = Te * T84;
Chris@42 1218 Tc7 = FNMS(T81, T7Y, Tc6);
Chris@42 1219 T8k = FMA(T8i, T8j, T8g);
Chris@42 1220 Tc3 = FNMS(T8i, T8f, Tc2);
Chris@42 1221 T86 = ii[WS(rs, 27)];
Chris@42 1222 T89 = ri[WS(rs, 11)];
Chris@42 1223 T8b = ii[WS(rs, 11)];
Chris@42 1224 }
Chris@42 1225 }
Chris@42 1226 }
Chris@42 1227 }
Chris@42 1228 }
Chris@42 1229 {
Chris@42 1230 E TeT, TeM, Tcd, TcH, Tho, Thx, Tkw, Tkv, Tl6, Tl5;
Chris@42 1231 {
Chris@42 1232 E TiI, Tkp, TiQ, TiS, TiL, Tkq, TiP, TiV, Tjf, Tjd, Tjc, Tji, Tj4, Tj2, Tj1;
Chris@42 1233 E Tj7, Tkh, Tki;
Chris@42 1234 {
Chris@42 1235 E TjG, T2I, Tkj, T4N, Tkk, Tkf, Tk5, TjJ, T8o, Tk2, TjL, T6D, TjY, TjU, Tk1;
Chris@42 1236 E TjO;
Chris@42 1237 {
Chris@42 1238 E T8m, Tjh, T3L, T4M, Tk6, Tke, TjH, TjI;
Chris@42 1239 {
Chris@42 1240 E T1C, T88, TbZ, Tc9, T8c, Tc1, T2H;
Chris@42 1241 T1C = TY + T1B;
Chris@42 1242 TiI = TY - T1B;
Chris@42 1243 {
Chris@42 1244 E T87, Tc8, T8a, Tc0;
Chris@42 1245 T87 = FMA(Ti, T86, T85);
Chris@42 1246 Tc8 = Te * T86;
Chris@42 1247 T8a = Tu * T89;
Chris@42 1248 Tc0 = Tu * T8b;
Chris@42 1249 T88 = T83 + T87;
Chris@42 1250 TbZ = T83 - T87;
Chris@42 1251 Tc9 = FNMS(Ti, T84, Tc8);
Chris@42 1252 T8c = FMA(Tx, T8b, T8a);
Chris@42 1253 Tc1 = FNMS(Tx, T89, Tc0);
Chris@42 1254 T2H = T27 + T2G;
Chris@42 1255 Tkp = T2G - T27;
Chris@42 1256 }
Chris@42 1257 {
Chris@42 1258 E Thl, Tca, T8l, Tcb;
Chris@42 1259 Thl = Tc7 + Tc9;
Chris@42 1260 Tca = Tc7 - Tc9;
Chris@42 1261 T8l = T8c + T8k;
Chris@42 1262 Tcb = T8c - T8k;
Chris@42 1263 {
Chris@42 1264 E Thm, Tc4, Tcc, TeK;
Chris@42 1265 Thm = Tc1 + Tc3;
Chris@42 1266 Tc4 = Tc1 - Tc3;
Chris@42 1267 Tcc = Tca + Tcb;
Chris@42 1268 TeK = Tca - Tcb;
Chris@42 1269 {
Chris@42 1270 E Thk, Tc5, TeL, Thn;
Chris@42 1271 Thk = T88 - T8l;
Chris@42 1272 T8m = T88 + T8l;
Chris@42 1273 Tc5 = TbZ - Tc4;
Chris@42 1274 TeL = TbZ + Tc4;
Chris@42 1275 Thn = Thl - Thm;
Chris@42 1276 Tjh = Thl + Thm;
Chris@42 1277 TeT = FNMS(KP414213562, TeK, TeL);
Chris@42 1278 TeM = FMA(KP414213562, TeL, TeK);
Chris@42 1279 Tcd = FMA(KP414213562, Tcc, Tc5);
Chris@42 1280 TcH = FNMS(KP414213562, Tc5, Tcc);
Chris@42 1281 Tho = Thk + Thn;
Chris@42 1282 Thx = Thk - Thn;
Chris@42 1283 TjG = T1C - T2H;
Chris@42 1284 T2I = T1C + T2H;
Chris@42 1285 }
Chris@42 1286 }
Chris@42 1287 }
Chris@42 1288 }
Chris@42 1289 TiQ = T39 - T3K;
Chris@42 1290 T3L = T39 + T3K;
Chris@42 1291 T4M = T4k + T4L;
Chris@42 1292 TiS = T4k - T4L;
Chris@42 1293 TiL = TiJ - TiK;
Chris@42 1294 Tk6 = TiJ + TiK;
Chris@42 1295 Tke = Tk7 + Tkd;
Chris@42 1296 Tkq = Tkd - Tk7;
Chris@42 1297 TiP = TiN - TiO;
Chris@42 1298 TjH = TiN + TiO;
Chris@42 1299 Tkj = T4M - T3L;
Chris@42 1300 T4N = T3L + T4M;
Chris@42 1301 Tkk = Tke - Tk6;
Chris@42 1302 Tkf = Tk6 + Tke;
Chris@42 1303 TjI = TiT + TiU;
Chris@42 1304 TiV = TiT - TiU;
Chris@42 1305 {
Chris@42 1306 E TjR, TjQ, TjS, T7w, T8n;
Chris@42 1307 Tjf = T74 - T7v;
Chris@42 1308 T7w = T74 + T7v;
Chris@42 1309 T8n = T7V + T8m;
Chris@42 1310 Tjd = T8m - T7V;
Chris@42 1311 Tjc = Tja - Tjb;
Chris@42 1312 TjR = Tja + Tjb;
Chris@42 1313 Tk5 = TjH + TjI;
Chris@42 1314 TjJ = TjH - TjI;
Chris@42 1315 TjQ = T7w - T8n;
Chris@42 1316 T8o = T7w + T8n;
Chris@42 1317 Tji = Tjg - Tjh;
Chris@42 1318 TjS = Tjg + Tjh;
Chris@42 1319 {
Chris@42 1320 E TjM, TjN, T5J, T6C, TjT;
Chris@42 1321 Tj4 = T5d - T5I;
Chris@42 1322 T5J = T5d + T5I;
Chris@42 1323 T6C = T68 + T6B;
Chris@42 1324 Tj2 = T6B - T68;
Chris@42 1325 TjT = TjR - TjS;
Chris@42 1326 Tk2 = TjR + TjS;
Chris@42 1327 Tj1 = TiZ - Tj0;
Chris@42 1328 TjM = TiZ + Tj0;
Chris@42 1329 TjL = T5J - T6C;
Chris@42 1330 T6D = T5J + T6C;
Chris@42 1331 Tj7 = Tj5 - Tj6;
Chris@42 1332 TjN = Tj5 + Tj6;
Chris@42 1333 TjY = TjQ + TjT;
Chris@42 1334 TjU = TjQ - TjT;
Chris@42 1335 Tk1 = TjM + TjN;
Chris@42 1336 TjO = TjM - TjN;
Chris@42 1337 }
Chris@42 1338 }
Chris@42 1339 }
Chris@42 1340 {
Chris@42 1341 E Tk0, Tk3, TjW, Tko, Tkn, Tkl, Tkm, TjZ;
Chris@42 1342 {
Chris@42 1343 E TjP, TjX, Tk4, Tkg, T4O, T8p, TjK, TjV;
Chris@42 1344 Tk0 = T2I - T4N;
Chris@42 1345 T4O = T2I + T4N;
Chris@42 1346 T8p = T6D + T8o;
Chris@42 1347 Tkh = T8o - T6D;
Chris@42 1348 TjP = TjL + TjO;
Chris@42 1349 TjX = TjO - TjL;
Chris@42 1350 Tk3 = Tk1 - Tk2;
Chris@42 1351 Tk4 = Tk1 + Tk2;
Chris@42 1352 ri[0] = T4O + T8p;
Chris@42 1353 ri[WS(rs, 32)] = T4O - T8p;
Chris@42 1354 Tkg = Tk5 + Tkf;
Chris@42 1355 Tki = Tkf - Tk5;
Chris@42 1356 TjW = TjG - TjJ;
Chris@42 1357 TjK = TjG + TjJ;
Chris@42 1358 TjV = TjP + TjU;
Chris@42 1359 Tko = TjU - TjP;
Chris@42 1360 Tkn = Tkk - Tkj;
Chris@42 1361 Tkl = Tkj + Tkk;
Chris@42 1362 ii[WS(rs, 32)] = Tkg - Tk4;
Chris@42 1363 ii[0] = Tk4 + Tkg;
Chris@42 1364 ri[WS(rs, 8)] = FMA(KP707106781, TjV, TjK);
Chris@42 1365 ri[WS(rs, 40)] = FNMS(KP707106781, TjV, TjK);
Chris@42 1366 Tkm = TjX + TjY;
Chris@42 1367 TjZ = TjX - TjY;
Chris@42 1368 }
Chris@42 1369 ii[WS(rs, 40)] = FNMS(KP707106781, Tkm, Tkl);
Chris@42 1370 ii[WS(rs, 8)] = FMA(KP707106781, Tkm, Tkl);
Chris@42 1371 ri[WS(rs, 24)] = FMA(KP707106781, TjZ, TjW);
Chris@42 1372 ri[WS(rs, 56)] = FNMS(KP707106781, TjZ, TjW);
Chris@42 1373 ii[WS(rs, 56)] = FNMS(KP707106781, Tko, Tkn);
Chris@42 1374 ii[WS(rs, 24)] = FMA(KP707106781, Tko, Tkn);
Chris@42 1375 ri[WS(rs, 16)] = Tk0 + Tk3;
Chris@42 1376 ri[WS(rs, 48)] = Tk0 - Tk3;
Chris@42 1377 }
Chris@42 1378 }
Chris@42 1379 {
Chris@42 1380 E Tjq, TiM, Tkx, Tkr, Tjt, Tky, Tks, TiX, Tjz, Tje, Tjx, TjD, Tjn, Tj9, Tjr;
Chris@42 1381 E TiR;
Chris@42 1382 ii[WS(rs, 48)] = Tki - Tkh;
Chris@42 1383 ii[WS(rs, 16)] = Tkh + Tki;
Chris@42 1384 Tjq = TiI + TiL;
Chris@42 1385 TiM = TiI - TiL;
Chris@42 1386 Tkx = Tkq - Tkp;
Chris@42 1387 Tkr = Tkp + Tkq;
Chris@42 1388 Tjr = TiQ + TiP;
Chris@42 1389 TiR = TiP - TiQ;
Chris@42 1390 {
Chris@42 1391 E Tjw, Tj3, Tjs, TiW, Tjv, Tj8;
Chris@42 1392 Tjs = TiS - TiV;
Chris@42 1393 TiW = TiS + TiV;
Chris@42 1394 Tjw = Tj1 + Tj2;
Chris@42 1395 Tj3 = Tj1 - Tj2;
Chris@42 1396 Tjt = Tjr + Tjs;
Chris@42 1397 Tky = Tjs - Tjr;
Chris@42 1398 Tks = TiR + TiW;
Chris@42 1399 TiX = TiR - TiW;
Chris@42 1400 Tjv = Tj4 + Tj7;
Chris@42 1401 Tj8 = Tj4 - Tj7;
Chris@42 1402 Tjz = Tjc + Tjd;
Chris@42 1403 Tje = Tjc - Tjd;
Chris@42 1404 Tjx = FMA(KP414213562, Tjw, Tjv);
Chris@42 1405 TjD = FNMS(KP414213562, Tjv, Tjw);
Chris@42 1406 Tjn = FNMS(KP414213562, Tj3, Tj8);
Chris@42 1407 Tj9 = FMA(KP414213562, Tj8, Tj3);
Chris@42 1408 }
Chris@42 1409 {
Chris@42 1410 E Tjm, TiY, Tkz, TkB, Tjy, Tjj;
Chris@42 1411 Tjm = FNMS(KP707106781, TiX, TiM);
Chris@42 1412 TiY = FMA(KP707106781, TiX, TiM);
Chris@42 1413 Tkz = FMA(KP707106781, Tky, Tkx);
Chris@42 1414 TkB = FNMS(KP707106781, Tky, Tkx);
Chris@42 1415 Tjy = Tjf + Tji;
Chris@42 1416 Tjj = Tjf - Tji;
Chris@42 1417 {
Chris@42 1418 E TjC, Tkt, Tku, TjF;
Chris@42 1419 {
Chris@42 1420 E Tju, TjE, Tjo, Tjk, TjB, TjA;
Chris@42 1421 TjC = FNMS(KP707106781, Tjt, Tjq);
Chris@42 1422 Tju = FMA(KP707106781, Tjt, Tjq);
Chris@42 1423 TjA = FNMS(KP414213562, Tjz, Tjy);
Chris@42 1424 TjE = FMA(KP414213562, Tjy, Tjz);
Chris@42 1425 Tjo = FMA(KP414213562, Tje, Tjj);
Chris@42 1426 Tjk = FNMS(KP414213562, Tjj, Tje);
Chris@42 1427 TjB = Tjx + TjA;
Chris@42 1428 Tkw = TjA - Tjx;
Chris@42 1429 Tkv = FNMS(KP707106781, Tks, Tkr);
Chris@42 1430 Tkt = FMA(KP707106781, Tks, Tkr);
Chris@42 1431 {
Chris@42 1432 E Tjp, TkA, TkC, Tjl;
Chris@42 1433 Tjp = Tjn + Tjo;
Chris@42 1434 TkA = Tjo - Tjn;
Chris@42 1435 TkC = Tj9 + Tjk;
Chris@42 1436 Tjl = Tj9 - Tjk;
Chris@42 1437 ri[WS(rs, 4)] = FMA(KP923879532, TjB, Tju);
Chris@42 1438 ri[WS(rs, 36)] = FNMS(KP923879532, TjB, Tju);
Chris@42 1439 ri[WS(rs, 60)] = FMA(KP923879532, Tjp, Tjm);
Chris@42 1440 ri[WS(rs, 28)] = FNMS(KP923879532, Tjp, Tjm);
Chris@42 1441 ii[WS(rs, 44)] = FNMS(KP923879532, TkA, Tkz);
Chris@42 1442 ii[WS(rs, 12)] = FMA(KP923879532, TkA, Tkz);
Chris@42 1443 ii[WS(rs, 60)] = FMA(KP923879532, TkC, TkB);
Chris@42 1444 ii[WS(rs, 28)] = FNMS(KP923879532, TkC, TkB);
Chris@42 1445 ri[WS(rs, 12)] = FMA(KP923879532, Tjl, TiY);
Chris@42 1446 ri[WS(rs, 44)] = FNMS(KP923879532, Tjl, TiY);
Chris@42 1447 Tku = TjD + TjE;
Chris@42 1448 TjF = TjD - TjE;
Chris@42 1449 }
Chris@42 1450 }
Chris@42 1451 ii[WS(rs, 36)] = FNMS(KP923879532, Tku, Tkt);
Chris@42 1452 ii[WS(rs, 4)] = FMA(KP923879532, Tku, Tkt);
Chris@42 1453 ri[WS(rs, 20)] = FMA(KP923879532, TjF, TjC);
Chris@42 1454 ri[WS(rs, 52)] = FNMS(KP923879532, TjF, TjC);
Chris@42 1455 }
Chris@42 1456 }
Chris@42 1457 }
Chris@42 1458 }
Chris@42 1459 {
Chris@42 1460 E TkV, Tl1, ThG, Tgk, TkH, TkN, Tis, Ti0, Thv, ThJ, TkO, TkI, TgH, Thy, TiC;
Chris@42 1461 E TiG, Tiq, Tim, ThN, ThT, ThD, Th9, TkW, Tiv, Tl2, Ti7, ThP, Thq, Tiz, TiF;
Chris@42 1462 E Tip, Tif;
Chris@42 1463 {
Chris@42 1464 E Ti1, Ti2, Ti4, Ti5, Thp, The, Tij, TiB, Tii, Tik;
Chris@42 1465 {
Chris@42 1466 E ThW, Tg8, TkT, TkF, ThX, ThY, TkU, Tgj, Tgd, Tgi;
Chris@42 1467 ThW = Tg4 - Tg7;
Chris@42 1468 Tg8 = Tg4 + Tg7;
Chris@42 1469 TkT = TkE - TkD;
Chris@42 1470 TkF = TkD + TkE;
Chris@42 1471 ThX = Tgc - Tg9;
Chris@42 1472 Tgd = Tg9 + Tgc;
Chris@42 1473 ii[WS(rs, 52)] = FNMS(KP923879532, Tkw, Tkv);
Chris@42 1474 ii[WS(rs, 20)] = FMA(KP923879532, Tkw, Tkv);
Chris@42 1475 Tgi = Tge - Tgh;
Chris@42 1476 ThY = Tge + Tgh;
Chris@42 1477 TkU = Tgi - Tgd;
Chris@42 1478 Tgj = Tgd + Tgi;
Chris@42 1479 {
Chris@42 1480 E TgA, ThH, Tgv, TgF;
Chris@42 1481 {
Chris@42 1482 E Tgp, TkG, ThZ, Tgu;
Chris@42 1483 Ti1 = Tgn - Tgo;
Chris@42 1484 Tgp = Tgn + Tgo;
Chris@42 1485 TkV = FMA(KP707106781, TkU, TkT);
Chris@42 1486 Tl1 = FNMS(KP707106781, TkU, TkT);
Chris@42 1487 ThG = FMA(KP707106781, Tgj, Tg8);
Chris@42 1488 Tgk = FNMS(KP707106781, Tgj, Tg8);
Chris@42 1489 TkG = ThX + ThY;
Chris@42 1490 ThZ = ThX - ThY;
Chris@42 1491 Tgu = Tgq + Tgt;
Chris@42 1492 Ti2 = Tgq - Tgt;
Chris@42 1493 Ti4 = Tgy - Tgz;
Chris@42 1494 TgA = Tgy + Tgz;
Chris@42 1495 TkH = FMA(KP707106781, TkG, TkF);
Chris@42 1496 TkN = FNMS(KP707106781, TkG, TkF);
Chris@42 1497 Tis = FNMS(KP707106781, ThZ, ThW);
Chris@42 1498 Ti0 = FMA(KP707106781, ThZ, ThW);
Chris@42 1499 ThH = FMA(KP414213562, Tgp, Tgu);
Chris@42 1500 Tgv = FNMS(KP414213562, Tgu, Tgp);
Chris@42 1501 TgF = TgB + TgE;
Chris@42 1502 Ti5 = TgB - TgE;
Chris@42 1503 }
Chris@42 1504 {
Chris@42 1505 E Tig, Tih, ThI, TgG;
Chris@42 1506 Thv = Thr + Thu;
Chris@42 1507 Tig = Thr - Thu;
Chris@42 1508 Tih = Tho - Thj;
Chris@42 1509 Thp = Thj + Tho;
Chris@42 1510 The = Thc + Thd;
Chris@42 1511 Tij = Thc - Thd;
Chris@42 1512 ThI = FNMS(KP414213562, TgA, TgF);
Chris@42 1513 TgG = FMA(KP414213562, TgF, TgA);
Chris@42 1514 TiB = FMA(KP707106781, Tih, Tig);
Chris@42 1515 Tii = FNMS(KP707106781, Tih, Tig);
Chris@42 1516 ThJ = ThH + ThI;
Chris@42 1517 TkO = ThI - ThH;
Chris@42 1518 TkI = Tgv + TgG;
Chris@42 1519 TgH = Tgv - TgG;
Chris@42 1520 Tik = Thw - Thx;
Chris@42 1521 Thy = Thw + Thx;
Chris@42 1522 }
Chris@42 1523 }
Chris@42 1524 }
Chris@42 1525 {
Chris@42 1526 E Tic, Tia, Ti9, Tid, Tit, Ti3;
Chris@42 1527 {
Chris@42 1528 E Th4, ThM, TgZ, Th7, ThL, Th8;
Chris@42 1529 {
Chris@42 1530 E TgN, TgY, TiA, Til;
Chris@42 1531 Tic = TgL - TgM;
Chris@42 1532 TgN = TgL + TgM;
Chris@42 1533 TgY = TgS + TgX;
Chris@42 1534 Tia = TgX - TgS;
Chris@42 1535 Ti9 = Th0 - Th3;
Chris@42 1536 Th4 = Th0 + Th3;
Chris@42 1537 TiA = FMA(KP707106781, Tik, Tij);
Chris@42 1538 Til = FNMS(KP707106781, Tik, Tij);
Chris@42 1539 ThM = FMA(KP707106781, TgY, TgN);
Chris@42 1540 TgZ = FNMS(KP707106781, TgY, TgN);
Chris@42 1541 TiC = FNMS(KP198912367, TiB, TiA);
Chris@42 1542 TiG = FMA(KP198912367, TiA, TiB);
Chris@42 1543 Tiq = FMA(KP668178637, Tii, Til);
Chris@42 1544 Tim = FNMS(KP668178637, Til, Tii);
Chris@42 1545 Th7 = Th5 + Th6;
Chris@42 1546 Tid = Th5 - Th6;
Chris@42 1547 }
Chris@42 1548 ThL = FMA(KP707106781, Th7, Th4);
Chris@42 1549 Th8 = FNMS(KP707106781, Th7, Th4);
Chris@42 1550 Tit = FNMS(KP414213562, Ti1, Ti2);
Chris@42 1551 Ti3 = FMA(KP414213562, Ti2, Ti1);
Chris@42 1552 ThN = FMA(KP198912367, ThM, ThL);
Chris@42 1553 ThT = FNMS(KP198912367, ThL, ThM);
Chris@42 1554 ThD = FNMS(KP668178637, TgZ, Th8);
Chris@42 1555 Th9 = FMA(KP668178637, Th8, TgZ);
Chris@42 1556 }
Chris@42 1557 {
Chris@42 1558 E Tiy, Tib, Tiu, Ti6, Tix, Tie;
Chris@42 1559 Tiu = FMA(KP414213562, Ti4, Ti5);
Chris@42 1560 Ti6 = FNMS(KP414213562, Ti5, Ti4);
Chris@42 1561 Tiy = FMA(KP707106781, Tia, Ti9);
Chris@42 1562 Tib = FNMS(KP707106781, Tia, Ti9);
Chris@42 1563 TkW = Tiu - Tit;
Chris@42 1564 Tiv = Tit + Tiu;
Chris@42 1565 Tl2 = Ti3 + Ti6;
Chris@42 1566 Ti7 = Ti3 - Ti6;
Chris@42 1567 Tix = FMA(KP707106781, Tid, Tic);
Chris@42 1568 Tie = FNMS(KP707106781, Tid, Tic);
Chris@42 1569 ThP = FMA(KP707106781, Thp, The);
Chris@42 1570 Thq = FNMS(KP707106781, Thp, The);
Chris@42 1571 Tiz = FMA(KP198912367, Tiy, Tix);
Chris@42 1572 TiF = FNMS(KP198912367, Tix, Tiy);
Chris@42 1573 Tip = FNMS(KP668178637, Tib, Tie);
Chris@42 1574 Tif = FMA(KP668178637, Tie, Tib);
Chris@42 1575 }
Chris@42 1576 }
Chris@42 1577 }
Chris@42 1578 {
Chris@42 1579 E TkM, TkL, Tl0, TkZ;
Chris@42 1580 {
Chris@42 1581 E ThC, TgI, TkP, TkR, ThO, Thz;
Chris@42 1582 ThC = FNMS(KP923879532, TgH, Tgk);
Chris@42 1583 TgI = FMA(KP923879532, TgH, Tgk);
Chris@42 1584 TkP = FMA(KP923879532, TkO, TkN);
Chris@42 1585 TkR = FNMS(KP923879532, TkO, TkN);
Chris@42 1586 ThO = FMA(KP707106781, Thy, Thv);
Chris@42 1587 Thz = FNMS(KP707106781, Thy, Thv);
Chris@42 1588 {
Chris@42 1589 E ThS, TkJ, TkK, ThV;
Chris@42 1590 {
Chris@42 1591 E ThK, ThU, ThE, ThA, ThR, ThQ;
Chris@42 1592 ThS = FNMS(KP923879532, ThJ, ThG);
Chris@42 1593 ThK = FMA(KP923879532, ThJ, ThG);
Chris@42 1594 ThQ = FNMS(KP198912367, ThP, ThO);
Chris@42 1595 ThU = FMA(KP198912367, ThO, ThP);
Chris@42 1596 ThE = FMA(KP668178637, Thq, Thz);
Chris@42 1597 ThA = FNMS(KP668178637, Thz, Thq);
Chris@42 1598 ThR = ThN + ThQ;
Chris@42 1599 TkM = ThQ - ThN;
Chris@42 1600 TkL = FNMS(KP923879532, TkI, TkH);
Chris@42 1601 TkJ = FMA(KP923879532, TkI, TkH);
Chris@42 1602 {
Chris@42 1603 E ThF, TkQ, TkS, ThB;
Chris@42 1604 ThF = ThD + ThE;
Chris@42 1605 TkQ = ThE - ThD;
Chris@42 1606 TkS = Th9 + ThA;
Chris@42 1607 ThB = Th9 - ThA;
Chris@42 1608 ri[WS(rs, 2)] = FMA(KP980785280, ThR, ThK);
Chris@42 1609 ri[WS(rs, 34)] = FNMS(KP980785280, ThR, ThK);
Chris@42 1610 ri[WS(rs, 58)] = FMA(KP831469612, ThF, ThC);
Chris@42 1611 ri[WS(rs, 26)] = FNMS(KP831469612, ThF, ThC);
Chris@42 1612 ii[WS(rs, 42)] = FNMS(KP831469612, TkQ, TkP);
Chris@42 1613 ii[WS(rs, 10)] = FMA(KP831469612, TkQ, TkP);
Chris@42 1614 ii[WS(rs, 58)] = FMA(KP831469612, TkS, TkR);
Chris@42 1615 ii[WS(rs, 26)] = FNMS(KP831469612, TkS, TkR);
Chris@42 1616 ri[WS(rs, 10)] = FMA(KP831469612, ThB, TgI);
Chris@42 1617 ri[WS(rs, 42)] = FNMS(KP831469612, ThB, TgI);
Chris@42 1618 TkK = ThT + ThU;
Chris@42 1619 ThV = ThT - ThU;
Chris@42 1620 }
Chris@42 1621 }
Chris@42 1622 ii[WS(rs, 34)] = FNMS(KP980785280, TkK, TkJ);
Chris@42 1623 ii[WS(rs, 2)] = FMA(KP980785280, TkK, TkJ);
Chris@42 1624 ri[WS(rs, 18)] = FMA(KP980785280, ThV, ThS);
Chris@42 1625 ri[WS(rs, 50)] = FNMS(KP980785280, ThV, ThS);
Chris@42 1626 }
Chris@42 1627 }
Chris@42 1628 {
Chris@42 1629 E Tio, TkX, TkY, Tir, Ti8, Tin;
Chris@42 1630 Tio = FNMS(KP923879532, Ti7, Ti0);
Chris@42 1631 Ti8 = FMA(KP923879532, Ti7, Ti0);
Chris@42 1632 Tin = Tif + Tim;
Chris@42 1633 Tl0 = Tim - Tif;
Chris@42 1634 TkZ = FNMS(KP923879532, TkW, TkV);
Chris@42 1635 TkX = FMA(KP923879532, TkW, TkV);
Chris@42 1636 ii[WS(rs, 50)] = FNMS(KP980785280, TkM, TkL);
Chris@42 1637 ii[WS(rs, 18)] = FMA(KP980785280, TkM, TkL);
Chris@42 1638 ri[WS(rs, 6)] = FMA(KP831469612, Tin, Ti8);
Chris@42 1639 ri[WS(rs, 38)] = FNMS(KP831469612, Tin, Ti8);
Chris@42 1640 TkY = Tip + Tiq;
Chris@42 1641 Tir = Tip - Tiq;
Chris@42 1642 ii[WS(rs, 38)] = FNMS(KP831469612, TkY, TkX);
Chris@42 1643 ii[WS(rs, 6)] = FMA(KP831469612, TkY, TkX);
Chris@42 1644 ri[WS(rs, 22)] = FMA(KP831469612, Tir, Tio);
Chris@42 1645 ri[WS(rs, 54)] = FNMS(KP831469612, Tir, Tio);
Chris@42 1646 }
Chris@42 1647 {
Chris@42 1648 E TiE, Tl3, Tl4, TiH, Tiw, TiD;
Chris@42 1649 TiE = FMA(KP923879532, Tiv, Tis);
Chris@42 1650 Tiw = FNMS(KP923879532, Tiv, Tis);
Chris@42 1651 TiD = Tiz - TiC;
Chris@42 1652 Tl6 = Tiz + TiC;
Chris@42 1653 Tl5 = FMA(KP923879532, Tl2, Tl1);
Chris@42 1654 Tl3 = FNMS(KP923879532, Tl2, Tl1);
Chris@42 1655 ii[WS(rs, 54)] = FNMS(KP831469612, Tl0, TkZ);
Chris@42 1656 ii[WS(rs, 22)] = FMA(KP831469612, Tl0, TkZ);
Chris@42 1657 ri[WS(rs, 14)] = FMA(KP980785280, TiD, Tiw);
Chris@42 1658 ri[WS(rs, 46)] = FNMS(KP980785280, TiD, Tiw);
Chris@42 1659 Tl4 = TiG - TiF;
Chris@42 1660 TiH = TiF + TiG;
Chris@42 1661 ii[WS(rs, 46)] = FNMS(KP980785280, Tl4, Tl3);
Chris@42 1662 ii[WS(rs, 14)] = FMA(KP980785280, Tl4, Tl3);
Chris@42 1663 ri[WS(rs, 62)] = FMA(KP980785280, TiH, TiE);
Chris@42 1664 ri[WS(rs, 30)] = FNMS(KP980785280, TiH, TiE);
Chris@42 1665 }
Chris@42 1666 }
Chris@42 1667 }
Chris@42 1668 {
Chris@42 1669 E Tla, TdV, TdO, Tm6, Tm5, TdR;
Chris@42 1670 {
Chris@42 1671 E TcT, TlO, TlI, Tar, TcX, Td3, TcN, TbB, TdM, TdQ, TdA, Tdw, TdJ, TdP, Tdz;
Chris@42 1672 E Tdp, TlW, TdF, Tm2, Tdh, Td7, T91, Td6, T8M, TlT, TlF, Td0, Td4, TcO, TcK;
Chris@42 1673 E T9g, Td8;
Chris@42 1674 {
Chris@42 1675 E Tdb, Tdc, Tde, Tdf, Tdm, Tdk, Tdj, Tdn, TcF, Tct, TbY, Tdt, TdL, Tds, Tdu;
Chris@42 1676 E TcI, TdD, Tdd;
Chris@42 1677 {
Chris@42 1678 E Tae, TcR, T9R, Tap, T9F, T9Q;
Chris@42 1679 Tdb = FMA(KP707106781, T9E, T9p);
Chris@42 1680 T9F = FNMS(KP707106781, T9E, T9p);
Chris@42 1681 T9Q = FNMS(KP707106781, T9P, T9M);
Chris@42 1682 Tdc = FMA(KP707106781, T9P, T9M);
Chris@42 1683 Tde = FMA(KP707106781, Tad, T9Y);
Chris@42 1684 Tae = FNMS(KP707106781, Tad, T9Y);
Chris@42 1685 ii[WS(rs, 62)] = FMA(KP980785280, Tl6, Tl5);
Chris@42 1686 ii[WS(rs, 30)] = FNMS(KP980785280, Tl6, Tl5);
Chris@42 1687 TcR = FMA(KP668178637, T9F, T9Q);
Chris@42 1688 T9R = FNMS(KP668178637, T9Q, T9F);
Chris@42 1689 Tap = FNMS(KP707106781, Tao, Tal);
Chris@42 1690 Tdf = FMA(KP707106781, Tao, Tal);
Chris@42 1691 {
Chris@42 1692 E Tbw, TcW, Tbl, Tbz;
Chris@42 1693 {
Chris@42 1694 E TaP, Tbk, TcS, Taq;
Chris@42 1695 Tdm = FMA(KP707106781, TaO, Taz);
Chris@42 1696 TaP = FNMS(KP707106781, TaO, Taz);
Chris@42 1697 Tbk = Tb4 - Tbj;
Chris@42 1698 Tdk = Tbj + Tb4;
Chris@42 1699 Tdj = FMA(KP707106781, Tbv, Tbs);
Chris@42 1700 Tbw = FNMS(KP707106781, Tbv, Tbs);
Chris@42 1701 TcS = FNMS(KP668178637, Tae, Tap);
Chris@42 1702 Taq = FMA(KP668178637, Tap, Tae);
Chris@42 1703 TcW = FMA(KP923879532, Tbk, TaP);
Chris@42 1704 Tbl = FNMS(KP923879532, Tbk, TaP);
Chris@42 1705 TcT = TcR + TcS;
Chris@42 1706 TlO = TcS - TcR;
Chris@42 1707 TlI = T9R + Taq;
Chris@42 1708 Tar = T9R - Taq;
Chris@42 1709 Tbz = Tbx - Tby;
Chris@42 1710 Tdn = Tbx + Tby;
Chris@42 1711 }
Chris@42 1712 {
Chris@42 1713 E Tdq, Tdr, TcV, TbA;
Chris@42 1714 TcF = FNMS(KP707106781, TcE, TcB);
Chris@42 1715 Tdq = FMA(KP707106781, TcE, TcB);
Chris@42 1716 Tdr = Tcs + Tcd;
Chris@42 1717 Tct = Tcd - Tcs;
Chris@42 1718 TbY = FNMS(KP707106781, TbX, TbI);
Chris@42 1719 Tdt = FMA(KP707106781, TbX, TbI);
Chris@42 1720 TcV = FMA(KP923879532, Tbz, Tbw);
Chris@42 1721 TbA = FNMS(KP923879532, Tbz, Tbw);
Chris@42 1722 TdL = FMA(KP923879532, Tdr, Tdq);
Chris@42 1723 Tds = FNMS(KP923879532, Tdr, Tdq);
Chris@42 1724 TcX = FMA(KP303346683, TcW, TcV);
Chris@42 1725 Td3 = FNMS(KP303346683, TcV, TcW);
Chris@42 1726 TcN = FNMS(KP534511135, Tbl, TbA);
Chris@42 1727 TbB = FMA(KP534511135, TbA, Tbl);
Chris@42 1728 Tdu = TcG + TcH;
Chris@42 1729 TcI = TcG - TcH;
Chris@42 1730 }
Chris@42 1731 }
Chris@42 1732 }
Chris@42 1733 {
Chris@42 1734 E TdI, Tdl, TdK, Tdv, TdH, Tdo;
Chris@42 1735 TdK = FMA(KP923879532, Tdu, Tdt);
Chris@42 1736 Tdv = FNMS(KP923879532, Tdu, Tdt);
Chris@42 1737 TdI = FMA(KP923879532, Tdk, Tdj);
Chris@42 1738 Tdl = FNMS(KP923879532, Tdk, Tdj);
Chris@42 1739 TdM = FNMS(KP098491403, TdL, TdK);
Chris@42 1740 TdQ = FMA(KP098491403, TdK, TdL);
Chris@42 1741 TdA = FMA(KP820678790, Tds, Tdv);
Chris@42 1742 Tdw = FNMS(KP820678790, Tdv, Tds);
Chris@42 1743 TdH = FMA(KP923879532, Tdn, Tdm);
Chris@42 1744 Tdo = FNMS(KP923879532, Tdn, Tdm);
Chris@42 1745 TdD = FNMS(KP198912367, Tdb, Tdc);
Chris@42 1746 Tdd = FMA(KP198912367, Tdc, Tdb);
Chris@42 1747 TdJ = FMA(KP098491403, TdI, TdH);
Chris@42 1748 TdP = FNMS(KP098491403, TdH, TdI);
Chris@42 1749 Tdz = FNMS(KP820678790, Tdl, Tdo);
Chris@42 1750 Tdp = FMA(KP820678790, Tdo, Tdl);
Chris@42 1751 }
Chris@42 1752 {
Chris@42 1753 E TcZ, Tcu, TdE, Tdg;
Chris@42 1754 TdE = FMA(KP198912367, Tde, Tdf);
Chris@42 1755 Tdg = FNMS(KP198912367, Tdf, Tde);
Chris@42 1756 TcZ = FMA(KP923879532, Tct, TbY);
Chris@42 1757 Tcu = FNMS(KP923879532, Tct, TbY);
Chris@42 1758 TlW = TdE - TdD;
Chris@42 1759 TdF = TdD + TdE;
Chris@42 1760 Tm2 = Tdd + Tdg;
Chris@42 1761 Tdh = Tdd - Tdg;
Chris@42 1762 {
Chris@42 1763 E T8L, TlE, TcY, TcJ;
Chris@42 1764 Tla = T8D + T8K;
Chris@42 1765 T8L = T8D - T8K;
Chris@42 1766 TlE = TdU - TdT;
Chris@42 1767 TdV = TdT + TdU;
Chris@42 1768 Td7 = FNMS(KP414213562, T8T, T90);
Chris@42 1769 T91 = FMA(KP414213562, T90, T8T);
Chris@42 1770 TcY = FMA(KP923879532, TcI, TcF);
Chris@42 1771 TcJ = FNMS(KP923879532, TcI, TcF);
Chris@42 1772 Td6 = FNMS(KP707106781, T8L, T8w);
Chris@42 1773 T8M = FMA(KP707106781, T8L, T8w);
Chris@42 1774 TlT = FNMS(KP707106781, TlE, TlD);
Chris@42 1775 TlF = FMA(KP707106781, TlE, TlD);
Chris@42 1776 Td0 = FNMS(KP303346683, TcZ, TcY);
Chris@42 1777 Td4 = FMA(KP303346683, TcY, TcZ);
Chris@42 1778 TcO = FMA(KP534511135, Tcu, TcJ);
Chris@42 1779 TcK = FNMS(KP534511135, TcJ, Tcu);
Chris@42 1780 T9g = FNMS(KP414213562, T9f, T98);
Chris@42 1781 Td8 = FMA(KP414213562, T98, T9f);
Chris@42 1782 }
Chris@42 1783 }
Chris@42 1784 }
Chris@42 1785 {
Chris@42 1786 E Tm1, TlV, TdC, Tda, Td2, TlM, TlL, Td5;
Chris@42 1787 {
Chris@42 1788 E TlS, TcQ, TlH, TcM, TlR, TcP;
Chris@42 1789 {
Chris@42 1790 E TcL, Tas, TlP, TlQ, TlN;
Chris@42 1791 TlS = TbB + TcK;
Chris@42 1792 TcL = TbB - TcK;
Chris@42 1793 {
Chris@42 1794 E TlU, T9h, TlG, Td9, T9i;
Chris@42 1795 TlU = T91 + T9g;
Chris@42 1796 T9h = T91 - T9g;
Chris@42 1797 TlG = Td8 - Td7;
Chris@42 1798 Td9 = Td7 + Td8;
Chris@42 1799 Tm1 = FMA(KP923879532, TlU, TlT);
Chris@42 1800 TlV = FNMS(KP923879532, TlU, TlT);
Chris@42 1801 TcQ = FMA(KP923879532, T9h, T8M);
Chris@42 1802 T9i = FNMS(KP923879532, T9h, T8M);
Chris@42 1803 TlN = FNMS(KP923879532, TlG, TlF);
Chris@42 1804 TlH = FMA(KP923879532, TlG, TlF);
Chris@42 1805 TdC = FMA(KP923879532, Td9, Td6);
Chris@42 1806 Tda = FNMS(KP923879532, Td9, Td6);
Chris@42 1807 Tas = FMA(KP831469612, Tar, T9i);
Chris@42 1808 TcM = FNMS(KP831469612, Tar, T9i);
Chris@42 1809 }
Chris@42 1810 TlR = FNMS(KP831469612, TlO, TlN);
Chris@42 1811 TlP = FMA(KP831469612, TlO, TlN);
Chris@42 1812 TlQ = TcO - TcN;
Chris@42 1813 TcP = TcN + TcO;
Chris@42 1814 ri[WS(rs, 11)] = FMA(KP881921264, TcL, Tas);
Chris@42 1815 ri[WS(rs, 43)] = FNMS(KP881921264, TcL, Tas);
Chris@42 1816 ii[WS(rs, 43)] = FNMS(KP881921264, TlQ, TlP);
Chris@42 1817 ii[WS(rs, 11)] = FMA(KP881921264, TlQ, TlP);
Chris@42 1818 }
Chris@42 1819 {
Chris@42 1820 E TcU, Td1, TlJ, TlK;
Chris@42 1821 Td2 = FNMS(KP831469612, TcT, TcQ);
Chris@42 1822 TcU = FMA(KP831469612, TcT, TcQ);
Chris@42 1823 ri[WS(rs, 59)] = FMA(KP881921264, TcP, TcM);
Chris@42 1824 ri[WS(rs, 27)] = FNMS(KP881921264, TcP, TcM);
Chris@42 1825 ii[WS(rs, 59)] = FMA(KP881921264, TlS, TlR);
Chris@42 1826 ii[WS(rs, 27)] = FNMS(KP881921264, TlS, TlR);
Chris@42 1827 Td1 = TcX + Td0;
Chris@42 1828 TlM = Td0 - TcX;
Chris@42 1829 TlL = FNMS(KP831469612, TlI, TlH);
Chris@42 1830 TlJ = FMA(KP831469612, TlI, TlH);
Chris@42 1831 TlK = Td3 + Td4;
Chris@42 1832 Td5 = Td3 - Td4;
Chris@42 1833 ri[WS(rs, 3)] = FMA(KP956940335, Td1, TcU);
Chris@42 1834 ri[WS(rs, 35)] = FNMS(KP956940335, Td1, TcU);
Chris@42 1835 ii[WS(rs, 35)] = FNMS(KP956940335, TlK, TlJ);
Chris@42 1836 ii[WS(rs, 3)] = FMA(KP956940335, TlK, TlJ);
Chris@42 1837 }
Chris@42 1838 }
Chris@42 1839 {
Chris@42 1840 E Tdy, Tm0, TlZ, TdB;
Chris@42 1841 {
Chris@42 1842 E Tdi, Tdx, TlX, TlY;
Chris@42 1843 Tdy = FNMS(KP980785280, Tdh, Tda);
Chris@42 1844 Tdi = FMA(KP980785280, Tdh, Tda);
Chris@42 1845 ri[WS(rs, 19)] = FMA(KP956940335, Td5, Td2);
Chris@42 1846 ri[WS(rs, 51)] = FNMS(KP956940335, Td5, Td2);
Chris@42 1847 ii[WS(rs, 51)] = FNMS(KP956940335, TlM, TlL);
Chris@42 1848 ii[WS(rs, 19)] = FMA(KP956940335, TlM, TlL);
Chris@42 1849 Tdx = Tdp + Tdw;
Chris@42 1850 Tm0 = Tdw - Tdp;
Chris@42 1851 TlZ = FNMS(KP980785280, TlW, TlV);
Chris@42 1852 TlX = FMA(KP980785280, TlW, TlV);
Chris@42 1853 TlY = Tdz + TdA;
Chris@42 1854 TdB = Tdz - TdA;
Chris@42 1855 ri[WS(rs, 7)] = FMA(KP773010453, Tdx, Tdi);
Chris@42 1856 ri[WS(rs, 39)] = FNMS(KP773010453, Tdx, Tdi);
Chris@42 1857 ii[WS(rs, 39)] = FNMS(KP773010453, TlY, TlX);
Chris@42 1858 ii[WS(rs, 7)] = FMA(KP773010453, TlY, TlX);
Chris@42 1859 }
Chris@42 1860 {
Chris@42 1861 E TdG, TdN, Tm3, Tm4;
Chris@42 1862 TdO = FMA(KP980785280, TdF, TdC);
Chris@42 1863 TdG = FNMS(KP980785280, TdF, TdC);
Chris@42 1864 ri[WS(rs, 23)] = FMA(KP773010453, TdB, Tdy);
Chris@42 1865 ri[WS(rs, 55)] = FNMS(KP773010453, TdB, Tdy);
Chris@42 1866 ii[WS(rs, 55)] = FNMS(KP773010453, Tm0, TlZ);
Chris@42 1867 ii[WS(rs, 23)] = FMA(KP773010453, Tm0, TlZ);
Chris@42 1868 TdN = TdJ - TdM;
Chris@42 1869 Tm6 = TdJ + TdM;
Chris@42 1870 Tm5 = FMA(KP980785280, Tm2, Tm1);
Chris@42 1871 Tm3 = FNMS(KP980785280, Tm2, Tm1);
Chris@42 1872 Tm4 = TdQ - TdP;
Chris@42 1873 TdR = TdP + TdQ;
Chris@42 1874 ri[WS(rs, 15)] = FMA(KP995184726, TdN, TdG);
Chris@42 1875 ri[WS(rs, 47)] = FNMS(KP995184726, TdN, TdG);
Chris@42 1876 ii[WS(rs, 47)] = FNMS(KP995184726, Tm4, Tm3);
Chris@42 1877 ii[WS(rs, 15)] = FMA(KP995184726, Tm4, Tm3);
Chris@42 1878 }
Chris@42 1879 }
Chris@42 1880 }
Chris@42 1881 }
Chris@42 1882 {
Chris@42 1883 E Tf5, Tlk, Tle, Tej, Tf9, Tff, TeZ, TeD, TfY, Tg2, TfM, TfI, TfV, Tg1, TfL;
Chris@42 1884 E TfB, Tls, TfR, Tly, Tft, Tfj, TdZ, Tfi, TdW, Tlp, Tlb, Tfc, Tfg, Tf0, TeW;
Chris@42 1885 E Te2, Tfk;
Chris@42 1886 {
Chris@42 1887 E Tfn, Tfo, Tfq, Tfr, Tfy, Tfw, Tfv, Tfz, TeR, TeN, TeG, TfF, TfX, TfE, TfG;
Chris@42 1888 E TeU, TfP, Tfp;
Chris@42 1889 {
Chris@42 1890 E Te7, Tea, Tee, Teh;
Chris@42 1891 Tfn = FNMS(KP707106781, Te6, Te5);
Chris@42 1892 Te7 = FMA(KP707106781, Te6, Te5);
Chris@42 1893 ri[WS(rs, 63)] = FMA(KP995184726, TdR, TdO);
Chris@42 1894 ri[WS(rs, 31)] = FNMS(KP995184726, TdR, TdO);
Chris@42 1895 ii[WS(rs, 63)] = FMA(KP995184726, Tm6, Tm5);
Chris@42 1896 ii[WS(rs, 31)] = FNMS(KP995184726, Tm6, Tm5);
Chris@42 1897 Tea = FMA(KP707106781, Te9, Te8);
Chris@42 1898 Tfo = FNMS(KP707106781, Te9, Te8);
Chris@42 1899 Tfq = FNMS(KP707106781, Ted, Tec);
Chris@42 1900 Tee = FMA(KP707106781, Ted, Tec);
Chris@42 1901 Teh = FMA(KP707106781, Teg, Tef);
Chris@42 1902 Tfr = FNMS(KP707106781, Teg, Tef);
Chris@42 1903 {
Chris@42 1904 E Tey, Tf8, Tev, TeB;
Chris@42 1905 {
Chris@42 1906 E Ten, Tf3, Teb, Tf4, Tei, Teu;
Chris@42 1907 Tfy = FNMS(KP707106781, Tem, Tel);
Chris@42 1908 Ten = FMA(KP707106781, Tem, Tel);
Chris@42 1909 Tf3 = FMA(KP198912367, Te7, Tea);
Chris@42 1910 Teb = FNMS(KP198912367, Tea, Te7);
Chris@42 1911 Tf4 = FNMS(KP198912367, Tee, Teh);
Chris@42 1912 Tei = FMA(KP198912367, Teh, Tee);
Chris@42 1913 Teu = Teq + Tet;
Chris@42 1914 Tfw = Tet - Teq;
Chris@42 1915 Tfv = FNMS(KP707106781, Tex, Tew);
Chris@42 1916 Tey = FMA(KP707106781, Tex, Tew);
Chris@42 1917 Tf5 = Tf3 + Tf4;
Chris@42 1918 Tlk = Tf4 - Tf3;
Chris@42 1919 Tle = Teb + Tei;
Chris@42 1920 Tej = Teb - Tei;
Chris@42 1921 Tf8 = FMA(KP923879532, Teu, Ten);
Chris@42 1922 Tev = FNMS(KP923879532, Teu, Ten);
Chris@42 1923 TeB = Tez + TeA;
Chris@42 1924 Tfz = Tez - TeA;
Chris@42 1925 }
Chris@42 1926 {
Chris@42 1927 E TfC, TfD, Tf7, TeC;
Chris@42 1928 TeR = FMA(KP707106781, TeQ, TeP);
Chris@42 1929 TfC = FNMS(KP707106781, TeQ, TeP);
Chris@42 1930 TfD = TeM - TeJ;
Chris@42 1931 TeN = TeJ + TeM;
Chris@42 1932 TeG = FMA(KP707106781, TeF, TeE);
Chris@42 1933 TfF = FNMS(KP707106781, TeF, TeE);
Chris@42 1934 Tf7 = FMA(KP923879532, TeB, Tey);
Chris@42 1935 TeC = FNMS(KP923879532, TeB, Tey);
Chris@42 1936 TfX = FMA(KP923879532, TfD, TfC);
Chris@42 1937 TfE = FNMS(KP923879532, TfD, TfC);
Chris@42 1938 Tf9 = FMA(KP098491403, Tf8, Tf7);
Chris@42 1939 Tff = FNMS(KP098491403, Tf7, Tf8);
Chris@42 1940 TeZ = FNMS(KP820678790, Tev, TeC);
Chris@42 1941 TeD = FMA(KP820678790, TeC, Tev);
Chris@42 1942 TfG = TeS - TeT;
Chris@42 1943 TeU = TeS + TeT;
Chris@42 1944 }
Chris@42 1945 }
Chris@42 1946 }
Chris@42 1947 {
Chris@42 1948 E TfU, Tfx, TfW, TfH, TfT, TfA;
Chris@42 1949 TfW = FMA(KP923879532, TfG, TfF);
Chris@42 1950 TfH = FNMS(KP923879532, TfG, TfF);
Chris@42 1951 TfU = FMA(KP923879532, Tfw, Tfv);
Chris@42 1952 Tfx = FNMS(KP923879532, Tfw, Tfv);
Chris@42 1953 TfY = FNMS(KP303346683, TfX, TfW);
Chris@42 1954 Tg2 = FMA(KP303346683, TfW, TfX);
Chris@42 1955 TfM = FMA(KP534511135, TfE, TfH);
Chris@42 1956 TfI = FNMS(KP534511135, TfH, TfE);
Chris@42 1957 TfT = FMA(KP923879532, Tfz, Tfy);
Chris@42 1958 TfA = FNMS(KP923879532, Tfz, Tfy);
Chris@42 1959 TfP = FNMS(KP668178637, Tfn, Tfo);
Chris@42 1960 Tfp = FMA(KP668178637, Tfo, Tfn);
Chris@42 1961 TfV = FMA(KP303346683, TfU, TfT);
Chris@42 1962 Tg1 = FNMS(KP303346683, TfT, TfU);
Chris@42 1963 TfL = FNMS(KP534511135, Tfx, TfA);
Chris@42 1964 TfB = FMA(KP534511135, TfA, Tfx);
Chris@42 1965 }
Chris@42 1966 {
Chris@42 1967 E Tfb, TeO, TfQ, Tfs, Tfa, TeV;
Chris@42 1968 TfQ = FMA(KP668178637, Tfq, Tfr);
Chris@42 1969 Tfs = FNMS(KP668178637, Tfr, Tfq);
Chris@42 1970 Tfb = FMA(KP923879532, TeN, TeG);
Chris@42 1971 TeO = FNMS(KP923879532, TeN, TeG);
Chris@42 1972 Tls = TfQ - TfP;
Chris@42 1973 TfR = TfP + TfQ;
Chris@42 1974 Tly = Tfp + Tfs;
Chris@42 1975 Tft = Tfp - Tfs;
Chris@42 1976 Tfj = FNMS(KP414213562, TdX, TdY);
Chris@42 1977 TdZ = FMA(KP414213562, TdY, TdX);
Chris@42 1978 Tfa = FMA(KP923879532, TeU, TeR);
Chris@42 1979 TeV = FNMS(KP923879532, TeU, TeR);
Chris@42 1980 Tfi = FNMS(KP707106781, TdV, TdS);
Chris@42 1981 TdW = FMA(KP707106781, TdV, TdS);
Chris@42 1982 Tlp = FNMS(KP707106781, Tla, Tl9);
Chris@42 1983 Tlb = FMA(KP707106781, Tla, Tl9);
Chris@42 1984 Tfc = FNMS(KP098491403, Tfb, Tfa);
Chris@42 1985 Tfg = FMA(KP098491403, Tfa, Tfb);
Chris@42 1986 Tf0 = FMA(KP820678790, TeO, TeV);
Chris@42 1987 TeW = FNMS(KP820678790, TeV, TeO);
Chris@42 1988 Te2 = FNMS(KP414213562, Te1, Te0);
Chris@42 1989 Tfk = FMA(KP414213562, Te0, Te1);
Chris@42 1990 }
Chris@42 1991 }
Chris@42 1992 {
Chris@42 1993 E Tlx, Tlr, TfO, Tfm, Tfe, Tli, Tlh, Tfh;
Chris@42 1994 {
Chris@42 1995 E Tlo, Tf2, Tld, TeY, Tln, Tf1;
Chris@42 1996 {
Chris@42 1997 E TeX, Tek, Tll, Tlm, Tlj;
Chris@42 1998 Tlo = TeD + TeW;
Chris@42 1999 TeX = TeD - TeW;
Chris@42 2000 {
Chris@42 2001 E Tlq, Te3, Tlc, Tfl, Te4;
Chris@42 2002 Tlq = Te2 - TdZ;
Chris@42 2003 Te3 = TdZ + Te2;
Chris@42 2004 Tlc = Tfj + Tfk;
Chris@42 2005 Tfl = Tfj - Tfk;
Chris@42 2006 Tlx = FNMS(KP923879532, Tlq, Tlp);
Chris@42 2007 Tlr = FMA(KP923879532, Tlq, Tlp);
Chris@42 2008 Tf2 = FMA(KP923879532, Te3, TdW);
Chris@42 2009 Te4 = FNMS(KP923879532, Te3, TdW);
Chris@42 2010 Tlj = FNMS(KP923879532, Tlc, Tlb);
Chris@42 2011 Tld = FMA(KP923879532, Tlc, Tlb);
Chris@42 2012 TfO = FNMS(KP923879532, Tfl, Tfi);
Chris@42 2013 Tfm = FMA(KP923879532, Tfl, Tfi);
Chris@42 2014 Tek = FMA(KP980785280, Tej, Te4);
Chris@42 2015 TeY = FNMS(KP980785280, Tej, Te4);
Chris@42 2016 }
Chris@42 2017 Tln = FNMS(KP980785280, Tlk, Tlj);
Chris@42 2018 Tll = FMA(KP980785280, Tlk, Tlj);
Chris@42 2019 Tlm = Tf0 - TeZ;
Chris@42 2020 Tf1 = TeZ + Tf0;
Chris@42 2021 ri[WS(rs, 9)] = FMA(KP773010453, TeX, Tek);
Chris@42 2022 ri[WS(rs, 41)] = FNMS(KP773010453, TeX, Tek);
Chris@42 2023 ii[WS(rs, 41)] = FNMS(KP773010453, Tlm, Tll);
Chris@42 2024 ii[WS(rs, 9)] = FMA(KP773010453, Tlm, Tll);
Chris@42 2025 }
Chris@42 2026 {
Chris@42 2027 E Tf6, Tfd, Tlf, Tlg;
Chris@42 2028 Tfe = FNMS(KP980785280, Tf5, Tf2);
Chris@42 2029 Tf6 = FMA(KP980785280, Tf5, Tf2);
Chris@42 2030 ri[WS(rs, 57)] = FMA(KP773010453, Tf1, TeY);
Chris@42 2031 ri[WS(rs, 25)] = FNMS(KP773010453, Tf1, TeY);
Chris@42 2032 ii[WS(rs, 57)] = FMA(KP773010453, Tlo, Tln);
Chris@42 2033 ii[WS(rs, 25)] = FNMS(KP773010453, Tlo, Tln);
Chris@42 2034 Tfd = Tf9 + Tfc;
Chris@42 2035 Tli = Tfc - Tf9;
Chris@42 2036 Tlh = FNMS(KP980785280, Tle, Tld);
Chris@42 2037 Tlf = FMA(KP980785280, Tle, Tld);
Chris@42 2038 Tlg = Tff + Tfg;
Chris@42 2039 Tfh = Tff - Tfg;
Chris@42 2040 ri[WS(rs, 1)] = FMA(KP995184726, Tfd, Tf6);
Chris@42 2041 ri[WS(rs, 33)] = FNMS(KP995184726, Tfd, Tf6);
Chris@42 2042 ii[WS(rs, 33)] = FNMS(KP995184726, Tlg, Tlf);
Chris@42 2043 ii[WS(rs, 1)] = FMA(KP995184726, Tlg, Tlf);
Chris@42 2044 }
Chris@42 2045 }
Chris@42 2046 {
Chris@42 2047 E TfK, Tlw, Tlv, TfN;
Chris@42 2048 {
Chris@42 2049 E Tfu, TfJ, Tlt, Tlu;
Chris@42 2050 TfK = FNMS(KP831469612, Tft, Tfm);
Chris@42 2051 Tfu = FMA(KP831469612, Tft, Tfm);
Chris@42 2052 ri[WS(rs, 17)] = FMA(KP995184726, Tfh, Tfe);
Chris@42 2053 ri[WS(rs, 49)] = FNMS(KP995184726, Tfh, Tfe);
Chris@42 2054 ii[WS(rs, 49)] = FNMS(KP995184726, Tli, Tlh);
Chris@42 2055 ii[WS(rs, 17)] = FMA(KP995184726, Tli, Tlh);
Chris@42 2056 TfJ = TfB + TfI;
Chris@42 2057 Tlw = TfI - TfB;
Chris@42 2058 Tlv = FNMS(KP831469612, Tls, Tlr);
Chris@42 2059 Tlt = FMA(KP831469612, Tls, Tlr);
Chris@42 2060 Tlu = TfL + TfM;
Chris@42 2061 TfN = TfL - TfM;
Chris@42 2062 ri[WS(rs, 5)] = FMA(KP881921264, TfJ, Tfu);
Chris@42 2063 ri[WS(rs, 37)] = FNMS(KP881921264, TfJ, Tfu);
Chris@42 2064 ii[WS(rs, 37)] = FNMS(KP881921264, Tlu, Tlt);
Chris@42 2065 ii[WS(rs, 5)] = FMA(KP881921264, Tlu, Tlt);
Chris@42 2066 }
Chris@42 2067 {
Chris@42 2068 E TfS, TfZ, Tlz, TlA;
Chris@42 2069 Tg0 = FMA(KP831469612, TfR, TfO);
Chris@42 2070 TfS = FNMS(KP831469612, TfR, TfO);
Chris@42 2071 ri[WS(rs, 21)] = FMA(KP881921264, TfN, TfK);
Chris@42 2072 ri[WS(rs, 53)] = FNMS(KP881921264, TfN, TfK);
Chris@42 2073 ii[WS(rs, 53)] = FNMS(KP881921264, Tlw, Tlv);
Chris@42 2074 ii[WS(rs, 21)] = FMA(KP881921264, Tlw, Tlv);
Chris@42 2075 TfZ = TfV - TfY;
Chris@42 2076 TlC = TfV + TfY;
Chris@42 2077 TlB = FMA(KP831469612, Tly, Tlx);
Chris@42 2078 Tlz = FNMS(KP831469612, Tly, Tlx);
Chris@42 2079 TlA = Tg2 - Tg1;
Chris@42 2080 Tg3 = Tg1 + Tg2;
Chris@42 2081 ri[WS(rs, 13)] = FMA(KP956940335, TfZ, TfS);
Chris@42 2082 ri[WS(rs, 45)] = FNMS(KP956940335, TfZ, TfS);
Chris@42 2083 ii[WS(rs, 45)] = FNMS(KP956940335, TlA, Tlz);
Chris@42 2084 ii[WS(rs, 13)] = FMA(KP956940335, TlA, Tlz);
Chris@42 2085 }
Chris@42 2086 }
Chris@42 2087 }
Chris@42 2088 }
Chris@42 2089 }
Chris@42 2090 }
Chris@42 2091 }
Chris@42 2092 }
Chris@42 2093 ri[WS(rs, 61)] = FMA(KP956940335, Tg3, Tg0);
Chris@42 2094 ri[WS(rs, 29)] = FNMS(KP956940335, Tg3, Tg0);
Chris@42 2095 ii[WS(rs, 61)] = FMA(KP956940335, TlC, TlB);
Chris@42 2096 ii[WS(rs, 29)] = FNMS(KP956940335, TlC, TlB);
Chris@42 2097 }
Chris@42 2098 }
Chris@42 2099 }
Chris@42 2100
Chris@42 2101 static const tw_instr twinstr[] = {
Chris@42 2102 {TW_CEXP, 0, 1},
Chris@42 2103 {TW_CEXP, 0, 3},
Chris@42 2104 {TW_CEXP, 0, 9},
Chris@42 2105 {TW_CEXP, 0, 27},
Chris@42 2106 {TW_CEXP, 0, 63},
Chris@42 2107 {TW_NEXT, 1, 0}
Chris@42 2108 };
Chris@42 2109
Chris@42 2110 static const ct_desc desc = { 64, "t2_64", twinstr, &GENUS, {520, 206, 634, 0}, 0, 0, 0 };
Chris@42 2111
Chris@42 2112 void X(codelet_t2_64) (planner *p) {
Chris@42 2113 X(kdft_dit_register) (p, t2_64, &desc);
Chris@42 2114 }
Chris@42 2115 #else /* HAVE_FMA */
Chris@42 2116
Chris@42 2117 /* Generated by: ../../../genfft/gen_twiddle.native -compact -variables 4 -pipeline-latency 4 -twiddle-log3 -precompute-twiddles -n 64 -name t2_64 -include t.h */
Chris@42 2118
Chris@42 2119 /*
Chris@42 2120 * This function contains 1154 FP additions, 660 FP multiplications,
Chris@42 2121 * (or, 880 additions, 386 multiplications, 274 fused multiply/add),
Chris@42 2122 * 302 stack variables, 15 constants, and 256 memory accesses
Chris@42 2123 */
Chris@42 2124 #include "t.h"
Chris@42 2125
Chris@42 2126 static void t2_64(R *ri, R *ii, const R *W, stride rs, INT mb, INT me, INT ms)
Chris@42 2127 {
Chris@42 2128 DK(KP471396736, +0.471396736825997648556387625905254377657460319);
Chris@42 2129 DK(KP881921264, +0.881921264348355029712756863660388349508442621);
Chris@42 2130 DK(KP290284677, +0.290284677254462367636192375817395274691476278);
Chris@42 2131 DK(KP956940335, +0.956940335732208864935797886980269969482849206);
Chris@42 2132 DK(KP634393284, +0.634393284163645498215171613225493370675687095);
Chris@42 2133 DK(KP773010453, +0.773010453362736960810906609758469800971041293);
Chris@42 2134 DK(KP098017140, +0.098017140329560601994195563888641845861136673);
Chris@42 2135 DK(KP995184726, +0.995184726672196886244836953109479921575474869);
Chris@42 2136 DK(KP555570233, +0.555570233019602224742830813948532874374937191);
Chris@42 2137 DK(KP831469612, +0.831469612302545237078788377617905756738560812);
Chris@42 2138 DK(KP980785280, +0.980785280403230449126182236134239036973933731);
Chris@42 2139 DK(KP195090322, +0.195090322016128267848284868477022240927691618);
Chris@42 2140 DK(KP923879532, +0.923879532511286756128183189396788286822416626);
Chris@42 2141 DK(KP382683432, +0.382683432365089771728459984030398866761344562);
Chris@42 2142 DK(KP707106781, +0.707106781186547524400844362104849039284835938);
Chris@42 2143 {
Chris@42 2144 INT m;
Chris@42 2145 for (m = mb, W = W + (mb * 10); m < me; m = m + 1, ri = ri + ms, ii = ii + ms, W = W + 10, MAKE_VOLATILE_STRIDE(128, rs)) {
Chris@42 2146 E T2, T5, T3, T6, Te, T9, TP, T3e, T1e, T39, T3c, TT, T1a, T37, T8;
Chris@42 2147 E Tw, Td, Ty, Tm, Th, T1C, T3K, T1V, T3x, T3I, T1G, T1R, T3v, T2m, T2q;
Chris@42 2148 E T5Y, T6u, T53, T5B, T62, T6w, T57, T5D, T2V, T2X, Tg, TE, T3Y, T3V, T3j;
Chris@42 2149 E Tl, TA, T3g, T1j, T1t, TV, T2C, T2z, T1u, TZ, T1h, To, T1p, T6j, T6H;
Chris@42 2150 E Ts, T1l, T6l, T6F, T2P, T4b, T4x, T5i, T2R, T49, T4z, T5g, TG, T4k, T4m;
Chris@42 2151 E TK, T21, T3O, T3Q, T25, TW, T10, T11, T79, T6X, T5M, T6b, T1v, T30, T69;
Chris@42 2152 E T77, T13, T2F, T2D, T6p, T6O, T1x, T2a, T2f, T6V, T28, T6r, T2h, T6Q, T32;
Chris@42 2153 E T5K, T5w, T4G, T4Q, T3m, T4h, T4I, T5y, T3k, T4f, T41, T4S, T4Y, T3q, T3D;
Chris@42 2154 E T3F, T5r, T3s, T4W, T3Z, T5p;
Chris@42 2155 {
Chris@42 2156 E Ta, Tj, Tx, TC, Tf, Tk, Tz, TD, T1B, T1E, T2o, T2l, T1T, T1Q, T1A;
Chris@42 2157 E T1F, T2p, T2k, T1U, T1P;
Chris@42 2158 {
Chris@42 2159 E T4, T1d, T19, Tb, T1c, T7, Tc, T18, TR, TO, TS, TN;
Chris@42 2160 T2 = W[0];
Chris@42 2161 T5 = W[1];
Chris@42 2162 T3 = W[2];
Chris@42 2163 T6 = W[3];
Chris@42 2164 Te = W[5];
Chris@42 2165 T9 = W[4];
Chris@42 2166 T4 = T2 * T3;
Chris@42 2167 T1d = T5 * T9;
Chris@42 2168 T19 = T5 * Te;
Chris@42 2169 Tb = T2 * T6;
Chris@42 2170 T1c = T2 * Te;
Chris@42 2171 T7 = T5 * T6;
Chris@42 2172 Tc = T5 * T3;
Chris@42 2173 T18 = T2 * T9;
Chris@42 2174 TR = T3 * Te;
Chris@42 2175 TO = T6 * Te;
Chris@42 2176 TS = T6 * T9;
Chris@42 2177 TN = T3 * T9;
Chris@42 2178 TP = TN - TO;
Chris@42 2179 T3e = TR - TS;
Chris@42 2180 T1e = T1c - T1d;
Chris@42 2181 T39 = T1c + T1d;
Chris@42 2182 T3c = TN + TO;
Chris@42 2183 TT = TR + TS;
Chris@42 2184 T1a = T18 + T19;
Chris@42 2185 T37 = T18 - T19;
Chris@42 2186 T8 = T4 - T7;
Chris@42 2187 Ta = T8 * T9;
Chris@42 2188 Tj = T8 * Te;
Chris@42 2189 Tw = T4 + T7;
Chris@42 2190 Tx = Tw * T9;
Chris@42 2191 TC = Tw * Te;
Chris@42 2192 Td = Tb + Tc;
Chris@42 2193 Tf = Td * Te;
Chris@42 2194 Tk = Td * T9;
Chris@42 2195 Ty = Tb - Tc;
Chris@42 2196 Tz = Ty * Te;
Chris@42 2197 TD = Ty * T9;
Chris@42 2198 Tm = W[7];
Chris@42 2199 T1B = T6 * Tm;
Chris@42 2200 T1E = T3 * Tm;
Chris@42 2201 T2o = T2 * Tm;
Chris@42 2202 T2l = T5 * Tm;
Chris@42 2203 T1T = T9 * Tm;
Chris@42 2204 T1Q = Te * Tm;
Chris@42 2205 Th = W[6];
Chris@42 2206 T1A = T3 * Th;
Chris@42 2207 T1F = T6 * Th;
Chris@42 2208 T2p = T5 * Th;
Chris@42 2209 T2k = T2 * Th;
Chris@42 2210 T1U = Te * Th;
Chris@42 2211 T1P = T9 * Th;
Chris@42 2212 }
Chris@42 2213 T1C = T1A + T1B;
Chris@42 2214 T3K = T1E + T1F;
Chris@42 2215 T1V = T1T + T1U;
Chris@42 2216 T3x = T2o - T2p;
Chris@42 2217 T3I = T1A - T1B;
Chris@42 2218 T1G = T1E - T1F;
Chris@42 2219 T1R = T1P - T1Q;
Chris@42 2220 {
Chris@42 2221 E T5W, T5X, T55, T56;
Chris@42 2222 T3v = T2k + T2l;
Chris@42 2223 T2m = T2k - T2l;
Chris@42 2224 T2q = T2o + T2p;
Chris@42 2225 T5W = T8 * Th;
Chris@42 2226 T5X = Td * Tm;
Chris@42 2227 T5Y = T5W - T5X;
Chris@42 2228 T6u = T5W + T5X;
Chris@42 2229 {
Chris@42 2230 E T51, T52, T60, T61;
Chris@42 2231 T51 = Tw * Th;
Chris@42 2232 T52 = Ty * Tm;
Chris@42 2233 T53 = T51 + T52;
Chris@42 2234 T5B = T51 - T52;
Chris@42 2235 T60 = T8 * Tm;
Chris@42 2236 T61 = Td * Th;
Chris@42 2237 T62 = T60 + T61;
Chris@42 2238 T6w = T60 - T61;
Chris@42 2239 }
Chris@42 2240 T55 = Tw * Tm;
Chris@42 2241 T56 = Ty * Th;
Chris@42 2242 T57 = T55 - T56;
Chris@42 2243 T5D = T55 + T56;
Chris@42 2244 {
Chris@42 2245 E Ti, Tq, TF, TJ, T3W, T3X, T3T, T3U, T3h, T3i, Tn, Tr, TB, TI, T3d;
Chris@42 2246 E T3f, T1k, T1o, T1Z, T23, TQ, TU, T2A, T2B, T2x, T2y, T20, T24, TX, TY;
Chris@42 2247 E T1i, T1n;
Chris@42 2248 T2V = T1P + T1Q;
Chris@42 2249 T2X = T1T - T1U;
Chris@42 2250 Tg = Ta + Tf;
Chris@42 2251 Ti = Tg * Th;
Chris@42 2252 Tq = Tg * Tm;
Chris@42 2253 TE = TC + TD;
Chris@42 2254 TF = TE * Tm;
Chris@42 2255 TJ = TE * Th;
Chris@42 2256 T3W = T37 * Tm;
Chris@42 2257 T3X = T39 * Th;
Chris@42 2258 T3Y = T3W - T3X;
Chris@42 2259 T3T = T37 * Th;
Chris@42 2260 T3U = T39 * Tm;
Chris@42 2261 T3V = T3T + T3U;
Chris@42 2262 T3h = T3c * Tm;
Chris@42 2263 T3i = T3e * Th;
Chris@42 2264 T3j = T3h - T3i;
Chris@42 2265 Tl = Tj - Tk;
Chris@42 2266 Tn = Tl * Tm;
Chris@42 2267 Tr = Tl * Th;
Chris@42 2268 TA = Tx - Tz;
Chris@42 2269 TB = TA * Th;
Chris@42 2270 TI = TA * Tm;
Chris@42 2271 T3d = T3c * Th;
Chris@42 2272 T3f = T3e * Tm;
Chris@42 2273 T3g = T3d + T3f;
Chris@42 2274 T1j = Tj + Tk;
Chris@42 2275 T1k = T1j * Tm;
Chris@42 2276 T1o = T1j * Th;
Chris@42 2277 T1t = Tx + Tz;
Chris@42 2278 T1Z = T1t * Th;
Chris@42 2279 T23 = T1t * Tm;
Chris@42 2280 TQ = TP * Th;
Chris@42 2281 TU = TT * Tm;
Chris@42 2282 TV = TQ + TU;
Chris@42 2283 T2A = T1a * Tm;
Chris@42 2284 T2B = T1e * Th;
Chris@42 2285 T2C = T2A - T2B;
Chris@42 2286 T2x = T1a * Th;
Chris@42 2287 T2y = T1e * Tm;
Chris@42 2288 T2z = T2x + T2y;
Chris@42 2289 T1u = TC - TD;
Chris@42 2290 T20 = T1u * Tm;
Chris@42 2291 T24 = T1u * Th;
Chris@42 2292 TX = TP * Tm;
Chris@42 2293 TY = TT * Th;
Chris@42 2294 TZ = TX - TY;
Chris@42 2295 T1h = Ta - Tf;
Chris@42 2296 T1i = T1h * Th;
Chris@42 2297 T1n = T1h * Tm;
Chris@42 2298 To = Ti - Tn;
Chris@42 2299 T1p = T1n + T1o;
Chris@42 2300 T6j = TQ - TU;
Chris@42 2301 T6H = T2A + T2B;
Chris@42 2302 Ts = Tq + Tr;
Chris@42 2303 T1l = T1i - T1k;
Chris@42 2304 T6l = TX + TY;
Chris@42 2305 T6F = T2x - T2y;
Chris@42 2306 T2P = T1Z - T20;
Chris@42 2307 T4b = TI + TJ;
Chris@42 2308 T4x = T3d - T3f;
Chris@42 2309 T5i = T3W + T3X;
Chris@42 2310 T2R = T23 + T24;
Chris@42 2311 T49 = TB - TF;
Chris@42 2312 T4z = T3h + T3i;
Chris@42 2313 T5g = T3T - T3U;
Chris@42 2314 TG = TB + TF;
Chris@42 2315 T4k = Ti + Tn;
Chris@42 2316 T4m = Tq - Tr;
Chris@42 2317 TK = TI - TJ;
Chris@42 2318 T21 = T1Z + T20;
Chris@42 2319 T3O = T1i + T1k;
Chris@42 2320 T3Q = T1n - T1o;
Chris@42 2321 T25 = T23 - T24;
Chris@42 2322 TW = W[8];
Chris@42 2323 T10 = W[9];
Chris@42 2324 T11 = FMA(TV, TW, TZ * T10);
Chris@42 2325 T79 = FNMS(T25, TW, T21 * T10);
Chris@42 2326 T6X = FNMS(Td, TW, T8 * T10);
Chris@42 2327 T5M = FNMS(T2X, TW, T2V * T10);
Chris@42 2328 T6b = FNMS(TK, TW, TG * T10);
Chris@42 2329 T1v = FMA(T1t, TW, T1u * T10);
Chris@42 2330 T30 = FMA(T1h, TW, T1j * T10);
Chris@42 2331 T69 = FMA(TG, TW, TK * T10);
Chris@42 2332 T77 = FMA(T21, TW, T25 * T10);
Chris@42 2333 T13 = FNMS(TZ, TW, TV * T10);
Chris@42 2334 T2F = FNMS(T2C, TW, T2z * T10);
Chris@42 2335 T2D = FMA(T2z, TW, T2C * T10);
Chris@42 2336 T6p = FMA(T1a, TW, T1e * T10);
Chris@42 2337 T6O = FMA(TP, TW, TT * T10);
Chris@42 2338 T1x = FNMS(T1u, TW, T1t * T10);
Chris@42 2339 T2a = FNMS(TE, TW, TA * T10);
Chris@42 2340 T2f = FMA(T3, TW, T6 * T10);
Chris@42 2341 T6V = FMA(T8, TW, Td * T10);
Chris@42 2342 T28 = FMA(TA, TW, TE * T10);
Chris@42 2343 T6r = FNMS(T1e, TW, T1a * T10);
Chris@42 2344 T2h = FNMS(T6, TW, T3 * T10);
Chris@42 2345 T6Q = FNMS(TT, TW, TP * T10);
Chris@42 2346 T32 = FNMS(T1j, TW, T1h * T10);
Chris@42 2347 T5K = FMA(T2V, TW, T2X * T10);
Chris@42 2348 T5w = FMA(Tw, TW, Ty * T10);
Chris@42 2349 T4G = FMA(T3O, TW, T3Q * T10);
Chris@42 2350 T4Q = FMA(T4k, TW, T4m * T10);
Chris@42 2351 T3m = FNMS(T3j, TW, T3g * T10);
Chris@42 2352 T4h = FNMS(Te, TW, T9 * T10);
Chris@42 2353 T4I = FNMS(T3Q, TW, T3O * T10);
Chris@42 2354 T5y = FNMS(Ty, TW, Tw * T10);
Chris@42 2355 T3k = FMA(T3g, TW, T3j * T10);
Chris@42 2356 T4f = FMA(T9, TW, Te * T10);
Chris@42 2357 T41 = FNMS(T3Y, TW, T3V * T10);
Chris@42 2358 T4S = FNMS(T4m, TW, T4k * T10);
Chris@42 2359 T4Y = FNMS(T3e, TW, T3c * T10);
Chris@42 2360 T3q = FMA(Tg, TW, Tl * T10);
Chris@42 2361 T3D = FMA(T2, TW, T5 * T10);
Chris@42 2362 T3F = FNMS(T5, TW, T2 * T10);
Chris@42 2363 T5r = FNMS(T39, TW, T37 * T10);
Chris@42 2364 T3s = FNMS(Tl, TW, Tg * T10);
Chris@42 2365 T4W = FMA(T3c, TW, T3e * T10);
Chris@42 2366 T3Z = FMA(T3V, TW, T3Y * T10);
Chris@42 2367 T5p = FMA(T37, TW, T39 * T10);
Chris@42 2368 }
Chris@42 2369 }
Chris@42 2370 }
Chris@42 2371 {
Chris@42 2372 E T17, TdV, Tj3, Tjx, T7l, TbJ, Ti3, Tix, T1K, Tiw, TdY, ThY, T7w, Tj0, TbM;
Chris@42 2373 E Tjw, T2e, TgA, T7I, TaY, TbQ, Tda, Te4, TfO, T2J, TgB, T7T, TaZ, TbT, Tdb;
Chris@42 2374 E Te9, TfP, T36, T3B, TgH, TgE, TgF, TgG, T80, TbW, Tel, TfT, T8b, Tc0, T8k;
Chris@42 2375 E TbX, Teg, TfS, T8h, TbZ, T45, T4q, TgJ, TgK, TgL, TgM, T8r, Tc6, Tew, TfW;
Chris@42 2376 E T8C, Tc4, T8L, Tc7, Ter, TfV, T8I, Tc3, T6B, Th1, Tfm, Tga, Th8, ThI, T9N;
Chris@42 2377 E Tcv, T9Y, TcH, Tav, Tcw, Tf5, Tg7, Tas, TcG, T5c, TgV, TeV, Tg0, TgS, ThD;
Chris@42 2378 E T8U, Tcc, T95, Tco, T9C, Tcd, TeE, Tg3, T9z, Tcn, T5R, TgT, TeO, TeW, TgY;
Chris@42 2379 E ThE, T9h, T9F, T9s, T9E, Tck, Tcq, TeJ, TeX, Tch, Tcr, T7e, Th9, Tff, Tfn;
Chris@42 2380 E Th4, ThJ, Taa, Tay, Tal, Tax, TcD, TcJ, Tfa, Tfo, TcA, TcK;
Chris@42 2381 {
Chris@42 2382 E T1, Ti1, Tu, Ti0, TM, T7i, T15, T7j, Tp, Tt;
Chris@42 2383 T1 = ri[0];
Chris@42 2384 Ti1 = ii[0];
Chris@42 2385 Tp = ri[WS(rs, 32)];
Chris@42 2386 Tt = ii[WS(rs, 32)];
Chris@42 2387 Tu = FMA(To, Tp, Ts * Tt);
Chris@42 2388 Ti0 = FNMS(Ts, Tp, To * Tt);
Chris@42 2389 {
Chris@42 2390 E TH, TL, T12, T14;
Chris@42 2391 TH = ri[WS(rs, 16)];
Chris@42 2392 TL = ii[WS(rs, 16)];
Chris@42 2393 TM = FMA(TG, TH, TK * TL);
Chris@42 2394 T7i = FNMS(TK, TH, TG * TL);
Chris@42 2395 T12 = ri[WS(rs, 48)];
Chris@42 2396 T14 = ii[WS(rs, 48)];
Chris@42 2397 T15 = FMA(T11, T12, T13 * T14);
Chris@42 2398 T7j = FNMS(T13, T12, T11 * T14);
Chris@42 2399 }
Chris@42 2400 {
Chris@42 2401 E Tv, T16, Tj1, Tj2;
Chris@42 2402 Tv = T1 + Tu;
Chris@42 2403 T16 = TM + T15;
Chris@42 2404 T17 = Tv + T16;
Chris@42 2405 TdV = Tv - T16;
Chris@42 2406 Tj1 = Ti1 - Ti0;
Chris@42 2407 Tj2 = TM - T15;
Chris@42 2408 Tj3 = Tj1 - Tj2;
Chris@42 2409 Tjx = Tj2 + Tj1;
Chris@42 2410 }
Chris@42 2411 {
Chris@42 2412 E T7h, T7k, ThZ, Ti2;
Chris@42 2413 T7h = T1 - Tu;
Chris@42 2414 T7k = T7i - T7j;
Chris@42 2415 T7l = T7h - T7k;
Chris@42 2416 TbJ = T7h + T7k;
Chris@42 2417 ThZ = T7i + T7j;
Chris@42 2418 Ti2 = Ti0 + Ti1;
Chris@42 2419 Ti3 = ThZ + Ti2;
Chris@42 2420 Tix = Ti2 - ThZ;
Chris@42 2421 }
Chris@42 2422 }
Chris@42 2423 {
Chris@42 2424 E T1g, T7m, T1r, T7n, T7o, T7p, T1z, T7s, T1I, T7t, T7r, T7u;
Chris@42 2425 {
Chris@42 2426 E T1b, T1f, T1m, T1q;
Chris@42 2427 T1b = ri[WS(rs, 8)];
Chris@42 2428 T1f = ii[WS(rs, 8)];
Chris@42 2429 T1g = FMA(T1a, T1b, T1e * T1f);
Chris@42 2430 T7m = FNMS(T1e, T1b, T1a * T1f);
Chris@42 2431 T1m = ri[WS(rs, 40)];
Chris@42 2432 T1q = ii[WS(rs, 40)];
Chris@42 2433 T1r = FMA(T1l, T1m, T1p * T1q);
Chris@42 2434 T7n = FNMS(T1p, T1m, T1l * T1q);
Chris@42 2435 }
Chris@42 2436 T7o = T7m - T7n;
Chris@42 2437 T7p = T1g - T1r;
Chris@42 2438 {
Chris@42 2439 E T1w, T1y, T1D, T1H;
Chris@42 2440 T1w = ri[WS(rs, 56)];
Chris@42 2441 T1y = ii[WS(rs, 56)];
Chris@42 2442 T1z = FMA(T1v, T1w, T1x * T1y);
Chris@42 2443 T7s = FNMS(T1x, T1w, T1v * T1y);
Chris@42 2444 T1D = ri[WS(rs, 24)];
Chris@42 2445 T1H = ii[WS(rs, 24)];
Chris@42 2446 T1I = FMA(T1C, T1D, T1G * T1H);
Chris@42 2447 T7t = FNMS(T1G, T1D, T1C * T1H);
Chris@42 2448 }
Chris@42 2449 T7r = T1z - T1I;
Chris@42 2450 T7u = T7s - T7t;
Chris@42 2451 {
Chris@42 2452 E T1s, T1J, TdW, TdX;
Chris@42 2453 T1s = T1g + T1r;
Chris@42 2454 T1J = T1z + T1I;
Chris@42 2455 T1K = T1s + T1J;
Chris@42 2456 Tiw = T1J - T1s;
Chris@42 2457 TdW = T7m + T7n;
Chris@42 2458 TdX = T7s + T7t;
Chris@42 2459 TdY = TdW - TdX;
Chris@42 2460 ThY = TdW + TdX;
Chris@42 2461 }
Chris@42 2462 {
Chris@42 2463 E T7q, T7v, TbK, TbL;
Chris@42 2464 T7q = T7o - T7p;
Chris@42 2465 T7v = T7r + T7u;
Chris@42 2466 T7w = KP707106781 * (T7q - T7v);
Chris@42 2467 Tj0 = KP707106781 * (T7q + T7v);
Chris@42 2468 TbK = T7p + T7o;
Chris@42 2469 TbL = T7r - T7u;
Chris@42 2470 TbM = KP707106781 * (TbK + TbL);
Chris@42 2471 Tjw = KP707106781 * (TbL - TbK);
Chris@42 2472 }
Chris@42 2473 }
Chris@42 2474 {
Chris@42 2475 E T1Y, Te0, T7A, T7D, T2d, Te1, T7B, T7G, T7C, T7H;
Chris@42 2476 {
Chris@42 2477 E T1O, T7y, T1X, T7z;
Chris@42 2478 {
Chris@42 2479 E T1M, T1N, T1S, T1W;
Chris@42 2480 T1M = ri[WS(rs, 4)];
Chris@42 2481 T1N = ii[WS(rs, 4)];
Chris@42 2482 T1O = FMA(T8, T1M, Td * T1N);
Chris@42 2483 T7y = FNMS(Td, T1M, T8 * T1N);
Chris@42 2484 T1S = ri[WS(rs, 36)];
Chris@42 2485 T1W = ii[WS(rs, 36)];
Chris@42 2486 T1X = FMA(T1R, T1S, T1V * T1W);
Chris@42 2487 T7z = FNMS(T1V, T1S, T1R * T1W);
Chris@42 2488 }
Chris@42 2489 T1Y = T1O + T1X;
Chris@42 2490 Te0 = T7y + T7z;
Chris@42 2491 T7A = T7y - T7z;
Chris@42 2492 T7D = T1O - T1X;
Chris@42 2493 }
Chris@42 2494 {
Chris@42 2495 E T27, T7E, T2c, T7F;
Chris@42 2496 {
Chris@42 2497 E T22, T26, T29, T2b;
Chris@42 2498 T22 = ri[WS(rs, 20)];
Chris@42 2499 T26 = ii[WS(rs, 20)];
Chris@42 2500 T27 = FMA(T21, T22, T25 * T26);
Chris@42 2501 T7E = FNMS(T25, T22, T21 * T26);
Chris@42 2502 T29 = ri[WS(rs, 52)];
Chris@42 2503 T2b = ii[WS(rs, 52)];
Chris@42 2504 T2c = FMA(T28, T29, T2a * T2b);
Chris@42 2505 T7F = FNMS(T2a, T29, T28 * T2b);
Chris@42 2506 }
Chris@42 2507 T2d = T27 + T2c;
Chris@42 2508 Te1 = T7E + T7F;
Chris@42 2509 T7B = T27 - T2c;
Chris@42 2510 T7G = T7E - T7F;
Chris@42 2511 }
Chris@42 2512 T2e = T1Y + T2d;
Chris@42 2513 TgA = Te0 + Te1;
Chris@42 2514 T7C = T7A + T7B;
Chris@42 2515 T7H = T7D - T7G;
Chris@42 2516 T7I = FNMS(KP923879532, T7H, KP382683432 * T7C);
Chris@42 2517 TaY = FMA(KP923879532, T7C, KP382683432 * T7H);
Chris@42 2518 {
Chris@42 2519 E TbO, TbP, Te2, Te3;
Chris@42 2520 TbO = T7A - T7B;
Chris@42 2521 TbP = T7D + T7G;
Chris@42 2522 TbQ = FNMS(KP382683432, TbP, KP923879532 * TbO);
Chris@42 2523 Tda = FMA(KP382683432, TbO, KP923879532 * TbP);
Chris@42 2524 Te2 = Te0 - Te1;
Chris@42 2525 Te3 = T1Y - T2d;
Chris@42 2526 Te4 = Te2 - Te3;
Chris@42 2527 TfO = Te3 + Te2;
Chris@42 2528 }
Chris@42 2529 }
Chris@42 2530 {
Chris@42 2531 E T2t, Te6, T7L, T7O, T2I, Te7, T7M, T7R, T7N, T7S;
Chris@42 2532 {
Chris@42 2533 E T2j, T7J, T2s, T7K;
Chris@42 2534 {
Chris@42 2535 E T2g, T2i, T2n, T2r;
Chris@42 2536 T2g = ri[WS(rs, 60)];
Chris@42 2537 T2i = ii[WS(rs, 60)];
Chris@42 2538 T2j = FMA(T2f, T2g, T2h * T2i);
Chris@42 2539 T7J = FNMS(T2h, T2g, T2f * T2i);
Chris@42 2540 T2n = ri[WS(rs, 28)];
Chris@42 2541 T2r = ii[WS(rs, 28)];
Chris@42 2542 T2s = FMA(T2m, T2n, T2q * T2r);
Chris@42 2543 T7K = FNMS(T2q, T2n, T2m * T2r);
Chris@42 2544 }
Chris@42 2545 T2t = T2j + T2s;
Chris@42 2546 Te6 = T7J + T7K;
Chris@42 2547 T7L = T7J - T7K;
Chris@42 2548 T7O = T2j - T2s;
Chris@42 2549 }
Chris@42 2550 {
Chris@42 2551 E T2w, T7P, T2H, T7Q;
Chris@42 2552 {
Chris@42 2553 E T2u, T2v, T2E, T2G;
Chris@42 2554 T2u = ri[WS(rs, 12)];
Chris@42 2555 T2v = ii[WS(rs, 12)];
Chris@42 2556 T2w = FMA(TP, T2u, TT * T2v);
Chris@42 2557 T7P = FNMS(TT, T2u, TP * T2v);
Chris@42 2558 T2E = ri[WS(rs, 44)];
Chris@42 2559 T2G = ii[WS(rs, 44)];
Chris@42 2560 T2H = FMA(T2D, T2E, T2F * T2G);
Chris@42 2561 T7Q = FNMS(T2F, T2E, T2D * T2G);
Chris@42 2562 }
Chris@42 2563 T2I = T2w + T2H;
Chris@42 2564 Te7 = T7P + T7Q;
Chris@42 2565 T7M = T2w - T2H;
Chris@42 2566 T7R = T7P - T7Q;
Chris@42 2567 }
Chris@42 2568 T2J = T2t + T2I;
Chris@42 2569 TgB = Te6 + Te7;
Chris@42 2570 T7N = T7L + T7M;
Chris@42 2571 T7S = T7O - T7R;
Chris@42 2572 T7T = FMA(KP382683432, T7N, KP923879532 * T7S);
Chris@42 2573 TaZ = FNMS(KP923879532, T7N, KP382683432 * T7S);
Chris@42 2574 {
Chris@42 2575 E TbR, TbS, Te5, Te8;
Chris@42 2576 TbR = T7L - T7M;
Chris@42 2577 TbS = T7O + T7R;
Chris@42 2578 TbT = FMA(KP923879532, TbR, KP382683432 * TbS);
Chris@42 2579 Tdb = FNMS(KP382683432, TbR, KP923879532 * TbS);
Chris@42 2580 Te5 = T2t - T2I;
Chris@42 2581 Te8 = Te6 - Te7;
Chris@42 2582 Te9 = Te5 + Te8;
Chris@42 2583 TfP = Te5 - Te8;
Chris@42 2584 }
Chris@42 2585 }
Chris@42 2586 {
Chris@42 2587 E T2O, T7W, T2T, T7X, T2U, Tec, T2Z, T8e, T34, T8f, T35, Ted, T3p, Tei, T86;
Chris@42 2588 E T89, T3A, Tej, T81, T84;
Chris@42 2589 {
Chris@42 2590 E T2M, T2N, T2Q, T2S;
Chris@42 2591 T2M = ri[WS(rs, 2)];
Chris@42 2592 T2N = ii[WS(rs, 2)];
Chris@42 2593 T2O = FMA(Tw, T2M, Ty * T2N);
Chris@42 2594 T7W = FNMS(Ty, T2M, Tw * T2N);
Chris@42 2595 T2Q = ri[WS(rs, 34)];
Chris@42 2596 T2S = ii[WS(rs, 34)];
Chris@42 2597 T2T = FMA(T2P, T2Q, T2R * T2S);
Chris@42 2598 T7X = FNMS(T2R, T2Q, T2P * T2S);
Chris@42 2599 }
Chris@42 2600 T2U = T2O + T2T;
Chris@42 2601 Tec = T7W + T7X;
Chris@42 2602 {
Chris@42 2603 E T2W, T2Y, T31, T33;
Chris@42 2604 T2W = ri[WS(rs, 18)];
Chris@42 2605 T2Y = ii[WS(rs, 18)];
Chris@42 2606 T2Z = FMA(T2V, T2W, T2X * T2Y);
Chris@42 2607 T8e = FNMS(T2X, T2W, T2V * T2Y);
Chris@42 2608 T31 = ri[WS(rs, 50)];
Chris@42 2609 T33 = ii[WS(rs, 50)];
Chris@42 2610 T34 = FMA(T30, T31, T32 * T33);
Chris@42 2611 T8f = FNMS(T32, T31, T30 * T33);
Chris@42 2612 }
Chris@42 2613 T35 = T2Z + T34;
Chris@42 2614 Ted = T8e + T8f;
Chris@42 2615 {
Chris@42 2616 E T3b, T87, T3o, T88;
Chris@42 2617 {
Chris@42 2618 E T38, T3a, T3l, T3n;
Chris@42 2619 T38 = ri[WS(rs, 10)];
Chris@42 2620 T3a = ii[WS(rs, 10)];
Chris@42 2621 T3b = FMA(T37, T38, T39 * T3a);
Chris@42 2622 T87 = FNMS(T39, T38, T37 * T3a);
Chris@42 2623 T3l = ri[WS(rs, 42)];
Chris@42 2624 T3n = ii[WS(rs, 42)];
Chris@42 2625 T3o = FMA(T3k, T3l, T3m * T3n);
Chris@42 2626 T88 = FNMS(T3m, T3l, T3k * T3n);
Chris@42 2627 }
Chris@42 2628 T3p = T3b + T3o;
Chris@42 2629 Tei = T87 + T88;
Chris@42 2630 T86 = T3b - T3o;
Chris@42 2631 T89 = T87 - T88;
Chris@42 2632 }
Chris@42 2633 {
Chris@42 2634 E T3u, T82, T3z, T83;
Chris@42 2635 {
Chris@42 2636 E T3r, T3t, T3w, T3y;
Chris@42 2637 T3r = ri[WS(rs, 58)];
Chris@42 2638 T3t = ii[WS(rs, 58)];
Chris@42 2639 T3u = FMA(T3q, T3r, T3s * T3t);
Chris@42 2640 T82 = FNMS(T3s, T3r, T3q * T3t);
Chris@42 2641 T3w = ri[WS(rs, 26)];
Chris@42 2642 T3y = ii[WS(rs, 26)];
Chris@42 2643 T3z = FMA(T3v, T3w, T3x * T3y);
Chris@42 2644 T83 = FNMS(T3x, T3w, T3v * T3y);
Chris@42 2645 }
Chris@42 2646 T3A = T3u + T3z;
Chris@42 2647 Tej = T82 + T83;
Chris@42 2648 T81 = T3u - T3z;
Chris@42 2649 T84 = T82 - T83;
Chris@42 2650 }
Chris@42 2651 T36 = T2U + T35;
Chris@42 2652 T3B = T3p + T3A;
Chris@42 2653 TgH = T36 - T3B;
Chris@42 2654 TgE = Tec + Ted;
Chris@42 2655 TgF = Tei + Tej;
Chris@42 2656 TgG = TgE - TgF;
Chris@42 2657 {
Chris@42 2658 E T7Y, T7Z, Teh, Tek;
Chris@42 2659 T7Y = T7W - T7X;
Chris@42 2660 T7Z = T2Z - T34;
Chris@42 2661 T80 = T7Y + T7Z;
Chris@42 2662 TbW = T7Y - T7Z;
Chris@42 2663 Teh = T2U - T35;
Chris@42 2664 Tek = Tei - Tej;
Chris@42 2665 Tel = Teh - Tek;
Chris@42 2666 TfT = Teh + Tek;
Chris@42 2667 }
Chris@42 2668 {
Chris@42 2669 E T85, T8a, T8i, T8j;
Chris@42 2670 T85 = T81 - T84;
Chris@42 2671 T8a = T86 + T89;
Chris@42 2672 T8b = KP707106781 * (T85 - T8a);
Chris@42 2673 Tc0 = KP707106781 * (T8a + T85);
Chris@42 2674 T8i = T89 - T86;
Chris@42 2675 T8j = T81 + T84;
Chris@42 2676 T8k = KP707106781 * (T8i - T8j);
Chris@42 2677 TbX = KP707106781 * (T8i + T8j);
Chris@42 2678 }
Chris@42 2679 {
Chris@42 2680 E Tee, Tef, T8d, T8g;
Chris@42 2681 Tee = Tec - Ted;
Chris@42 2682 Tef = T3A - T3p;
Chris@42 2683 Teg = Tee - Tef;
Chris@42 2684 TfS = Tee + Tef;
Chris@42 2685 T8d = T2O - T2T;
Chris@42 2686 T8g = T8e - T8f;
Chris@42 2687 T8h = T8d - T8g;
Chris@42 2688 TbZ = T8d + T8g;
Chris@42 2689 }
Chris@42 2690 }
Chris@42 2691 {
Chris@42 2692 E T3H, T8n, T3M, T8o, T3N, Ten, T3S, T8F, T43, T8G, T44, Teo, T4e, Tet, T8x;
Chris@42 2693 E T8A, T4p, Teu, T8s, T8v;
Chris@42 2694 {
Chris@42 2695 E T3E, T3G, T3J, T3L;
Chris@42 2696 T3E = ri[WS(rs, 62)];
Chris@42 2697 T3G = ii[WS(rs, 62)];
Chris@42 2698 T3H = FMA(T3D, T3E, T3F * T3G);
Chris@42 2699 T8n = FNMS(T3F, T3E, T3D * T3G);
Chris@42 2700 T3J = ri[WS(rs, 30)];
Chris@42 2701 T3L = ii[WS(rs, 30)];
Chris@42 2702 T3M = FMA(T3I, T3J, T3K * T3L);
Chris@42 2703 T8o = FNMS(T3K, T3J, T3I * T3L);
Chris@42 2704 }
Chris@42 2705 T3N = T3H + T3M;
Chris@42 2706 Ten = T8n + T8o;
Chris@42 2707 {
Chris@42 2708 E T3P, T3R, T40, T42;
Chris@42 2709 T3P = ri[WS(rs, 14)];
Chris@42 2710 T3R = ii[WS(rs, 14)];
Chris@42 2711 T3S = FMA(T3O, T3P, T3Q * T3R);
Chris@42 2712 T8F = FNMS(T3Q, T3P, T3O * T3R);
Chris@42 2713 T40 = ri[WS(rs, 46)];
Chris@42 2714 T42 = ii[WS(rs, 46)];
Chris@42 2715 T43 = FMA(T3Z, T40, T41 * T42);
Chris@42 2716 T8G = FNMS(T41, T40, T3Z * T42);
Chris@42 2717 }
Chris@42 2718 T44 = T3S + T43;
Chris@42 2719 Teo = T8F + T8G;
Chris@42 2720 {
Chris@42 2721 E T48, T8y, T4d, T8z;
Chris@42 2722 {
Chris@42 2723 E T46, T47, T4a, T4c;
Chris@42 2724 T46 = ri[WS(rs, 6)];
Chris@42 2725 T47 = ii[WS(rs, 6)];
Chris@42 2726 T48 = FMA(T3c, T46, T3e * T47);
Chris@42 2727 T8y = FNMS(T3e, T46, T3c * T47);
Chris@42 2728 T4a = ri[WS(rs, 38)];
Chris@42 2729 T4c = ii[WS(rs, 38)];
Chris@42 2730 T4d = FMA(T49, T4a, T4b * T4c);
Chris@42 2731 T8z = FNMS(T4b, T4a, T49 * T4c);
Chris@42 2732 }
Chris@42 2733 T4e = T48 + T4d;
Chris@42 2734 Tet = T8y + T8z;
Chris@42 2735 T8x = T48 - T4d;
Chris@42 2736 T8A = T8y - T8z;
Chris@42 2737 }
Chris@42 2738 {
Chris@42 2739 E T4j, T8t, T4o, T8u;
Chris@42 2740 {
Chris@42 2741 E T4g, T4i, T4l, T4n;
Chris@42 2742 T4g = ri[WS(rs, 54)];
Chris@42 2743 T4i = ii[WS(rs, 54)];
Chris@42 2744 T4j = FMA(T4f, T4g, T4h * T4i);
Chris@42 2745 T8t = FNMS(T4h, T4g, T4f * T4i);
Chris@42 2746 T4l = ri[WS(rs, 22)];
Chris@42 2747 T4n = ii[WS(rs, 22)];
Chris@42 2748 T4o = FMA(T4k, T4l, T4m * T4n);
Chris@42 2749 T8u = FNMS(T4m, T4l, T4k * T4n);
Chris@42 2750 }
Chris@42 2751 T4p = T4j + T4o;
Chris@42 2752 Teu = T8t + T8u;
Chris@42 2753 T8s = T4j - T4o;
Chris@42 2754 T8v = T8t - T8u;
Chris@42 2755 }
Chris@42 2756 T45 = T3N + T44;
Chris@42 2757 T4q = T4e + T4p;
Chris@42 2758 TgJ = T45 - T4q;
Chris@42 2759 TgK = Ten + Teo;
Chris@42 2760 TgL = Tet + Teu;
Chris@42 2761 TgM = TgK - TgL;
Chris@42 2762 {
Chris@42 2763 E T8p, T8q, Tes, Tev;
Chris@42 2764 T8p = T8n - T8o;
Chris@42 2765 T8q = T3S - T43;
Chris@42 2766 T8r = T8p + T8q;
Chris@42 2767 Tc6 = T8p - T8q;
Chris@42 2768 Tes = T3N - T44;
Chris@42 2769 Tev = Tet - Teu;
Chris@42 2770 Tew = Tes - Tev;
Chris@42 2771 TfW = Tes + Tev;
Chris@42 2772 }
Chris@42 2773 {
Chris@42 2774 E T8w, T8B, T8J, T8K;
Chris@42 2775 T8w = T8s - T8v;
Chris@42 2776 T8B = T8x + T8A;
Chris@42 2777 T8C = KP707106781 * (T8w - T8B);
Chris@42 2778 Tc4 = KP707106781 * (T8B + T8w);
Chris@42 2779 T8J = T8A - T8x;
Chris@42 2780 T8K = T8s + T8v;
Chris@42 2781 T8L = KP707106781 * (T8J - T8K);
Chris@42 2782 Tc7 = KP707106781 * (T8J + T8K);
Chris@42 2783 }
Chris@42 2784 {
Chris@42 2785 E Tep, Teq, T8E, T8H;
Chris@42 2786 Tep = Ten - Teo;
Chris@42 2787 Teq = T4p - T4e;
Chris@42 2788 Ter = Tep - Teq;
Chris@42 2789 TfV = Tep + Teq;
Chris@42 2790 T8E = T3H - T3M;
Chris@42 2791 T8H = T8F - T8G;
Chris@42 2792 T8I = T8E - T8H;
Chris@42 2793 Tc3 = T8E + T8H;
Chris@42 2794 }
Chris@42 2795 }
Chris@42 2796 {
Chris@42 2797 E T5V, Tao, T64, Tap, T65, Tfi, T68, T9K, T6d, T9L, T6e, Tfj, T6o, Tf2, T9Q;
Chris@42 2798 E T9R, T6z, Tf3, T9T, T9W;
Chris@42 2799 {
Chris@42 2800 E T5T, T5U, T5Z, T63;
Chris@42 2801 T5T = ri[WS(rs, 63)];
Chris@42 2802 T5U = ii[WS(rs, 63)];
Chris@42 2803 T5V = FMA(TW, T5T, T10 * T5U);
Chris@42 2804 Tao = FNMS(T10, T5T, TW * T5U);
Chris@42 2805 T5Z = ri[WS(rs, 31)];
Chris@42 2806 T63 = ii[WS(rs, 31)];
Chris@42 2807 T64 = FMA(T5Y, T5Z, T62 * T63);
Chris@42 2808 Tap = FNMS(T62, T5Z, T5Y * T63);
Chris@42 2809 }
Chris@42 2810 T65 = T5V + T64;
Chris@42 2811 Tfi = Tao + Tap;
Chris@42 2812 {
Chris@42 2813 E T66, T67, T6a, T6c;
Chris@42 2814 T66 = ri[WS(rs, 15)];
Chris@42 2815 T67 = ii[WS(rs, 15)];
Chris@42 2816 T68 = FMA(TV, T66, TZ * T67);
Chris@42 2817 T9K = FNMS(TZ, T66, TV * T67);
Chris@42 2818 T6a = ri[WS(rs, 47)];
Chris@42 2819 T6c = ii[WS(rs, 47)];
Chris@42 2820 T6d = FMA(T69, T6a, T6b * T6c);
Chris@42 2821 T9L = FNMS(T6b, T6a, T69 * T6c);
Chris@42 2822 }
Chris@42 2823 T6e = T68 + T6d;
Chris@42 2824 Tfj = T9K + T9L;
Chris@42 2825 {
Chris@42 2826 E T6i, T9O, T6n, T9P;
Chris@42 2827 {
Chris@42 2828 E T6g, T6h, T6k, T6m;
Chris@42 2829 T6g = ri[WS(rs, 7)];
Chris@42 2830 T6h = ii[WS(rs, 7)];
Chris@42 2831 T6i = FMA(T1t, T6g, T1u * T6h);
Chris@42 2832 T9O = FNMS(T1u, T6g, T1t * T6h);
Chris@42 2833 T6k = ri[WS(rs, 39)];
Chris@42 2834 T6m = ii[WS(rs, 39)];
Chris@42 2835 T6n = FMA(T6j, T6k, T6l * T6m);
Chris@42 2836 T9P = FNMS(T6l, T6k, T6j * T6m);
Chris@42 2837 }
Chris@42 2838 T6o = T6i + T6n;
Chris@42 2839 Tf2 = T9O + T9P;
Chris@42 2840 T9Q = T9O - T9P;
Chris@42 2841 T9R = T6i - T6n;
Chris@42 2842 }
Chris@42 2843 {
Chris@42 2844 E T6t, T9U, T6y, T9V;
Chris@42 2845 {
Chris@42 2846 E T6q, T6s, T6v, T6x;
Chris@42 2847 T6q = ri[WS(rs, 55)];
Chris@42 2848 T6s = ii[WS(rs, 55)];
Chris@42 2849 T6t = FMA(T6p, T6q, T6r * T6s);
Chris@42 2850 T9U = FNMS(T6r, T6q, T6p * T6s);
Chris@42 2851 T6v = ri[WS(rs, 23)];
Chris@42 2852 T6x = ii[WS(rs, 23)];
Chris@42 2853 T6y = FMA(T6u, T6v, T6w * T6x);
Chris@42 2854 T9V = FNMS(T6w, T6v, T6u * T6x);
Chris@42 2855 }
Chris@42 2856 T6z = T6t + T6y;
Chris@42 2857 Tf3 = T9U + T9V;
Chris@42 2858 T9T = T6t - T6y;
Chris@42 2859 T9W = T9U - T9V;
Chris@42 2860 }
Chris@42 2861 {
Chris@42 2862 E T6f, T6A, Tfk, Tfl;
Chris@42 2863 T6f = T65 + T6e;
Chris@42 2864 T6A = T6o + T6z;
Chris@42 2865 T6B = T6f + T6A;
Chris@42 2866 Th1 = T6f - T6A;
Chris@42 2867 Tfk = Tfi - Tfj;
Chris@42 2868 Tfl = T6z - T6o;
Chris@42 2869 Tfm = Tfk - Tfl;
Chris@42 2870 Tga = Tfk + Tfl;
Chris@42 2871 }
Chris@42 2872 {
Chris@42 2873 E Th6, Th7, T9J, T9M;
Chris@42 2874 Th6 = Tfi + Tfj;
Chris@42 2875 Th7 = Tf2 + Tf3;
Chris@42 2876 Th8 = Th6 - Th7;
Chris@42 2877 ThI = Th6 + Th7;
Chris@42 2878 T9J = T5V - T64;
Chris@42 2879 T9M = T9K - T9L;
Chris@42 2880 T9N = T9J - T9M;
Chris@42 2881 Tcv = T9J + T9M;
Chris@42 2882 }
Chris@42 2883 {
Chris@42 2884 E T9S, T9X, Tat, Tau;
Chris@42 2885 T9S = T9Q - T9R;
Chris@42 2886 T9X = T9T + T9W;
Chris@42 2887 T9Y = KP707106781 * (T9S - T9X);
Chris@42 2888 TcH = KP707106781 * (T9S + T9X);
Chris@42 2889 Tat = T9T - T9W;
Chris@42 2890 Tau = T9R + T9Q;
Chris@42 2891 Tav = KP707106781 * (Tat - Tau);
Chris@42 2892 Tcw = KP707106781 * (Tau + Tat);
Chris@42 2893 }
Chris@42 2894 {
Chris@42 2895 E Tf1, Tf4, Taq, Tar;
Chris@42 2896 Tf1 = T65 - T6e;
Chris@42 2897 Tf4 = Tf2 - Tf3;
Chris@42 2898 Tf5 = Tf1 - Tf4;
Chris@42 2899 Tg7 = Tf1 + Tf4;
Chris@42 2900 Taq = Tao - Tap;
Chris@42 2901 Tar = T68 - T6d;
Chris@42 2902 Tas = Taq + Tar;
Chris@42 2903 TcG = Taq - Tar;
Chris@42 2904 }
Chris@42 2905 }
Chris@42 2906 {
Chris@42 2907 E T4w, T8Q, T4B, T8R, T4C, TeA, T4F, T9w, T4K, T9x, T4L, TeB, T4V, TeS, T90;
Chris@42 2908 E T93, T5a, TeT, T8V, T8Y;
Chris@42 2909 {
Chris@42 2910 E T4u, T4v, T4y, T4A;
Chris@42 2911 T4u = ri[WS(rs, 1)];
Chris@42 2912 T4v = ii[WS(rs, 1)];
Chris@42 2913 T4w = FMA(T2, T4u, T5 * T4v);
Chris@42 2914 T8Q = FNMS(T5, T4u, T2 * T4v);
Chris@42 2915 T4y = ri[WS(rs, 33)];
Chris@42 2916 T4A = ii[WS(rs, 33)];
Chris@42 2917 T4B = FMA(T4x, T4y, T4z * T4A);
Chris@42 2918 T8R = FNMS(T4z, T4y, T4x * T4A);
Chris@42 2919 }
Chris@42 2920 T4C = T4w + T4B;
Chris@42 2921 TeA = T8Q + T8R;
Chris@42 2922 {
Chris@42 2923 E T4D, T4E, T4H, T4J;
Chris@42 2924 T4D = ri[WS(rs, 17)];
Chris@42 2925 T4E = ii[WS(rs, 17)];
Chris@42 2926 T4F = FMA(T3V, T4D, T3Y * T4E);
Chris@42 2927 T9w = FNMS(T3Y, T4D, T3V * T4E);
Chris@42 2928 T4H = ri[WS(rs, 49)];
Chris@42 2929 T4J = ii[WS(rs, 49)];
Chris@42 2930 T4K = FMA(T4G, T4H, T4I * T4J);
Chris@42 2931 T9x = FNMS(T4I, T4H, T4G * T4J);
Chris@42 2932 }
Chris@42 2933 T4L = T4F + T4K;
Chris@42 2934 TeB = T9w + T9x;
Chris@42 2935 {
Chris@42 2936 E T4P, T91, T4U, T92;
Chris@42 2937 {
Chris@42 2938 E T4N, T4O, T4R, T4T;
Chris@42 2939 T4N = ri[WS(rs, 9)];
Chris@42 2940 T4O = ii[WS(rs, 9)];
Chris@42 2941 T4P = FMA(T9, T4N, Te * T4O);
Chris@42 2942 T91 = FNMS(Te, T4N, T9 * T4O);
Chris@42 2943 T4R = ri[WS(rs, 41)];
Chris@42 2944 T4T = ii[WS(rs, 41)];
Chris@42 2945 T4U = FMA(T4Q, T4R, T4S * T4T);
Chris@42 2946 T92 = FNMS(T4S, T4R, T4Q * T4T);
Chris@42 2947 }
Chris@42 2948 T4V = T4P + T4U;
Chris@42 2949 TeS = T91 + T92;
Chris@42 2950 T90 = T4P - T4U;
Chris@42 2951 T93 = T91 - T92;
Chris@42 2952 }
Chris@42 2953 {
Chris@42 2954 E T50, T8W, T59, T8X;
Chris@42 2955 {
Chris@42 2956 E T4X, T4Z, T54, T58;
Chris@42 2957 T4X = ri[WS(rs, 57)];
Chris@42 2958 T4Z = ii[WS(rs, 57)];
Chris@42 2959 T50 = FMA(T4W, T4X, T4Y * T4Z);
Chris@42 2960 T8W = FNMS(T4Y, T4X, T4W * T4Z);
Chris@42 2961 T54 = ri[WS(rs, 25)];
Chris@42 2962 T58 = ii[WS(rs, 25)];
Chris@42 2963 T59 = FMA(T53, T54, T57 * T58);
Chris@42 2964 T8X = FNMS(T57, T54, T53 * T58);
Chris@42 2965 }
Chris@42 2966 T5a = T50 + T59;
Chris@42 2967 TeT = T8W + T8X;
Chris@42 2968 T8V = T50 - T59;
Chris@42 2969 T8Y = T8W - T8X;
Chris@42 2970 }
Chris@42 2971 {
Chris@42 2972 E T4M, T5b, TeR, TeU;
Chris@42 2973 T4M = T4C + T4L;
Chris@42 2974 T5b = T4V + T5a;
Chris@42 2975 T5c = T4M + T5b;
Chris@42 2976 TgV = T4M - T5b;
Chris@42 2977 TeR = T4C - T4L;
Chris@42 2978 TeU = TeS - TeT;
Chris@42 2979 TeV = TeR - TeU;
Chris@42 2980 Tg0 = TeR + TeU;
Chris@42 2981 }
Chris@42 2982 {
Chris@42 2983 E TgQ, TgR, T8S, T8T;
Chris@42 2984 TgQ = TeA + TeB;
Chris@42 2985 TgR = TeS + TeT;
Chris@42 2986 TgS = TgQ - TgR;
Chris@42 2987 ThD = TgQ + TgR;
Chris@42 2988 T8S = T8Q - T8R;
Chris@42 2989 T8T = T4F - T4K;
Chris@42 2990 T8U = T8S + T8T;
Chris@42 2991 Tcc = T8S - T8T;
Chris@42 2992 }
Chris@42 2993 {
Chris@42 2994 E T8Z, T94, T9A, T9B;
Chris@42 2995 T8Z = T8V - T8Y;
Chris@42 2996 T94 = T90 + T93;
Chris@42 2997 T95 = KP707106781 * (T8Z - T94);
Chris@42 2998 Tco = KP707106781 * (T94 + T8Z);
Chris@42 2999 T9A = T93 - T90;
Chris@42 3000 T9B = T8V + T8Y;
Chris@42 3001 T9C = KP707106781 * (T9A - T9B);
Chris@42 3002 Tcd = KP707106781 * (T9A + T9B);
Chris@42 3003 }
Chris@42 3004 {
Chris@42 3005 E TeC, TeD, T9v, T9y;
Chris@42 3006 TeC = TeA - TeB;
Chris@42 3007 TeD = T5a - T4V;
Chris@42 3008 TeE = TeC - TeD;
Chris@42 3009 Tg3 = TeC + TeD;
Chris@42 3010 T9v = T4w - T4B;
Chris@42 3011 T9y = T9w - T9x;
Chris@42 3012 T9z = T9v - T9y;
Chris@42 3013 Tcn = T9v + T9y;
Chris@42 3014 }
Chris@42 3015 }
Chris@42 3016 {
Chris@42 3017 E T5l, TeL, T9k, T9n, T5P, TeH, T9a, T9f, T5u, TeM, T9l, T9q, T5G, TeG, T97;
Chris@42 3018 E T9e;
Chris@42 3019 {
Chris@42 3020 E T5f, T9i, T5k, T9j;
Chris@42 3021 {
Chris@42 3022 E T5d, T5e, T5h, T5j;
Chris@42 3023 T5d = ri[WS(rs, 5)];
Chris@42 3024 T5e = ii[WS(rs, 5)];
Chris@42 3025 T5f = FMA(Tg, T5d, Tl * T5e);
Chris@42 3026 T9i = FNMS(Tl, T5d, Tg * T5e);
Chris@42 3027 T5h = ri[WS(rs, 37)];
Chris@42 3028 T5j = ii[WS(rs, 37)];
Chris@42 3029 T5k = FMA(T5g, T5h, T5i * T5j);
Chris@42 3030 T9j = FNMS(T5i, T5h, T5g * T5j);
Chris@42 3031 }
Chris@42 3032 T5l = T5f + T5k;
Chris@42 3033 TeL = T9i + T9j;
Chris@42 3034 T9k = T9i - T9j;
Chris@42 3035 T9n = T5f - T5k;
Chris@42 3036 }
Chris@42 3037 {
Chris@42 3038 E T5J, T98, T5O, T99;
Chris@42 3039 {
Chris@42 3040 E T5H, T5I, T5L, T5N;
Chris@42 3041 T5H = ri[WS(rs, 13)];
Chris@42 3042 T5I = ii[WS(rs, 13)];
Chris@42 3043 T5J = FMA(T1h, T5H, T1j * T5I);
Chris@42 3044 T98 = FNMS(T1j, T5H, T1h * T5I);
Chris@42 3045 T5L = ri[WS(rs, 45)];
Chris@42 3046 T5N = ii[WS(rs, 45)];
Chris@42 3047 T5O = FMA(T5K, T5L, T5M * T5N);
Chris@42 3048 T99 = FNMS(T5M, T5L, T5K * T5N);
Chris@42 3049 }
Chris@42 3050 T5P = T5J + T5O;
Chris@42 3051 TeH = T98 + T99;
Chris@42 3052 T9a = T98 - T99;
Chris@42 3053 T9f = T5J - T5O;
Chris@42 3054 }
Chris@42 3055 {
Chris@42 3056 E T5o, T9o, T5t, T9p;
Chris@42 3057 {
Chris@42 3058 E T5m, T5n, T5q, T5s;
Chris@42 3059 T5m = ri[WS(rs, 21)];
Chris@42 3060 T5n = ii[WS(rs, 21)];
Chris@42 3061 T5o = FMA(T3g, T5m, T3j * T5n);
Chris@42 3062 T9o = FNMS(T3j, T5m, T3g * T5n);
Chris@42 3063 T5q = ri[WS(rs, 53)];
Chris@42 3064 T5s = ii[WS(rs, 53)];
Chris@42 3065 T5t = FMA(T5p, T5q, T5r * T5s);
Chris@42 3066 T9p = FNMS(T5r, T5q, T5p * T5s);
Chris@42 3067 }
Chris@42 3068 T5u = T5o + T5t;
Chris@42 3069 TeM = T9o + T9p;
Chris@42 3070 T9l = T5o - T5t;
Chris@42 3071 T9q = T9o - T9p;
Chris@42 3072 }
Chris@42 3073 {
Chris@42 3074 E T5A, T9c, T5F, T9d;
Chris@42 3075 {
Chris@42 3076 E T5x, T5z, T5C, T5E;
Chris@42 3077 T5x = ri[WS(rs, 61)];
Chris@42 3078 T5z = ii[WS(rs, 61)];
Chris@42 3079 T5A = FMA(T5w, T5x, T5y * T5z);
Chris@42 3080 T9c = FNMS(T5y, T5x, T5w * T5z);
Chris@42 3081 T5C = ri[WS(rs, 29)];
Chris@42 3082 T5E = ii[WS(rs, 29)];
Chris@42 3083 T5F = FMA(T5B, T5C, T5D * T5E);
Chris@42 3084 T9d = FNMS(T5D, T5C, T5B * T5E);
Chris@42 3085 }
Chris@42 3086 T5G = T5A + T5F;
Chris@42 3087 TeG = T9c + T9d;
Chris@42 3088 T97 = T5A - T5F;
Chris@42 3089 T9e = T9c - T9d;
Chris@42 3090 }
Chris@42 3091 {
Chris@42 3092 E T5v, T5Q, TeK, TeN;
Chris@42 3093 T5v = T5l + T5u;
Chris@42 3094 T5Q = T5G + T5P;
Chris@42 3095 T5R = T5v + T5Q;
Chris@42 3096 TgT = T5Q - T5v;
Chris@42 3097 TeK = T5l - T5u;
Chris@42 3098 TeN = TeL - TeM;
Chris@42 3099 TeO = TeK + TeN;
Chris@42 3100 TeW = TeN - TeK;
Chris@42 3101 }
Chris@42 3102 {
Chris@42 3103 E TgW, TgX, T9b, T9g;
Chris@42 3104 TgW = TeL + TeM;
Chris@42 3105 TgX = TeG + TeH;
Chris@42 3106 TgY = TgW - TgX;
Chris@42 3107 ThE = TgW + TgX;
Chris@42 3108 T9b = T97 - T9a;
Chris@42 3109 T9g = T9e + T9f;
Chris@42 3110 T9h = FNMS(KP923879532, T9g, KP382683432 * T9b);
Chris@42 3111 T9F = FMA(KP382683432, T9g, KP923879532 * T9b);
Chris@42 3112 }
Chris@42 3113 {
Chris@42 3114 E T9m, T9r, Tci, Tcj;
Chris@42 3115 T9m = T9k + T9l;
Chris@42 3116 T9r = T9n - T9q;
Chris@42 3117 T9s = FMA(KP923879532, T9m, KP382683432 * T9r);
Chris@42 3118 T9E = FNMS(KP923879532, T9r, KP382683432 * T9m);
Chris@42 3119 Tci = T9k - T9l;
Chris@42 3120 Tcj = T9n + T9q;
Chris@42 3121 Tck = FMA(KP382683432, Tci, KP923879532 * Tcj);
Chris@42 3122 Tcq = FNMS(KP382683432, Tcj, KP923879532 * Tci);
Chris@42 3123 }
Chris@42 3124 {
Chris@42 3125 E TeF, TeI, Tcf, Tcg;
Chris@42 3126 TeF = T5G - T5P;
Chris@42 3127 TeI = TeG - TeH;
Chris@42 3128 TeJ = TeF - TeI;
Chris@42 3129 TeX = TeF + TeI;
Chris@42 3130 Tcf = T97 + T9a;
Chris@42 3131 Tcg = T9e - T9f;
Chris@42 3132 Tch = FNMS(KP382683432, Tcg, KP923879532 * Tcf);
Chris@42 3133 Tcr = FMA(KP923879532, Tcg, KP382683432 * Tcf);
Chris@42 3134 }
Chris@42 3135 }
Chris@42 3136 {
Chris@42 3137 E T6K, Tf6, Ta2, Ta5, T7c, Tfd, Tae, Taj, T6T, Tf7, Ta3, Ta8, T73, Tfc, Tad;
Chris@42 3138 E Tag;
Chris@42 3139 {
Chris@42 3140 E T6E, Ta0, T6J, Ta1;
Chris@42 3141 {
Chris@42 3142 E T6C, T6D, T6G, T6I;
Chris@42 3143 T6C = ri[WS(rs, 3)];
Chris@42 3144 T6D = ii[WS(rs, 3)];
Chris@42 3145 T6E = FMA(T3, T6C, T6 * T6D);
Chris@42 3146 Ta0 = FNMS(T6, T6C, T3 * T6D);
Chris@42 3147 T6G = ri[WS(rs, 35)];
Chris@42 3148 T6I = ii[WS(rs, 35)];
Chris@42 3149 T6J = FMA(T6F, T6G, T6H * T6I);
Chris@42 3150 Ta1 = FNMS(T6H, T6G, T6F * T6I);
Chris@42 3151 }
Chris@42 3152 T6K = T6E + T6J;
Chris@42 3153 Tf6 = Ta0 + Ta1;
Chris@42 3154 Ta2 = Ta0 - Ta1;
Chris@42 3155 Ta5 = T6E - T6J;
Chris@42 3156 }
Chris@42 3157 {
Chris@42 3158 E T76, Tah, T7b, Tai;
Chris@42 3159 {
Chris@42 3160 E T74, T75, T78, T7a;
Chris@42 3161 T74 = ri[WS(rs, 11)];
Chris@42 3162 T75 = ii[WS(rs, 11)];
Chris@42 3163 T76 = FMA(TA, T74, TE * T75);
Chris@42 3164 Tah = FNMS(TE, T74, TA * T75);
Chris@42 3165 T78 = ri[WS(rs, 43)];
Chris@42 3166 T7a = ii[WS(rs, 43)];
Chris@42 3167 T7b = FMA(T77, T78, T79 * T7a);
Chris@42 3168 Tai = FNMS(T79, T78, T77 * T7a);
Chris@42 3169 }
Chris@42 3170 T7c = T76 + T7b;
Chris@42 3171 Tfd = Tah + Tai;
Chris@42 3172 Tae = T76 - T7b;
Chris@42 3173 Taj = Tah - Tai;
Chris@42 3174 }
Chris@42 3175 {
Chris@42 3176 E T6N, Ta6, T6S, Ta7;
Chris@42 3177 {
Chris@42 3178 E T6L, T6M, T6P, T6R;
Chris@42 3179 T6L = ri[WS(rs, 19)];
Chris@42 3180 T6M = ii[WS(rs, 19)];
Chris@42 3181 T6N = FMA(T2z, T6L, T2C * T6M);
Chris@42 3182 Ta6 = FNMS(T2C, T6L, T2z * T6M);
Chris@42 3183 T6P = ri[WS(rs, 51)];
Chris@42 3184 T6R = ii[WS(rs, 51)];
Chris@42 3185 T6S = FMA(T6O, T6P, T6Q * T6R);
Chris@42 3186 Ta7 = FNMS(T6Q, T6P, T6O * T6R);
Chris@42 3187 }
Chris@42 3188 T6T = T6N + T6S;
Chris@42 3189 Tf7 = Ta6 + Ta7;
Chris@42 3190 Ta3 = T6N - T6S;
Chris@42 3191 Ta8 = Ta6 - Ta7;
Chris@42 3192 }
Chris@42 3193 {
Chris@42 3194 E T6Z, Tab, T72, Tac;
Chris@42 3195 {
Chris@42 3196 E T6W, T6Y, T70, T71;
Chris@42 3197 T6W = ri[WS(rs, 59)];
Chris@42 3198 T6Y = ii[WS(rs, 59)];
Chris@42 3199 T6Z = FMA(T6V, T6W, T6X * T6Y);
Chris@42 3200 Tab = FNMS(T6X, T6W, T6V * T6Y);
Chris@42 3201 T70 = ri[WS(rs, 27)];
Chris@42 3202 T71 = ii[WS(rs, 27)];
Chris@42 3203 T72 = FMA(Th, T70, Tm * T71);
Chris@42 3204 Tac = FNMS(Tm, T70, Th * T71);
Chris@42 3205 }
Chris@42 3206 T73 = T6Z + T72;
Chris@42 3207 Tfc = Tab + Tac;
Chris@42 3208 Tad = Tab - Tac;
Chris@42 3209 Tag = T6Z - T72;
Chris@42 3210 }
Chris@42 3211 {
Chris@42 3212 E T6U, T7d, Tfb, Tfe;
Chris@42 3213 T6U = T6K + T6T;
Chris@42 3214 T7d = T73 + T7c;
Chris@42 3215 T7e = T6U + T7d;
Chris@42 3216 Th9 = T7d - T6U;
Chris@42 3217 Tfb = T73 - T7c;
Chris@42 3218 Tfe = Tfc - Tfd;
Chris@42 3219 Tff = Tfb + Tfe;
Chris@42 3220 Tfn = Tfb - Tfe;
Chris@42 3221 }
Chris@42 3222 {
Chris@42 3223 E Th2, Th3, Ta4, Ta9;
Chris@42 3224 Th2 = Tf6 + Tf7;
Chris@42 3225 Th3 = Tfc + Tfd;
Chris@42 3226 Th4 = Th2 - Th3;
Chris@42 3227 ThJ = Th2 + Th3;
Chris@42 3228 Ta4 = Ta2 + Ta3;
Chris@42 3229 Ta9 = Ta5 - Ta8;
Chris@42 3230 Taa = FNMS(KP923879532, Ta9, KP382683432 * Ta4);
Chris@42 3231 Tay = FMA(KP923879532, Ta4, KP382683432 * Ta9);
Chris@42 3232 }
Chris@42 3233 {
Chris@42 3234 E Taf, Tak, TcB, TcC;
Chris@42 3235 Taf = Tad + Tae;
Chris@42 3236 Tak = Tag - Taj;
Chris@42 3237 Tal = FMA(KP382683432, Taf, KP923879532 * Tak);
Chris@42 3238 Tax = FNMS(KP923879532, Taf, KP382683432 * Tak);
Chris@42 3239 TcB = Tad - Tae;
Chris@42 3240 TcC = Tag + Taj;
Chris@42 3241 TcD = FMA(KP923879532, TcB, KP382683432 * TcC);
Chris@42 3242 TcJ = FNMS(KP382683432, TcB, KP923879532 * TcC);
Chris@42 3243 }
Chris@42 3244 {
Chris@42 3245 E Tf8, Tf9, Tcy, Tcz;
Chris@42 3246 Tf8 = Tf6 - Tf7;
Chris@42 3247 Tf9 = T6K - T6T;
Chris@42 3248 Tfa = Tf8 - Tf9;
Chris@42 3249 Tfo = Tf9 + Tf8;
Chris@42 3250 Tcy = Ta2 - Ta3;
Chris@42 3251 Tcz = Ta5 + Ta8;
Chris@42 3252 TcA = FNMS(KP382683432, Tcz, KP923879532 * Tcy);
Chris@42 3253 TcK = FMA(KP382683432, Tcy, KP923879532 * Tcz);
Chris@42 3254 }
Chris@42 3255 }
Chris@42 3256 {
Chris@42 3257 E T2L, Thx, ThU, ThV, Ti5, Tib, T4s, Tia, T7g, Ti7, ThG, ThO, ThL, ThP, ThA;
Chris@42 3258 E ThW;
Chris@42 3259 {
Chris@42 3260 E T1L, T2K, ThS, ThT;
Chris@42 3261 T1L = T17 + T1K;
Chris@42 3262 T2K = T2e + T2J;
Chris@42 3263 T2L = T1L + T2K;
Chris@42 3264 Thx = T1L - T2K;
Chris@42 3265 ThS = ThD + ThE;
Chris@42 3266 ThT = ThI + ThJ;
Chris@42 3267 ThU = ThS - ThT;
Chris@42 3268 ThV = ThS + ThT;
Chris@42 3269 }
Chris@42 3270 {
Chris@42 3271 E ThX, Ti4, T3C, T4r;
Chris@42 3272 ThX = TgA + TgB;
Chris@42 3273 Ti4 = ThY + Ti3;
Chris@42 3274 Ti5 = ThX + Ti4;
Chris@42 3275 Tib = Ti4 - ThX;
Chris@42 3276 T3C = T36 + T3B;
Chris@42 3277 T4r = T45 + T4q;
Chris@42 3278 T4s = T3C + T4r;
Chris@42 3279 Tia = T4r - T3C;
Chris@42 3280 }
Chris@42 3281 {
Chris@42 3282 E T5S, T7f, ThC, ThF;
Chris@42 3283 T5S = T5c + T5R;
Chris@42 3284 T7f = T6B + T7e;
Chris@42 3285 T7g = T5S + T7f;
Chris@42 3286 Ti7 = T7f - T5S;
Chris@42 3287 ThC = T5c - T5R;
Chris@42 3288 ThF = ThD - ThE;
Chris@42 3289 ThG = ThC + ThF;
Chris@42 3290 ThO = ThF - ThC;
Chris@42 3291 }
Chris@42 3292 {
Chris@42 3293 E ThH, ThK, Thy, Thz;
Chris@42 3294 ThH = T6B - T7e;
Chris@42 3295 ThK = ThI - ThJ;
Chris@42 3296 ThL = ThH - ThK;
Chris@42 3297 ThP = ThH + ThK;
Chris@42 3298 Thy = TgE + TgF;
Chris@42 3299 Thz = TgK + TgL;
Chris@42 3300 ThA = Thy - Thz;
Chris@42 3301 ThW = Thy + Thz;
Chris@42 3302 }
Chris@42 3303 {
Chris@42 3304 E T4t, Ti6, ThR, Ti8;
Chris@42 3305 T4t = T2L + T4s;
Chris@42 3306 ri[WS(rs, 32)] = T4t - T7g;
Chris@42 3307 ri[0] = T4t + T7g;
Chris@42 3308 Ti6 = ThW + Ti5;
Chris@42 3309 ii[0] = ThV + Ti6;
Chris@42 3310 ii[WS(rs, 32)] = Ti6 - ThV;
Chris@42 3311 ThR = T2L - T4s;
Chris@42 3312 ri[WS(rs, 48)] = ThR - ThU;
Chris@42 3313 ri[WS(rs, 16)] = ThR + ThU;
Chris@42 3314 Ti8 = Ti5 - ThW;
Chris@42 3315 ii[WS(rs, 16)] = Ti7 + Ti8;
Chris@42 3316 ii[WS(rs, 48)] = Ti8 - Ti7;
Chris@42 3317 }
Chris@42 3318 {
Chris@42 3319 E ThB, ThM, Ti9, Tic;
Chris@42 3320 ThB = Thx + ThA;
Chris@42 3321 ThM = KP707106781 * (ThG + ThL);
Chris@42 3322 ri[WS(rs, 40)] = ThB - ThM;
Chris@42 3323 ri[WS(rs, 8)] = ThB + ThM;
Chris@42 3324 Ti9 = KP707106781 * (ThO + ThP);
Chris@42 3325 Tic = Tia + Tib;
Chris@42 3326 ii[WS(rs, 8)] = Ti9 + Tic;
Chris@42 3327 ii[WS(rs, 40)] = Tic - Ti9;
Chris@42 3328 }
Chris@42 3329 {
Chris@42 3330 E ThN, ThQ, Tid, Tie;
Chris@42 3331 ThN = Thx - ThA;
Chris@42 3332 ThQ = KP707106781 * (ThO - ThP);
Chris@42 3333 ri[WS(rs, 56)] = ThN - ThQ;
Chris@42 3334 ri[WS(rs, 24)] = ThN + ThQ;
Chris@42 3335 Tid = KP707106781 * (ThL - ThG);
Chris@42 3336 Tie = Tib - Tia;
Chris@42 3337 ii[WS(rs, 24)] = Tid + Tie;
Chris@42 3338 ii[WS(rs, 56)] = Tie - Tid;
Chris@42 3339 }
Chris@42 3340 }
Chris@42 3341 {
Chris@42 3342 E TgD, Thh, Thr, Thv, Tij, Tip, TgO, Tig, Th0, The, Thk, Tio, Tho, Thu, Thb;
Chris@42 3343 E Thf;
Chris@42 3344 {
Chris@42 3345 E Tgz, TgC, Thp, Thq;
Chris@42 3346 Tgz = T17 - T1K;
Chris@42 3347 TgC = TgA - TgB;
Chris@42 3348 TgD = Tgz - TgC;
Chris@42 3349 Thh = Tgz + TgC;
Chris@42 3350 Thp = Th1 + Th4;
Chris@42 3351 Thq = Th8 + Th9;
Chris@42 3352 Thr = FNMS(KP382683432, Thq, KP923879532 * Thp);
Chris@42 3353 Thv = FMA(KP923879532, Thq, KP382683432 * Thp);
Chris@42 3354 }
Chris@42 3355 {
Chris@42 3356 E Tih, Tii, TgI, TgN;
Chris@42 3357 Tih = T2J - T2e;
Chris@42 3358 Tii = Ti3 - ThY;
Chris@42 3359 Tij = Tih + Tii;
Chris@42 3360 Tip = Tii - Tih;
Chris@42 3361 TgI = TgG - TgH;
Chris@42 3362 TgN = TgJ + TgM;
Chris@42 3363 TgO = KP707106781 * (TgI - TgN);
Chris@42 3364 Tig = KP707106781 * (TgI + TgN);
Chris@42 3365 }
Chris@42 3366 {
Chris@42 3367 E TgU, TgZ, Thi, Thj;
Chris@42 3368 TgU = TgS - TgT;
Chris@42 3369 TgZ = TgV - TgY;
Chris@42 3370 Th0 = FMA(KP923879532, TgU, KP382683432 * TgZ);
Chris@42 3371 The = FNMS(KP923879532, TgZ, KP382683432 * TgU);
Chris@42 3372 Thi = TgH + TgG;
Chris@42 3373 Thj = TgJ - TgM;
Chris@42 3374 Thk = KP707106781 * (Thi + Thj);
Chris@42 3375 Tio = KP707106781 * (Thj - Thi);
Chris@42 3376 }
Chris@42 3377 {
Chris@42 3378 E Thm, Thn, Th5, Tha;
Chris@42 3379 Thm = TgS + TgT;
Chris@42 3380 Thn = TgV + TgY;
Chris@42 3381 Tho = FMA(KP382683432, Thm, KP923879532 * Thn);
Chris@42 3382 Thu = FNMS(KP382683432, Thn, KP923879532 * Thm);
Chris@42 3383 Th5 = Th1 - Th4;
Chris@42 3384 Tha = Th8 - Th9;
Chris@42 3385 Thb = FNMS(KP923879532, Tha, KP382683432 * Th5);
Chris@42 3386 Thf = FMA(KP382683432, Tha, KP923879532 * Th5);
Chris@42 3387 }
Chris@42 3388 {
Chris@42 3389 E TgP, Thc, Tin, Tiq;
Chris@42 3390 TgP = TgD + TgO;
Chris@42 3391 Thc = Th0 + Thb;
Chris@42 3392 ri[WS(rs, 44)] = TgP - Thc;
Chris@42 3393 ri[WS(rs, 12)] = TgP + Thc;
Chris@42 3394 Tin = The + Thf;
Chris@42 3395 Tiq = Tio + Tip;
Chris@42 3396 ii[WS(rs, 12)] = Tin + Tiq;
Chris@42 3397 ii[WS(rs, 44)] = Tiq - Tin;
Chris@42 3398 }
Chris@42 3399 {
Chris@42 3400 E Thd, Thg, Tir, Tis;
Chris@42 3401 Thd = TgD - TgO;
Chris@42 3402 Thg = The - Thf;
Chris@42 3403 ri[WS(rs, 60)] = Thd - Thg;
Chris@42 3404 ri[WS(rs, 28)] = Thd + Thg;
Chris@42 3405 Tir = Thb - Th0;
Chris@42 3406 Tis = Tip - Tio;
Chris@42 3407 ii[WS(rs, 28)] = Tir + Tis;
Chris@42 3408 ii[WS(rs, 60)] = Tis - Tir;
Chris@42 3409 }
Chris@42 3410 {
Chris@42 3411 E Thl, Ths, Tif, Tik;
Chris@42 3412 Thl = Thh + Thk;
Chris@42 3413 Ths = Tho + Thr;
Chris@42 3414 ri[WS(rs, 36)] = Thl - Ths;
Chris@42 3415 ri[WS(rs, 4)] = Thl + Ths;
Chris@42 3416 Tif = Thu + Thv;
Chris@42 3417 Tik = Tig + Tij;
Chris@42 3418 ii[WS(rs, 4)] = Tif + Tik;
Chris@42 3419 ii[WS(rs, 36)] = Tik - Tif;
Chris@42 3420 }
Chris@42 3421 {
Chris@42 3422 E Tht, Thw, Til, Tim;
Chris@42 3423 Tht = Thh - Thk;
Chris@42 3424 Thw = Thu - Thv;
Chris@42 3425 ri[WS(rs, 52)] = Tht - Thw;
Chris@42 3426 ri[WS(rs, 20)] = Tht + Thw;
Chris@42 3427 Til = Thr - Tho;
Chris@42 3428 Tim = Tij - Tig;
Chris@42 3429 ii[WS(rs, 20)] = Til + Tim;
Chris@42 3430 ii[WS(rs, 52)] = Tim - Til;
Chris@42 3431 }
Chris@42 3432 }
Chris@42 3433 {
Chris@42 3434 E Teb, Tfx, Tey, TiK, TiN, TiT, TfA, TiS, Tfr, TfL, Tfv, TfH, Tf0, TfK, Tfu;
Chris@42 3435 E TfE;
Chris@42 3436 {
Chris@42 3437 E TdZ, Tea, Tfy, Tfz;
Chris@42 3438 TdZ = TdV - TdY;
Chris@42 3439 Tea = KP707106781 * (Te4 - Te9);
Chris@42 3440 Teb = TdZ - Tea;
Chris@42 3441 Tfx = TdZ + Tea;
Chris@42 3442 {
Chris@42 3443 E Tem, Tex, TiL, TiM;
Chris@42 3444 Tem = FNMS(KP923879532, Tel, KP382683432 * Teg);
Chris@42 3445 Tex = FMA(KP382683432, Ter, KP923879532 * Tew);
Chris@42 3446 Tey = Tem - Tex;
Chris@42 3447 TiK = Tem + Tex;
Chris@42 3448 TiL = KP707106781 * (TfP - TfO);
Chris@42 3449 TiM = Tix - Tiw;
Chris@42 3450 TiN = TiL + TiM;
Chris@42 3451 TiT = TiM - TiL;
Chris@42 3452 }
Chris@42 3453 Tfy = FMA(KP923879532, Teg, KP382683432 * Tel);
Chris@42 3454 Tfz = FNMS(KP923879532, Ter, KP382683432 * Tew);
Chris@42 3455 TfA = Tfy + Tfz;
Chris@42 3456 TiS = Tfz - Tfy;
Chris@42 3457 {
Chris@42 3458 E Tfh, TfF, Tfq, TfG, Tfg, Tfp;
Chris@42 3459 Tfg = KP707106781 * (Tfa - Tff);
Chris@42 3460 Tfh = Tf5 - Tfg;
Chris@42 3461 TfF = Tf5 + Tfg;
Chris@42 3462 Tfp = KP707106781 * (Tfn - Tfo);
Chris@42 3463 Tfq = Tfm - Tfp;
Chris@42 3464 TfG = Tfm + Tfp;
Chris@42 3465 Tfr = FNMS(KP980785280, Tfq, KP195090322 * Tfh);
Chris@42 3466 TfL = FMA(KP831469612, TfG, KP555570233 * TfF);
Chris@42 3467 Tfv = FMA(KP195090322, Tfq, KP980785280 * Tfh);
Chris@42 3468 TfH = FNMS(KP555570233, TfG, KP831469612 * TfF);
Chris@42 3469 }
Chris@42 3470 {
Chris@42 3471 E TeQ, TfC, TeZ, TfD, TeP, TeY;
Chris@42 3472 TeP = KP707106781 * (TeJ - TeO);
Chris@42 3473 TeQ = TeE - TeP;
Chris@42 3474 TfC = TeE + TeP;
Chris@42 3475 TeY = KP707106781 * (TeW - TeX);
Chris@42 3476 TeZ = TeV - TeY;
Chris@42 3477 TfD = TeV + TeY;
Chris@42 3478 Tf0 = FMA(KP980785280, TeQ, KP195090322 * TeZ);
Chris@42 3479 TfK = FNMS(KP555570233, TfD, KP831469612 * TfC);
Chris@42 3480 Tfu = FNMS(KP980785280, TeZ, KP195090322 * TeQ);
Chris@42 3481 TfE = FMA(KP555570233, TfC, KP831469612 * TfD);
Chris@42 3482 }
Chris@42 3483 }
Chris@42 3484 {
Chris@42 3485 E Tez, Tfs, TiR, TiU;
Chris@42 3486 Tez = Teb + Tey;
Chris@42 3487 Tfs = Tf0 + Tfr;
Chris@42 3488 ri[WS(rs, 46)] = Tez - Tfs;
Chris@42 3489 ri[WS(rs, 14)] = Tez + Tfs;
Chris@42 3490 TiR = Tfu + Tfv;
Chris@42 3491 TiU = TiS + TiT;
Chris@42 3492 ii[WS(rs, 14)] = TiR + TiU;
Chris@42 3493 ii[WS(rs, 46)] = TiU - TiR;
Chris@42 3494 }
Chris@42 3495 {
Chris@42 3496 E Tft, Tfw, TiV, TiW;
Chris@42 3497 Tft = Teb - Tey;
Chris@42 3498 Tfw = Tfu - Tfv;
Chris@42 3499 ri[WS(rs, 62)] = Tft - Tfw;
Chris@42 3500 ri[WS(rs, 30)] = Tft + Tfw;
Chris@42 3501 TiV = Tfr - Tf0;
Chris@42 3502 TiW = TiT - TiS;
Chris@42 3503 ii[WS(rs, 30)] = TiV + TiW;
Chris@42 3504 ii[WS(rs, 62)] = TiW - TiV;
Chris@42 3505 }
Chris@42 3506 {
Chris@42 3507 E TfB, TfI, TiJ, TiO;
Chris@42 3508 TfB = Tfx + TfA;
Chris@42 3509 TfI = TfE + TfH;
Chris@42 3510 ri[WS(rs, 38)] = TfB - TfI;
Chris@42 3511 ri[WS(rs, 6)] = TfB + TfI;
Chris@42 3512 TiJ = TfK + TfL;
Chris@42 3513 TiO = TiK + TiN;
Chris@42 3514 ii[WS(rs, 6)] = TiJ + TiO;
Chris@42 3515 ii[WS(rs, 38)] = TiO - TiJ;
Chris@42 3516 }
Chris@42 3517 {
Chris@42 3518 E TfJ, TfM, TiP, TiQ;
Chris@42 3519 TfJ = Tfx - TfA;
Chris@42 3520 TfM = TfK - TfL;
Chris@42 3521 ri[WS(rs, 54)] = TfJ - TfM;
Chris@42 3522 ri[WS(rs, 22)] = TfJ + TfM;
Chris@42 3523 TiP = TfH - TfE;
Chris@42 3524 TiQ = TiN - TiK;
Chris@42 3525 ii[WS(rs, 22)] = TiP + TiQ;
Chris@42 3526 ii[WS(rs, 54)] = TiQ - TiP;
Chris@42 3527 }
Chris@42 3528 }
Chris@42 3529 {
Chris@42 3530 E TfR, Tgj, TfY, Tiu, Tiz, TiF, Tgm, TiE, Tgd, Tgx, Tgh, Tgt, Tg6, Tgw, Tgg;
Chris@42 3531 E Tgq;
Chris@42 3532 {
Chris@42 3533 E TfN, TfQ, Tgk, Tgl;
Chris@42 3534 TfN = TdV + TdY;
Chris@42 3535 TfQ = KP707106781 * (TfO + TfP);
Chris@42 3536 TfR = TfN - TfQ;
Chris@42 3537 Tgj = TfN + TfQ;
Chris@42 3538 {
Chris@42 3539 E TfU, TfX, Tiv, Tiy;
Chris@42 3540 TfU = FNMS(KP382683432, TfT, KP923879532 * TfS);
Chris@42 3541 TfX = FMA(KP923879532, TfV, KP382683432 * TfW);
Chris@42 3542 TfY = TfU - TfX;
Chris@42 3543 Tiu = TfU + TfX;
Chris@42 3544 Tiv = KP707106781 * (Te4 + Te9);
Chris@42 3545 Tiy = Tiw + Tix;
Chris@42 3546 Tiz = Tiv + Tiy;
Chris@42 3547 TiF = Tiy - Tiv;
Chris@42 3548 }
Chris@42 3549 Tgk = FMA(KP382683432, TfS, KP923879532 * TfT);
Chris@42 3550 Tgl = FNMS(KP382683432, TfV, KP923879532 * TfW);
Chris@42 3551 Tgm = Tgk + Tgl;
Chris@42 3552 TiE = Tgl - Tgk;
Chris@42 3553 {
Chris@42 3554 E Tg9, Tgr, Tgc, Tgs, Tg8, Tgb;
Chris@42 3555 Tg8 = KP707106781 * (Tfo + Tfn);
Chris@42 3556 Tg9 = Tg7 - Tg8;
Chris@42 3557 Tgr = Tg7 + Tg8;
Chris@42 3558 Tgb = KP707106781 * (Tfa + Tff);
Chris@42 3559 Tgc = Tga - Tgb;
Chris@42 3560 Tgs = Tga + Tgb;
Chris@42 3561 Tgd = FNMS(KP831469612, Tgc, KP555570233 * Tg9);
Chris@42 3562 Tgx = FMA(KP195090322, Tgr, KP980785280 * Tgs);
Chris@42 3563 Tgh = FMA(KP831469612, Tg9, KP555570233 * Tgc);
Chris@42 3564 Tgt = FNMS(KP195090322, Tgs, KP980785280 * Tgr);
Chris@42 3565 }
Chris@42 3566 {
Chris@42 3567 E Tg2, Tgo, Tg5, Tgp, Tg1, Tg4;
Chris@42 3568 Tg1 = KP707106781 * (TeO + TeJ);
Chris@42 3569 Tg2 = Tg0 - Tg1;
Chris@42 3570 Tgo = Tg0 + Tg1;
Chris@42 3571 Tg4 = KP707106781 * (TeW + TeX);
Chris@42 3572 Tg5 = Tg3 - Tg4;
Chris@42 3573 Tgp = Tg3 + Tg4;
Chris@42 3574 Tg6 = FMA(KP555570233, Tg2, KP831469612 * Tg5);
Chris@42 3575 Tgw = FNMS(KP195090322, Tgo, KP980785280 * Tgp);
Chris@42 3576 Tgg = FNMS(KP831469612, Tg2, KP555570233 * Tg5);
Chris@42 3577 Tgq = FMA(KP980785280, Tgo, KP195090322 * Tgp);
Chris@42 3578 }
Chris@42 3579 }
Chris@42 3580 {
Chris@42 3581 E TfZ, Tge, TiD, TiG;
Chris@42 3582 TfZ = TfR + TfY;
Chris@42 3583 Tge = Tg6 + Tgd;
Chris@42 3584 ri[WS(rs, 42)] = TfZ - Tge;
Chris@42 3585 ri[WS(rs, 10)] = TfZ + Tge;
Chris@42 3586 TiD = Tgg + Tgh;
Chris@42 3587 TiG = TiE + TiF;
Chris@42 3588 ii[WS(rs, 10)] = TiD + TiG;
Chris@42 3589 ii[WS(rs, 42)] = TiG - TiD;
Chris@42 3590 }
Chris@42 3591 {
Chris@42 3592 E Tgf, Tgi, TiH, TiI;
Chris@42 3593 Tgf = TfR - TfY;
Chris@42 3594 Tgi = Tgg - Tgh;
Chris@42 3595 ri[WS(rs, 58)] = Tgf - Tgi;
Chris@42 3596 ri[WS(rs, 26)] = Tgf + Tgi;
Chris@42 3597 TiH = Tgd - Tg6;
Chris@42 3598 TiI = TiF - TiE;
Chris@42 3599 ii[WS(rs, 26)] = TiH + TiI;
Chris@42 3600 ii[WS(rs, 58)] = TiI - TiH;
Chris@42 3601 }
Chris@42 3602 {
Chris@42 3603 E Tgn, Tgu, Tit, TiA;
Chris@42 3604 Tgn = Tgj + Tgm;
Chris@42 3605 Tgu = Tgq + Tgt;
Chris@42 3606 ri[WS(rs, 34)] = Tgn - Tgu;
Chris@42 3607 ri[WS(rs, 2)] = Tgn + Tgu;
Chris@42 3608 Tit = Tgw + Tgx;
Chris@42 3609 TiA = Tiu + Tiz;
Chris@42 3610 ii[WS(rs, 2)] = Tit + TiA;
Chris@42 3611 ii[WS(rs, 34)] = TiA - Tit;
Chris@42 3612 }
Chris@42 3613 {
Chris@42 3614 E Tgv, Tgy, TiB, TiC;
Chris@42 3615 Tgv = Tgj - Tgm;
Chris@42 3616 Tgy = Tgw - Tgx;
Chris@42 3617 ri[WS(rs, 50)] = Tgv - Tgy;
Chris@42 3618 ri[WS(rs, 18)] = Tgv + Tgy;
Chris@42 3619 TiB = Tgt - Tgq;
Chris@42 3620 TiC = Tiz - Tiu;
Chris@42 3621 ii[WS(rs, 18)] = TiB + TiC;
Chris@42 3622 ii[WS(rs, 50)] = TiC - TiB;
Chris@42 3623 }
Chris@42 3624 }
Chris@42 3625 {
Chris@42 3626 E T7V, TaH, TjN, TjT, T8O, TjS, TaK, TjK, T9I, TaU, TaE, TaO, TaB, TaV, TaF;
Chris@42 3627 E TaR;
Chris@42 3628 {
Chris@42 3629 E T7x, T7U, TjL, TjM;
Chris@42 3630 T7x = T7l - T7w;
Chris@42 3631 T7U = T7I - T7T;
Chris@42 3632 T7V = T7x - T7U;
Chris@42 3633 TaH = T7x + T7U;
Chris@42 3634 TjL = TaZ - TaY;
Chris@42 3635 TjM = Tjx - Tjw;
Chris@42 3636 TjN = TjL + TjM;
Chris@42 3637 TjT = TjM - TjL;
Chris@42 3638 }
Chris@42 3639 {
Chris@42 3640 E T8m, TaI, T8N, TaJ;
Chris@42 3641 {
Chris@42 3642 E T8c, T8l, T8D, T8M;
Chris@42 3643 T8c = T80 - T8b;
Chris@42 3644 T8l = T8h - T8k;
Chris@42 3645 T8m = FNMS(KP980785280, T8l, KP195090322 * T8c);
Chris@42 3646 TaI = FMA(KP980785280, T8c, KP195090322 * T8l);
Chris@42 3647 T8D = T8r - T8C;
Chris@42 3648 T8M = T8I - T8L;
Chris@42 3649 T8N = FMA(KP195090322, T8D, KP980785280 * T8M);
Chris@42 3650 TaJ = FNMS(KP980785280, T8D, KP195090322 * T8M);
Chris@42 3651 }
Chris@42 3652 T8O = T8m - T8N;
Chris@42 3653 TjS = TaJ - TaI;
Chris@42 3654 TaK = TaI + TaJ;
Chris@42 3655 TjK = T8m + T8N;
Chris@42 3656 }
Chris@42 3657 {
Chris@42 3658 E T9u, TaM, T9H, TaN;
Chris@42 3659 {
Chris@42 3660 E T96, T9t, T9D, T9G;
Chris@42 3661 T96 = T8U - T95;
Chris@42 3662 T9t = T9h - T9s;
Chris@42 3663 T9u = T96 - T9t;
Chris@42 3664 TaM = T96 + T9t;
Chris@42 3665 T9D = T9z - T9C;
Chris@42 3666 T9G = T9E - T9F;
Chris@42 3667 T9H = T9D - T9G;
Chris@42 3668 TaN = T9D + T9G;
Chris@42 3669 }
Chris@42 3670 T9I = FMA(KP995184726, T9u, KP098017140 * T9H);
Chris@42 3671 TaU = FNMS(KP634393284, TaN, KP773010453 * TaM);
Chris@42 3672 TaE = FNMS(KP995184726, T9H, KP098017140 * T9u);
Chris@42 3673 TaO = FMA(KP634393284, TaM, KP773010453 * TaN);
Chris@42 3674 }
Chris@42 3675 {
Chris@42 3676 E Tan, TaP, TaA, TaQ;
Chris@42 3677 {
Chris@42 3678 E T9Z, Tam, Taw, Taz;
Chris@42 3679 T9Z = T9N - T9Y;
Chris@42 3680 Tam = Taa - Tal;
Chris@42 3681 Tan = T9Z - Tam;
Chris@42 3682 TaP = T9Z + Tam;
Chris@42 3683 Taw = Tas - Tav;
Chris@42 3684 Taz = Tax - Tay;
Chris@42 3685 TaA = Taw - Taz;
Chris@42 3686 TaQ = Taw + Taz;
Chris@42 3687 }
Chris@42 3688 TaB = FNMS(KP995184726, TaA, KP098017140 * Tan);
Chris@42 3689 TaV = FMA(KP773010453, TaQ, KP634393284 * TaP);
Chris@42 3690 TaF = FMA(KP098017140, TaA, KP995184726 * Tan);
Chris@42 3691 TaR = FNMS(KP634393284, TaQ, KP773010453 * TaP);
Chris@42 3692 }
Chris@42 3693 {
Chris@42 3694 E T8P, TaC, TjR, TjU;
Chris@42 3695 T8P = T7V + T8O;
Chris@42 3696 TaC = T9I + TaB;
Chris@42 3697 ri[WS(rs, 47)] = T8P - TaC;
Chris@42 3698 ri[WS(rs, 15)] = T8P + TaC;
Chris@42 3699 TjR = TaE + TaF;
Chris@42 3700 TjU = TjS + TjT;
Chris@42 3701 ii[WS(rs, 15)] = TjR + TjU;
Chris@42 3702 ii[WS(rs, 47)] = TjU - TjR;
Chris@42 3703 }
Chris@42 3704 {
Chris@42 3705 E TaD, TaG, TjV, TjW;
Chris@42 3706 TaD = T7V - T8O;
Chris@42 3707 TaG = TaE - TaF;
Chris@42 3708 ri[WS(rs, 63)] = TaD - TaG;
Chris@42 3709 ri[WS(rs, 31)] = TaD + TaG;
Chris@42 3710 TjV = TaB - T9I;
Chris@42 3711 TjW = TjT - TjS;
Chris@42 3712 ii[WS(rs, 31)] = TjV + TjW;
Chris@42 3713 ii[WS(rs, 63)] = TjW - TjV;
Chris@42 3714 }
Chris@42 3715 {
Chris@42 3716 E TaL, TaS, TjJ, TjO;
Chris@42 3717 TaL = TaH + TaK;
Chris@42 3718 TaS = TaO + TaR;
Chris@42 3719 ri[WS(rs, 39)] = TaL - TaS;
Chris@42 3720 ri[WS(rs, 7)] = TaL + TaS;
Chris@42 3721 TjJ = TaU + TaV;
Chris@42 3722 TjO = TjK + TjN;
Chris@42 3723 ii[WS(rs, 7)] = TjJ + TjO;
Chris@42 3724 ii[WS(rs, 39)] = TjO - TjJ;
Chris@42 3725 }
Chris@42 3726 {
Chris@42 3727 E TaT, TaW, TjP, TjQ;
Chris@42 3728 TaT = TaH - TaK;
Chris@42 3729 TaW = TaU - TaV;
Chris@42 3730 ri[WS(rs, 55)] = TaT - TaW;
Chris@42 3731 ri[WS(rs, 23)] = TaT + TaW;
Chris@42 3732 TjP = TaR - TaO;
Chris@42 3733 TjQ = TjN - TjK;
Chris@42 3734 ii[WS(rs, 23)] = TjP + TjQ;
Chris@42 3735 ii[WS(rs, 55)] = TjQ - TjP;
Chris@42 3736 }
Chris@42 3737 }
Chris@42 3738 {
Chris@42 3739 E TbV, TcT, Tjj, Tjp, Tca, Tjo, TcW, Tjg, Tcu, Td6, TcQ, Td0, TcN, Td7, TcR;
Chris@42 3740 E Td3;
Chris@42 3741 {
Chris@42 3742 E TbN, TbU, Tjh, Tji;
Chris@42 3743 TbN = TbJ - TbM;
Chris@42 3744 TbU = TbQ - TbT;
Chris@42 3745 TbV = TbN - TbU;
Chris@42 3746 TcT = TbN + TbU;
Chris@42 3747 Tjh = Tdb - Tda;
Chris@42 3748 Tji = Tj3 - Tj0;
Chris@42 3749 Tjj = Tjh + Tji;
Chris@42 3750 Tjp = Tji - Tjh;
Chris@42 3751 }
Chris@42 3752 {
Chris@42 3753 E Tc2, TcU, Tc9, TcV;
Chris@42 3754 {
Chris@42 3755 E TbY, Tc1, Tc5, Tc8;
Chris@42 3756 TbY = TbW - TbX;
Chris@42 3757 Tc1 = TbZ - Tc0;
Chris@42 3758 Tc2 = FNMS(KP831469612, Tc1, KP555570233 * TbY);
Chris@42 3759 TcU = FMA(KP555570233, Tc1, KP831469612 * TbY);
Chris@42 3760 Tc5 = Tc3 - Tc4;
Chris@42 3761 Tc8 = Tc6 - Tc7;
Chris@42 3762 Tc9 = FMA(KP831469612, Tc5, KP555570233 * Tc8);
Chris@42 3763 TcV = FNMS(KP831469612, Tc8, KP555570233 * Tc5);
Chris@42 3764 }
Chris@42 3765 Tca = Tc2 - Tc9;
Chris@42 3766 Tjo = TcV - TcU;
Chris@42 3767 TcW = TcU + TcV;
Chris@42 3768 Tjg = Tc2 + Tc9;
Chris@42 3769 }
Chris@42 3770 {
Chris@42 3771 E Tcm, TcY, Tct, TcZ;
Chris@42 3772 {
Chris@42 3773 E Tce, Tcl, Tcp, Tcs;
Chris@42 3774 Tce = Tcc - Tcd;
Chris@42 3775 Tcl = Tch - Tck;
Chris@42 3776 Tcm = Tce - Tcl;
Chris@42 3777 TcY = Tce + Tcl;
Chris@42 3778 Tcp = Tcn - Tco;
Chris@42 3779 Tcs = Tcq - Tcr;
Chris@42 3780 Tct = Tcp - Tcs;
Chris@42 3781 TcZ = Tcp + Tcs;
Chris@42 3782 }
Chris@42 3783 Tcu = FMA(KP956940335, Tcm, KP290284677 * Tct);
Chris@42 3784 Td6 = FNMS(KP471396736, TcZ, KP881921264 * TcY);
Chris@42 3785 TcQ = FNMS(KP956940335, Tct, KP290284677 * Tcm);
Chris@42 3786 Td0 = FMA(KP471396736, TcY, KP881921264 * TcZ);
Chris@42 3787 }
Chris@42 3788 {
Chris@42 3789 E TcF, Td1, TcM, Td2;
Chris@42 3790 {
Chris@42 3791 E Tcx, TcE, TcI, TcL;
Chris@42 3792 Tcx = Tcv - Tcw;
Chris@42 3793 TcE = TcA - TcD;
Chris@42 3794 TcF = Tcx - TcE;
Chris@42 3795 Td1 = Tcx + TcE;
Chris@42 3796 TcI = TcG - TcH;
Chris@42 3797 TcL = TcJ - TcK;
Chris@42 3798 TcM = TcI - TcL;
Chris@42 3799 Td2 = TcI + TcL;
Chris@42 3800 }
Chris@42 3801 TcN = FNMS(KP956940335, TcM, KP290284677 * TcF);
Chris@42 3802 Td7 = FMA(KP881921264, Td2, KP471396736 * Td1);
Chris@42 3803 TcR = FMA(KP290284677, TcM, KP956940335 * TcF);
Chris@42 3804 Td3 = FNMS(KP471396736, Td2, KP881921264 * Td1);
Chris@42 3805 }
Chris@42 3806 {
Chris@42 3807 E Tcb, TcO, Tjn, Tjq;
Chris@42 3808 Tcb = TbV + Tca;
Chris@42 3809 TcO = Tcu + TcN;
Chris@42 3810 ri[WS(rs, 45)] = Tcb - TcO;
Chris@42 3811 ri[WS(rs, 13)] = Tcb + TcO;
Chris@42 3812 Tjn = TcQ + TcR;
Chris@42 3813 Tjq = Tjo + Tjp;
Chris@42 3814 ii[WS(rs, 13)] = Tjn + Tjq;
Chris@42 3815 ii[WS(rs, 45)] = Tjq - Tjn;
Chris@42 3816 }
Chris@42 3817 {
Chris@42 3818 E TcP, TcS, Tjr, Tjs;
Chris@42 3819 TcP = TbV - Tca;
Chris@42 3820 TcS = TcQ - TcR;
Chris@42 3821 ri[WS(rs, 61)] = TcP - TcS;
Chris@42 3822 ri[WS(rs, 29)] = TcP + TcS;
Chris@42 3823 Tjr = TcN - Tcu;
Chris@42 3824 Tjs = Tjp - Tjo;
Chris@42 3825 ii[WS(rs, 29)] = Tjr + Tjs;
Chris@42 3826 ii[WS(rs, 61)] = Tjs - Tjr;
Chris@42 3827 }
Chris@42 3828 {
Chris@42 3829 E TcX, Td4, Tjf, Tjk;
Chris@42 3830 TcX = TcT + TcW;
Chris@42 3831 Td4 = Td0 + Td3;
Chris@42 3832 ri[WS(rs, 37)] = TcX - Td4;
Chris@42 3833 ri[WS(rs, 5)] = TcX + Td4;
Chris@42 3834 Tjf = Td6 + Td7;
Chris@42 3835 Tjk = Tjg + Tjj;
Chris@42 3836 ii[WS(rs, 5)] = Tjf + Tjk;
Chris@42 3837 ii[WS(rs, 37)] = Tjk - Tjf;
Chris@42 3838 }
Chris@42 3839 {
Chris@42 3840 E Td5, Td8, Tjl, Tjm;
Chris@42 3841 Td5 = TcT - TcW;
Chris@42 3842 Td8 = Td6 - Td7;
Chris@42 3843 ri[WS(rs, 53)] = Td5 - Td8;
Chris@42 3844 ri[WS(rs, 21)] = Td5 + Td8;
Chris@42 3845 Tjl = Td3 - Td0;
Chris@42 3846 Tjm = Tjj - Tjg;
Chris@42 3847 ii[WS(rs, 21)] = Tjl + Tjm;
Chris@42 3848 ii[WS(rs, 53)] = Tjm - Tjl;
Chris@42 3849 }
Chris@42 3850 }
Chris@42 3851 {
Chris@42 3852 E Tdd, TdF, Tj5, Tjb, Tdk, Tja, TdI, TiY, Tds, TdS, TdC, TdM, Tdz, TdT, TdD;
Chris@42 3853 E TdP;
Chris@42 3854 {
Chris@42 3855 E Td9, Tdc, TiZ, Tj4;
Chris@42 3856 Td9 = TbJ + TbM;
Chris@42 3857 Tdc = Tda + Tdb;
Chris@42 3858 Tdd = Td9 - Tdc;
Chris@42 3859 TdF = Td9 + Tdc;
Chris@42 3860 TiZ = TbQ + TbT;
Chris@42 3861 Tj4 = Tj0 + Tj3;
Chris@42 3862 Tj5 = TiZ + Tj4;
Chris@42 3863 Tjb = Tj4 - TiZ;
Chris@42 3864 }
Chris@42 3865 {
Chris@42 3866 E Tdg, TdG, Tdj, TdH;
Chris@42 3867 {
Chris@42 3868 E Tde, Tdf, Tdh, Tdi;
Chris@42 3869 Tde = TbW + TbX;
Chris@42 3870 Tdf = TbZ + Tc0;
Chris@42 3871 Tdg = FNMS(KP195090322, Tdf, KP980785280 * Tde);
Chris@42 3872 TdG = FMA(KP980785280, Tdf, KP195090322 * Tde);
Chris@42 3873 Tdh = Tc3 + Tc4;
Chris@42 3874 Tdi = Tc6 + Tc7;
Chris@42 3875 Tdj = FMA(KP195090322, Tdh, KP980785280 * Tdi);
Chris@42 3876 TdH = FNMS(KP195090322, Tdi, KP980785280 * Tdh);
Chris@42 3877 }
Chris@42 3878 Tdk = Tdg - Tdj;
Chris@42 3879 Tja = TdH - TdG;
Chris@42 3880 TdI = TdG + TdH;
Chris@42 3881 TiY = Tdg + Tdj;
Chris@42 3882 }
Chris@42 3883 {
Chris@42 3884 E Tdo, TdK, Tdr, TdL;
Chris@42 3885 {
Chris@42 3886 E Tdm, Tdn, Tdp, Tdq;
Chris@42 3887 Tdm = Tcn + Tco;
Chris@42 3888 Tdn = Tck + Tch;
Chris@42 3889 Tdo = Tdm - Tdn;
Chris@42 3890 TdK = Tdm + Tdn;
Chris@42 3891 Tdp = Tcc + Tcd;
Chris@42 3892 Tdq = Tcq + Tcr;
Chris@42 3893 Tdr = Tdp - Tdq;
Chris@42 3894 TdL = Tdp + Tdq;
Chris@42 3895 }
Chris@42 3896 Tds = FMA(KP634393284, Tdo, KP773010453 * Tdr);
Chris@42 3897 TdS = FNMS(KP098017140, TdK, KP995184726 * TdL);
Chris@42 3898 TdC = FNMS(KP773010453, Tdo, KP634393284 * Tdr);
Chris@42 3899 TdM = FMA(KP995184726, TdK, KP098017140 * TdL);
Chris@42 3900 }
Chris@42 3901 {
Chris@42 3902 E Tdv, TdN, Tdy, TdO;
Chris@42 3903 {
Chris@42 3904 E Tdt, Tdu, Tdw, Tdx;
Chris@42 3905 Tdt = Tcv + Tcw;
Chris@42 3906 Tdu = TcK + TcJ;
Chris@42 3907 Tdv = Tdt - Tdu;
Chris@42 3908 TdN = Tdt + Tdu;
Chris@42 3909 Tdw = TcG + TcH;
Chris@42 3910 Tdx = TcA + TcD;
Chris@42 3911 Tdy = Tdw - Tdx;
Chris@42 3912 TdO = Tdw + Tdx;
Chris@42 3913 }
Chris@42 3914 Tdz = FNMS(KP773010453, Tdy, KP634393284 * Tdv);
Chris@42 3915 TdT = FMA(KP098017140, TdN, KP995184726 * TdO);
Chris@42 3916 TdD = FMA(KP773010453, Tdv, KP634393284 * Tdy);
Chris@42 3917 TdP = FNMS(KP098017140, TdO, KP995184726 * TdN);
Chris@42 3918 }
Chris@42 3919 {
Chris@42 3920 E Tdl, TdA, Tj9, Tjc;
Chris@42 3921 Tdl = Tdd + Tdk;
Chris@42 3922 TdA = Tds + Tdz;
Chris@42 3923 ri[WS(rs, 41)] = Tdl - TdA;
Chris@42 3924 ri[WS(rs, 9)] = Tdl + TdA;
Chris@42 3925 Tj9 = TdC + TdD;
Chris@42 3926 Tjc = Tja + Tjb;
Chris@42 3927 ii[WS(rs, 9)] = Tj9 + Tjc;
Chris@42 3928 ii[WS(rs, 41)] = Tjc - Tj9;
Chris@42 3929 }
Chris@42 3930 {
Chris@42 3931 E TdB, TdE, Tjd, Tje;
Chris@42 3932 TdB = Tdd - Tdk;
Chris@42 3933 TdE = TdC - TdD;
Chris@42 3934 ri[WS(rs, 57)] = TdB - TdE;
Chris@42 3935 ri[WS(rs, 25)] = TdB + TdE;
Chris@42 3936 Tjd = Tdz - Tds;
Chris@42 3937 Tje = Tjb - Tja;
Chris@42 3938 ii[WS(rs, 25)] = Tjd + Tje;
Chris@42 3939 ii[WS(rs, 57)] = Tje - Tjd;
Chris@42 3940 }
Chris@42 3941 {
Chris@42 3942 E TdJ, TdQ, TiX, Tj6;
Chris@42 3943 TdJ = TdF + TdI;
Chris@42 3944 TdQ = TdM + TdP;
Chris@42 3945 ri[WS(rs, 33)] = TdJ - TdQ;
Chris@42 3946 ri[WS(rs, 1)] = TdJ + TdQ;
Chris@42 3947 TiX = TdS + TdT;
Chris@42 3948 Tj6 = TiY + Tj5;
Chris@42 3949 ii[WS(rs, 1)] = TiX + Tj6;
Chris@42 3950 ii[WS(rs, 33)] = Tj6 - TiX;
Chris@42 3951 }
Chris@42 3952 {
Chris@42 3953 E TdR, TdU, Tj7, Tj8;
Chris@42 3954 TdR = TdF - TdI;
Chris@42 3955 TdU = TdS - TdT;
Chris@42 3956 ri[WS(rs, 49)] = TdR - TdU;
Chris@42 3957 ri[WS(rs, 17)] = TdR + TdU;
Chris@42 3958 Tj7 = TdP - TdM;
Chris@42 3959 Tj8 = Tj5 - TiY;
Chris@42 3960 ii[WS(rs, 17)] = Tj7 + Tj8;
Chris@42 3961 ii[WS(rs, 49)] = Tj8 - Tj7;
Chris@42 3962 }
Chris@42 3963 }
Chris@42 3964 {
Chris@42 3965 E Tb1, Tbt, Tjz, TjF, Tb8, TjE, Tbw, Tju, Tbg, TbG, Tbq, TbA, Tbn, TbH, Tbr;
Chris@42 3966 E TbD;
Chris@42 3967 {
Chris@42 3968 E TaX, Tb0, Tjv, Tjy;
Chris@42 3969 TaX = T7l + T7w;
Chris@42 3970 Tb0 = TaY + TaZ;
Chris@42 3971 Tb1 = TaX - Tb0;
Chris@42 3972 Tbt = TaX + Tb0;
Chris@42 3973 Tjv = T7I + T7T;
Chris@42 3974 Tjy = Tjw + Tjx;
Chris@42 3975 Tjz = Tjv + Tjy;
Chris@42 3976 TjF = Tjy - Tjv;
Chris@42 3977 }
Chris@42 3978 {
Chris@42 3979 E Tb4, Tbu, Tb7, Tbv;
Chris@42 3980 {
Chris@42 3981 E Tb2, Tb3, Tb5, Tb6;
Chris@42 3982 Tb2 = T80 + T8b;
Chris@42 3983 Tb3 = T8h + T8k;
Chris@42 3984 Tb4 = FNMS(KP555570233, Tb3, KP831469612 * Tb2);
Chris@42 3985 Tbu = FMA(KP555570233, Tb2, KP831469612 * Tb3);
Chris@42 3986 Tb5 = T8r + T8C;
Chris@42 3987 Tb6 = T8I + T8L;
Chris@42 3988 Tb7 = FMA(KP831469612, Tb5, KP555570233 * Tb6);
Chris@42 3989 Tbv = FNMS(KP555570233, Tb5, KP831469612 * Tb6);
Chris@42 3990 }
Chris@42 3991 Tb8 = Tb4 - Tb7;
Chris@42 3992 TjE = Tbv - Tbu;
Chris@42 3993 Tbw = Tbu + Tbv;
Chris@42 3994 Tju = Tb4 + Tb7;
Chris@42 3995 }
Chris@42 3996 {
Chris@42 3997 E Tbc, Tby, Tbf, Tbz;
Chris@42 3998 {
Chris@42 3999 E Tba, Tbb, Tbd, Tbe;
Chris@42 4000 Tba = T9z + T9C;
Chris@42 4001 Tbb = T9s + T9h;
Chris@42 4002 Tbc = Tba - Tbb;
Chris@42 4003 Tby = Tba + Tbb;
Chris@42 4004 Tbd = T8U + T95;
Chris@42 4005 Tbe = T9E + T9F;
Chris@42 4006 Tbf = Tbd - Tbe;
Chris@42 4007 Tbz = Tbd + Tbe;
Chris@42 4008 }
Chris@42 4009 Tbg = FMA(KP471396736, Tbc, KP881921264 * Tbf);
Chris@42 4010 TbG = FNMS(KP290284677, Tby, KP956940335 * Tbz);
Chris@42 4011 Tbq = FNMS(KP881921264, Tbc, KP471396736 * Tbf);
Chris@42 4012 TbA = FMA(KP956940335, Tby, KP290284677 * Tbz);
Chris@42 4013 }
Chris@42 4014 {
Chris@42 4015 E Tbj, TbB, Tbm, TbC;
Chris@42 4016 {
Chris@42 4017 E Tbh, Tbi, Tbk, Tbl;
Chris@42 4018 Tbh = T9N + T9Y;
Chris@42 4019 Tbi = Tay + Tax;
Chris@42 4020 Tbj = Tbh - Tbi;
Chris@42 4021 TbB = Tbh + Tbi;
Chris@42 4022 Tbk = Tas + Tav;
Chris@42 4023 Tbl = Taa + Tal;
Chris@42 4024 Tbm = Tbk - Tbl;
Chris@42 4025 TbC = Tbk + Tbl;
Chris@42 4026 }
Chris@42 4027 Tbn = FNMS(KP881921264, Tbm, KP471396736 * Tbj);
Chris@42 4028 TbH = FMA(KP290284677, TbB, KP956940335 * TbC);
Chris@42 4029 Tbr = FMA(KP881921264, Tbj, KP471396736 * Tbm);
Chris@42 4030 TbD = FNMS(KP290284677, TbC, KP956940335 * TbB);
Chris@42 4031 }
Chris@42 4032 {
Chris@42 4033 E Tb9, Tbo, TjD, TjG;
Chris@42 4034 Tb9 = Tb1 + Tb8;
Chris@42 4035 Tbo = Tbg + Tbn;
Chris@42 4036 ri[WS(rs, 43)] = Tb9 - Tbo;
Chris@42 4037 ri[WS(rs, 11)] = Tb9 + Tbo;
Chris@42 4038 TjD = Tbq + Tbr;
Chris@42 4039 TjG = TjE + TjF;
Chris@42 4040 ii[WS(rs, 11)] = TjD + TjG;
Chris@42 4041 ii[WS(rs, 43)] = TjG - TjD;
Chris@42 4042 }
Chris@42 4043 {
Chris@42 4044 E Tbp, Tbs, TjH, TjI;
Chris@42 4045 Tbp = Tb1 - Tb8;
Chris@42 4046 Tbs = Tbq - Tbr;
Chris@42 4047 ri[WS(rs, 59)] = Tbp - Tbs;
Chris@42 4048 ri[WS(rs, 27)] = Tbp + Tbs;
Chris@42 4049 TjH = Tbn - Tbg;
Chris@42 4050 TjI = TjF - TjE;
Chris@42 4051 ii[WS(rs, 27)] = TjH + TjI;
Chris@42 4052 ii[WS(rs, 59)] = TjI - TjH;
Chris@42 4053 }
Chris@42 4054 {
Chris@42 4055 E Tbx, TbE, Tjt, TjA;
Chris@42 4056 Tbx = Tbt + Tbw;
Chris@42 4057 TbE = TbA + TbD;
Chris@42 4058 ri[WS(rs, 35)] = Tbx - TbE;
Chris@42 4059 ri[WS(rs, 3)] = Tbx + TbE;
Chris@42 4060 Tjt = TbG + TbH;
Chris@42 4061 TjA = Tju + Tjz;
Chris@42 4062 ii[WS(rs, 3)] = Tjt + TjA;
Chris@42 4063 ii[WS(rs, 35)] = TjA - Tjt;
Chris@42 4064 }
Chris@42 4065 {
Chris@42 4066 E TbF, TbI, TjB, TjC;
Chris@42 4067 TbF = Tbt - Tbw;
Chris@42 4068 TbI = TbG - TbH;
Chris@42 4069 ri[WS(rs, 51)] = TbF - TbI;
Chris@42 4070 ri[WS(rs, 19)] = TbF + TbI;
Chris@42 4071 TjB = TbD - TbA;
Chris@42 4072 TjC = Tjz - Tju;
Chris@42 4073 ii[WS(rs, 19)] = TjB + TjC;
Chris@42 4074 ii[WS(rs, 51)] = TjC - TjB;
Chris@42 4075 }
Chris@42 4076 }
Chris@42 4077 }
Chris@42 4078 }
Chris@42 4079 }
Chris@42 4080 }
Chris@42 4081
Chris@42 4082 static const tw_instr twinstr[] = {
Chris@42 4083 {TW_CEXP, 0, 1},
Chris@42 4084 {TW_CEXP, 0, 3},
Chris@42 4085 {TW_CEXP, 0, 9},
Chris@42 4086 {TW_CEXP, 0, 27},
Chris@42 4087 {TW_CEXP, 0, 63},
Chris@42 4088 {TW_NEXT, 1, 0}
Chris@42 4089 };
Chris@42 4090
Chris@42 4091 static const ct_desc desc = { 64, "t2_64", twinstr, &GENUS, {880, 386, 274, 0}, 0, 0, 0 };
Chris@42 4092
Chris@42 4093 void X(codelet_t2_64) (planner *p) {
Chris@42 4094 X(kdft_dit_register) (p, t2_64, &desc);
Chris@42 4095 }
Chris@42 4096 #endif /* HAVE_FMA */