annotate src/fftw-3.3.3/dft/simd/common/n2sv_64.c @ 148:b4bfdf10c4b3

Update Win64 capnp builds to v0.6
author Chris Cannam <cannam@all-day-breakfast.com>
date Mon, 22 May 2017 18:56:49 +0100
parents 89f5e221ed7b
children
rev   line source
cannam@95 1 /*
cannam@95 2 * Copyright (c) 2003, 2007-11 Matteo Frigo
cannam@95 3 * Copyright (c) 2003, 2007-11 Massachusetts Institute of Technology
cannam@95 4 *
cannam@95 5 * This program is free software; you can redistribute it and/or modify
cannam@95 6 * it under the terms of the GNU General Public License as published by
cannam@95 7 * the Free Software Foundation; either version 2 of the License, or
cannam@95 8 * (at your option) any later version.
cannam@95 9 *
cannam@95 10 * This program is distributed in the hope that it will be useful,
cannam@95 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
cannam@95 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
cannam@95 13 * GNU General Public License for more details.
cannam@95 14 *
cannam@95 15 * You should have received a copy of the GNU General Public License
cannam@95 16 * along with this program; if not, write to the Free Software
cannam@95 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
cannam@95 18 *
cannam@95 19 */
cannam@95 20
cannam@95 21 /* This file was automatically generated --- DO NOT EDIT */
cannam@95 22 /* Generated on Sun Nov 25 07:37:57 EST 2012 */
cannam@95 23
cannam@95 24 #include "codelet-dft.h"
cannam@95 25
cannam@95 26 #ifdef HAVE_FMA
cannam@95 27
cannam@95 28 /* Generated by: ../../../genfft/gen_notw.native -fma -reorder-insns -schedule-for-pipeline -simd -compact -variables 4 -pipeline-latency 8 -n 64 -name n2sv_64 -with-ostride 1 -include n2s.h -store-multiple 4 */
cannam@95 29
cannam@95 30 /*
cannam@95 31 * This function contains 912 FP additions, 392 FP multiplications,
cannam@95 32 * (or, 520 additions, 0 multiplications, 392 fused multiply/add),
cannam@95 33 * 310 stack variables, 15 constants, and 288 memory accesses
cannam@95 34 */
cannam@95 35 #include "n2s.h"
cannam@95 36
cannam@95 37 static void n2sv_64(const R *ri, const R *ii, R *ro, R *io, stride is, stride os, INT v, INT ivs, INT ovs)
cannam@95 38 {
cannam@95 39 DVK(KP881921264, +0.881921264348355029712756863660388349508442621);
cannam@95 40 DVK(KP956940335, +0.956940335732208864935797886980269969482849206);
cannam@95 41 DVK(KP534511135, +0.534511135950791641089685961295362908582039528);
cannam@95 42 DVK(KP303346683, +0.303346683607342391675883946941299872384187453);
cannam@95 43 DVK(KP773010453, +0.773010453362736960810906609758469800971041293);
cannam@95 44 DVK(KP995184726, +0.995184726672196886244836953109479921575474869);
cannam@95 45 DVK(KP820678790, +0.820678790828660330972281985331011598767386482);
cannam@95 46 DVK(KP098491403, +0.098491403357164253077197521291327432293052451);
cannam@95 47 DVK(KP831469612, +0.831469612302545237078788377617905756738560812);
cannam@95 48 DVK(KP980785280, +0.980785280403230449126182236134239036973933731);
cannam@95 49 DVK(KP668178637, +0.668178637919298919997757686523080761552472251);
cannam@95 50 DVK(KP198912367, +0.198912367379658006911597622644676228597850501);
cannam@95 51 DVK(KP923879532, +0.923879532511286756128183189396788286822416626);
cannam@95 52 DVK(KP707106781, +0.707106781186547524400844362104849039284835938);
cannam@95 53 DVK(KP414213562, +0.414213562373095048801688724209698078569671875);
cannam@95 54 {
cannam@95 55 INT i;
cannam@95 56 for (i = v; i > 0; i = i - (2 * VL), ri = ri + ((2 * VL) * ivs), ii = ii + ((2 * VL) * ivs), ro = ro + ((2 * VL) * ovs), io = io + ((2 * VL) * ovs), MAKE_VOLATILE_STRIDE(256, is), MAKE_VOLATILE_STRIDE(256, os)) {
cannam@95 57 V TeJ, TeK, TeP, TeQ, TfH, TfI, TfJ, TfK, Tgj, Tgk, Tgv, Tgw, T9a, T99, T9e;
cannam@95 58 V T9b;
cannam@95 59 {
cannam@95 60 V T7B, T37, T5Z, T8F, TbB, TcB, Tf, Td9, T62, T7C, T2i, TdH, Tcb, Tah, T8G;
cannam@95 61 V T3e, Tak, TbC, T65, T3m, TdI, Tu, Tda, T2x, TbD, Tan, T8I, T7G, T8J, T7J;
cannam@95 62 V T64, T3t, Tas, Tce, TK, Tdd, Tav, Tcf, Tdc, T2N, T3G, T6G, T9k, T7O, T9l;
cannam@95 63 V T7R, T6H, T3N, T1L, TdA, Tdx, Teo, Tbs, Tct, T5Q, T6V, T8y, T9z, T5j, T6Y;
cannam@95 64 V Tbb, Tcw, T8n, T9C, Tch, Taz, Tdf, TZ, Tdg, T32, Tci, TaC, T6J, T3Z, T9n;
cannam@95 65 V T7V, T9o, T7Y, T6K, T46, Tdp, T1g, Tej, Tdm, Tcm, Tb1, Tcp, TaK, T6O, T4X;
cannam@95 66 V T9s, T8f, T6R, T4q, T9v, T84, Tdn, T1v, Tek, Tds, Tcn, TaV, Tcq, Tb4, T9t;
cannam@95 67 V T8b, T9w, T8i, T6S, T50, T6P, T4N, T5k, T1V, T1S, TdB, Tbi, T5s, Tbt, Tbg;
cannam@95 68 V T5F, T5R, T5p, T1Y, Tbj, T5n, T8z, T8q;
cannam@95 69 {
cannam@95 70 V Tba, T57, T8l, Tb7, T5M, T8w, T8m, T5P, T8x, T5i;
cannam@95 71 {
cannam@95 72 V T2p, T7F, T7E, Tal, T2w, Tam, T3s, T7H, T7I, T3p, T3d, T3a;
cannam@95 73 {
cannam@95 74 V T8, T35, T3, T5Y, T26, T5X, T6, T36, T29, T9, T2b, T2c, Tb, Tc, T2e;
cannam@95 75 V T2f;
cannam@95 76 {
cannam@95 77 V T1, T2, T24, T25, T4, T5, T27, T28;
cannam@95 78 T1 = LD(&(ri[0]), ivs, &(ri[0]));
cannam@95 79 T2 = LD(&(ri[WS(is, 32)]), ivs, &(ri[0]));
cannam@95 80 T24 = LD(&(ii[0]), ivs, &(ii[0]));
cannam@95 81 T25 = LD(&(ii[WS(is, 32)]), ivs, &(ii[0]));
cannam@95 82 T4 = LD(&(ri[WS(is, 16)]), ivs, &(ri[0]));
cannam@95 83 T5 = LD(&(ri[WS(is, 48)]), ivs, &(ri[0]));
cannam@95 84 T27 = LD(&(ii[WS(is, 16)]), ivs, &(ii[0]));
cannam@95 85 T28 = LD(&(ii[WS(is, 48)]), ivs, &(ii[0]));
cannam@95 86 T8 = LD(&(ri[WS(is, 8)]), ivs, &(ri[0]));
cannam@95 87 T35 = VSUB(T1, T2);
cannam@95 88 T3 = VADD(T1, T2);
cannam@95 89 T5Y = VSUB(T24, T25);
cannam@95 90 T26 = VADD(T24, T25);
cannam@95 91 T5X = VSUB(T4, T5);
cannam@95 92 T6 = VADD(T4, T5);
cannam@95 93 T36 = VSUB(T27, T28);
cannam@95 94 T29 = VADD(T27, T28);
cannam@95 95 T9 = LD(&(ri[WS(is, 40)]), ivs, &(ri[0]));
cannam@95 96 T2b = LD(&(ii[WS(is, 8)]), ivs, &(ii[0]));
cannam@95 97 T2c = LD(&(ii[WS(is, 40)]), ivs, &(ii[0]));
cannam@95 98 Tb = LD(&(ri[WS(is, 56)]), ivs, &(ri[0]));
cannam@95 99 Tc = LD(&(ri[WS(is, 24)]), ivs, &(ri[0]));
cannam@95 100 T2e = LD(&(ii[WS(is, 56)]), ivs, &(ii[0]));
cannam@95 101 T2f = LD(&(ii[WS(is, 24)]), ivs, &(ii[0]));
cannam@95 102 }
cannam@95 103 {
cannam@95 104 V T39, Ta, T38, T2d, T3b, Td, T3c, T2g, Taf, T7;
cannam@95 105 T7B = VADD(T35, T36);
cannam@95 106 T37 = VSUB(T35, T36);
cannam@95 107 T39 = VSUB(T8, T9);
cannam@95 108 Ta = VADD(T8, T9);
cannam@95 109 T38 = VSUB(T2b, T2c);
cannam@95 110 T2d = VADD(T2b, T2c);
cannam@95 111 T3b = VSUB(Tb, Tc);
cannam@95 112 Td = VADD(Tb, Tc);
cannam@95 113 T3c = VSUB(T2e, T2f);
cannam@95 114 T2g = VADD(T2e, T2f);
cannam@95 115 T5Z = VADD(T5X, T5Y);
cannam@95 116 T8F = VSUB(T5Y, T5X);
cannam@95 117 Taf = VSUB(T3, T6);
cannam@95 118 T7 = VADD(T3, T6);
cannam@95 119 {
cannam@95 120 V TbA, T2a, Te, Tbz, T60, T61, T2h, Tag;
cannam@95 121 TbA = VSUB(T26, T29);
cannam@95 122 T2a = VADD(T26, T29);
cannam@95 123 Te = VADD(Ta, Td);
cannam@95 124 Tbz = VSUB(Td, Ta);
cannam@95 125 T3d = VADD(T3b, T3c);
cannam@95 126 T60 = VSUB(T3b, T3c);
cannam@95 127 T61 = VADD(T39, T38);
cannam@95 128 T3a = VSUB(T38, T39);
cannam@95 129 T2h = VADD(T2d, T2g);
cannam@95 130 Tag = VSUB(T2d, T2g);
cannam@95 131 TbB = VADD(Tbz, TbA);
cannam@95 132 TcB = VSUB(TbA, Tbz);
cannam@95 133 Tf = VADD(T7, Te);
cannam@95 134 Td9 = VSUB(T7, Te);
cannam@95 135 T62 = VSUB(T60, T61);
cannam@95 136 T7C = VADD(T61, T60);
cannam@95 137 T2i = VADD(T2a, T2h);
cannam@95 138 TdH = VSUB(T2a, T2h);
cannam@95 139 Tcb = VSUB(Taf, Tag);
cannam@95 140 Tah = VADD(Taf, Tag);
cannam@95 141 }
cannam@95 142 }
cannam@95 143 }
cannam@95 144 {
cannam@95 145 V T3j, Ti, T3h, T2l, T3g, Tl, T2t, T3k, T2o, T3q, Tp, T3o, T2s, T3n, Ts;
cannam@95 146 V T2u, T2m, T2n;
cannam@95 147 {
cannam@95 148 V Tg, Th, T2j, T2k, Tj, Tk;
cannam@95 149 Tg = LD(&(ri[WS(is, 4)]), ivs, &(ri[0]));
cannam@95 150 Th = LD(&(ri[WS(is, 36)]), ivs, &(ri[0]));
cannam@95 151 T2j = LD(&(ii[WS(is, 4)]), ivs, &(ii[0]));
cannam@95 152 T2k = LD(&(ii[WS(is, 36)]), ivs, &(ii[0]));
cannam@95 153 Tj = LD(&(ri[WS(is, 20)]), ivs, &(ri[0]));
cannam@95 154 Tk = LD(&(ri[WS(is, 52)]), ivs, &(ri[0]));
cannam@95 155 T2m = LD(&(ii[WS(is, 20)]), ivs, &(ii[0]));
cannam@95 156 T8G = VADD(T3a, T3d);
cannam@95 157 T3e = VSUB(T3a, T3d);
cannam@95 158 T3j = VSUB(Tg, Th);
cannam@95 159 Ti = VADD(Tg, Th);
cannam@95 160 T3h = VSUB(T2j, T2k);
cannam@95 161 T2l = VADD(T2j, T2k);
cannam@95 162 T3g = VSUB(Tj, Tk);
cannam@95 163 Tl = VADD(Tj, Tk);
cannam@95 164 T2n = LD(&(ii[WS(is, 52)]), ivs, &(ii[0]));
cannam@95 165 }
cannam@95 166 {
cannam@95 167 V Tn, To, T2q, T2r, Tq, Tr;
cannam@95 168 Tn = LD(&(ri[WS(is, 60)]), ivs, &(ri[0]));
cannam@95 169 To = LD(&(ri[WS(is, 28)]), ivs, &(ri[0]));
cannam@95 170 T2q = LD(&(ii[WS(is, 60)]), ivs, &(ii[0]));
cannam@95 171 T2r = LD(&(ii[WS(is, 28)]), ivs, &(ii[0]));
cannam@95 172 Tq = LD(&(ri[WS(is, 12)]), ivs, &(ri[0]));
cannam@95 173 Tr = LD(&(ri[WS(is, 44)]), ivs, &(ri[0]));
cannam@95 174 T2t = LD(&(ii[WS(is, 12)]), ivs, &(ii[0]));
cannam@95 175 T3k = VSUB(T2m, T2n);
cannam@95 176 T2o = VADD(T2m, T2n);
cannam@95 177 T3q = VSUB(Tn, To);
cannam@95 178 Tp = VADD(Tn, To);
cannam@95 179 T3o = VSUB(T2q, T2r);
cannam@95 180 T2s = VADD(T2q, T2r);
cannam@95 181 T3n = VSUB(Tq, Tr);
cannam@95 182 Ts = VADD(Tq, Tr);
cannam@95 183 T2u = LD(&(ii[WS(is, 44)]), ivs, &(ii[0]));
cannam@95 184 }
cannam@95 185 {
cannam@95 186 V Tai, Tm, Taj, T3r;
cannam@95 187 Tai = VSUB(Ti, Tl);
cannam@95 188 Tm = VADD(Ti, Tl);
cannam@95 189 T2p = VADD(T2l, T2o);
cannam@95 190 Taj = VSUB(T2l, T2o);
cannam@95 191 {
cannam@95 192 V T3i, T3l, Tt, T2v;
cannam@95 193 T7F = VSUB(T3h, T3g);
cannam@95 194 T3i = VADD(T3g, T3h);
cannam@95 195 T3l = VSUB(T3j, T3k);
cannam@95 196 T7E = VADD(T3j, T3k);
cannam@95 197 Tt = VADD(Tp, Ts);
cannam@95 198 Tal = VSUB(Tp, Ts);
cannam@95 199 T2v = VADD(T2t, T2u);
cannam@95 200 T3r = VSUB(T2t, T2u);
cannam@95 201 Tak = VADD(Tai, Taj);
cannam@95 202 TbC = VSUB(Taj, Tai);
cannam@95 203 T65 = VFNMS(LDK(KP414213562), T3i, T3l);
cannam@95 204 T3m = VFMA(LDK(KP414213562), T3l, T3i);
cannam@95 205 TdI = VSUB(Tt, Tm);
cannam@95 206 Tu = VADD(Tm, Tt);
cannam@95 207 T2w = VADD(T2s, T2v);
cannam@95 208 Tam = VSUB(T2s, T2v);
cannam@95 209 }
cannam@95 210 T3s = VSUB(T3q, T3r);
cannam@95 211 T7H = VADD(T3q, T3r);
cannam@95 212 T7I = VSUB(T3o, T3n);
cannam@95 213 T3p = VADD(T3n, T3o);
cannam@95 214 }
cannam@95 215 }
cannam@95 216 {
cannam@95 217 V T7M, T7Q, T7N, T3M, T3J, T7P;
cannam@95 218 {
cannam@95 219 V TG, T3H, Ty, T3x, T2B, T3w, TB, T3I, T2E, TH, T2J, T2K, TD, TE, T2G;
cannam@95 220 V T2H;
cannam@95 221 {
cannam@95 222 V Tw, Tx, T2z, T2A, Tz, TA, T2C, T2D;
cannam@95 223 Tw = LD(&(ri[WS(is, 2)]), ivs, &(ri[0]));
cannam@95 224 Tda = VSUB(T2p, T2w);
cannam@95 225 T2x = VADD(T2p, T2w);
cannam@95 226 TbD = VADD(Tal, Tam);
cannam@95 227 Tan = VSUB(Tal, Tam);
cannam@95 228 T8I = VFNMS(LDK(KP414213562), T7E, T7F);
cannam@95 229 T7G = VFMA(LDK(KP414213562), T7F, T7E);
cannam@95 230 T8J = VFMA(LDK(KP414213562), T7H, T7I);
cannam@95 231 T7J = VFNMS(LDK(KP414213562), T7I, T7H);
cannam@95 232 T64 = VFMA(LDK(KP414213562), T3p, T3s);
cannam@95 233 T3t = VFNMS(LDK(KP414213562), T3s, T3p);
cannam@95 234 Tx = LD(&(ri[WS(is, 34)]), ivs, &(ri[0]));
cannam@95 235 T2z = LD(&(ii[WS(is, 2)]), ivs, &(ii[0]));
cannam@95 236 T2A = LD(&(ii[WS(is, 34)]), ivs, &(ii[0]));
cannam@95 237 Tz = LD(&(ri[WS(is, 18)]), ivs, &(ri[0]));
cannam@95 238 TA = LD(&(ri[WS(is, 50)]), ivs, &(ri[0]));
cannam@95 239 T2C = LD(&(ii[WS(is, 18)]), ivs, &(ii[0]));
cannam@95 240 T2D = LD(&(ii[WS(is, 50)]), ivs, &(ii[0]));
cannam@95 241 TG = LD(&(ri[WS(is, 58)]), ivs, &(ri[0]));
cannam@95 242 T3H = VSUB(Tw, Tx);
cannam@95 243 Ty = VADD(Tw, Tx);
cannam@95 244 T3x = VSUB(T2z, T2A);
cannam@95 245 T2B = VADD(T2z, T2A);
cannam@95 246 T3w = VSUB(Tz, TA);
cannam@95 247 TB = VADD(Tz, TA);
cannam@95 248 T3I = VSUB(T2C, T2D);
cannam@95 249 T2E = VADD(T2C, T2D);
cannam@95 250 TH = LD(&(ri[WS(is, 26)]), ivs, &(ri[0]));
cannam@95 251 T2J = LD(&(ii[WS(is, 58)]), ivs, &(ii[0]));
cannam@95 252 T2K = LD(&(ii[WS(is, 26)]), ivs, &(ii[0]));
cannam@95 253 TD = LD(&(ri[WS(is, 10)]), ivs, &(ri[0]));
cannam@95 254 TE = LD(&(ri[WS(is, 42)]), ivs, &(ri[0]));
cannam@95 255 T2G = LD(&(ii[WS(is, 10)]), ivs, &(ii[0]));
cannam@95 256 T2H = LD(&(ii[WS(is, 42)]), ivs, &(ii[0]));
cannam@95 257 }
cannam@95 258 {
cannam@95 259 V Tat, TC, Tar, T2F, T3K, T3E, TJ, Taq, T2M, Tau, T3B, T3L, T3y, T3F;
cannam@95 260 {
cannam@95 261 V TI, T3C, T2L, T3D, TF, T3z, T2I, T3A;
cannam@95 262 Tat = VSUB(Ty, TB);
cannam@95 263 TC = VADD(Ty, TB);
cannam@95 264 TI = VADD(TG, TH);
cannam@95 265 T3C = VSUB(TG, TH);
cannam@95 266 T2L = VADD(T2J, T2K);
cannam@95 267 T3D = VSUB(T2J, T2K);
cannam@95 268 TF = VADD(TD, TE);
cannam@95 269 T3z = VSUB(TD, TE);
cannam@95 270 T2I = VADD(T2G, T2H);
cannam@95 271 T3A = VSUB(T2G, T2H);
cannam@95 272 Tar = VSUB(T2B, T2E);
cannam@95 273 T2F = VADD(T2B, T2E);
cannam@95 274 T3K = VADD(T3C, T3D);
cannam@95 275 T3E = VSUB(T3C, T3D);
cannam@95 276 TJ = VADD(TF, TI);
cannam@95 277 Taq = VSUB(TI, TF);
cannam@95 278 T2M = VADD(T2I, T2L);
cannam@95 279 Tau = VSUB(T2I, T2L);
cannam@95 280 T3B = VADD(T3z, T3A);
cannam@95 281 T3L = VSUB(T3A, T3z);
cannam@95 282 }
cannam@95 283 T7M = VSUB(T3x, T3w);
cannam@95 284 T3y = VADD(T3w, T3x);
cannam@95 285 Tas = VADD(Taq, Tar);
cannam@95 286 Tce = VSUB(Tar, Taq);
cannam@95 287 TK = VADD(TC, TJ);
cannam@95 288 Tdd = VSUB(TC, TJ);
cannam@95 289 Tav = VADD(Tat, Tau);
cannam@95 290 Tcf = VSUB(Tat, Tau);
cannam@95 291 T7Q = VADD(T3B, T3E);
cannam@95 292 T3F = VSUB(T3B, T3E);
cannam@95 293 Tdc = VSUB(T2F, T2M);
cannam@95 294 T2N = VADD(T2F, T2M);
cannam@95 295 T7N = VADD(T3L, T3K);
cannam@95 296 T3M = VSUB(T3K, T3L);
cannam@95 297 T3J = VSUB(T3H, T3I);
cannam@95 298 T7P = VADD(T3H, T3I);
cannam@95 299 T3G = VFNMS(LDK(KP707106781), T3F, T3y);
cannam@95 300 T6G = VFMA(LDK(KP707106781), T3F, T3y);
cannam@95 301 }
cannam@95 302 }
cannam@95 303 {
cannam@95 304 V T1H, T5I, T1z, Tb8, T56, T53, T1C, Tb9, T5L, T1I, T5e, T5f, T1E, T1F, T59;
cannam@95 305 V T5a;
cannam@95 306 {
cannam@95 307 V T1x, T1y, T54, T55, T1A, T1B, T5J, T5K;
cannam@95 308 T1x = LD(&(ri[WS(is, 63)]), ivs, &(ri[WS(is, 1)]));
cannam@95 309 T9k = VFNMS(LDK(KP707106781), T7N, T7M);
cannam@95 310 T7O = VFMA(LDK(KP707106781), T7N, T7M);
cannam@95 311 T9l = VFNMS(LDK(KP707106781), T7Q, T7P);
cannam@95 312 T7R = VFMA(LDK(KP707106781), T7Q, T7P);
cannam@95 313 T6H = VFMA(LDK(KP707106781), T3M, T3J);
cannam@95 314 T3N = VFNMS(LDK(KP707106781), T3M, T3J);
cannam@95 315 T1y = LD(&(ri[WS(is, 31)]), ivs, &(ri[WS(is, 1)]));
cannam@95 316 T54 = LD(&(ii[WS(is, 63)]), ivs, &(ii[WS(is, 1)]));
cannam@95 317 T55 = LD(&(ii[WS(is, 31)]), ivs, &(ii[WS(is, 1)]));
cannam@95 318 T1A = LD(&(ri[WS(is, 15)]), ivs, &(ri[WS(is, 1)]));
cannam@95 319 T1B = LD(&(ri[WS(is, 47)]), ivs, &(ri[WS(is, 1)]));
cannam@95 320 T5J = LD(&(ii[WS(is, 15)]), ivs, &(ii[WS(is, 1)]));
cannam@95 321 T5K = LD(&(ii[WS(is, 47)]), ivs, &(ii[WS(is, 1)]));
cannam@95 322 T1H = LD(&(ri[WS(is, 55)]), ivs, &(ri[WS(is, 1)]));
cannam@95 323 T5I = VSUB(T1x, T1y);
cannam@95 324 T1z = VADD(T1x, T1y);
cannam@95 325 Tb8 = VADD(T54, T55);
cannam@95 326 T56 = VSUB(T54, T55);
cannam@95 327 T53 = VSUB(T1A, T1B);
cannam@95 328 T1C = VADD(T1A, T1B);
cannam@95 329 Tb9 = VADD(T5J, T5K);
cannam@95 330 T5L = VSUB(T5J, T5K);
cannam@95 331 T1I = LD(&(ri[WS(is, 23)]), ivs, &(ri[WS(is, 1)]));
cannam@95 332 T5e = LD(&(ii[WS(is, 55)]), ivs, &(ii[WS(is, 1)]));
cannam@95 333 T5f = LD(&(ii[WS(is, 23)]), ivs, &(ii[WS(is, 1)]));
cannam@95 334 T1E = LD(&(ri[WS(is, 7)]), ivs, &(ri[WS(is, 1)]));
cannam@95 335 T1F = LD(&(ri[WS(is, 39)]), ivs, &(ri[WS(is, 1)]));
cannam@95 336 T59 = LD(&(ii[WS(is, 7)]), ivs, &(ii[WS(is, 1)]));
cannam@95 337 T5a = LD(&(ii[WS(is, 39)]), ivs, &(ii[WS(is, 1)]));
cannam@95 338 }
cannam@95 339 {
cannam@95 340 V Tbo, T1D, Tdv, T5h, T5N, T1K, Tdw, Tbr, T5O, T5c;
cannam@95 341 {
cannam@95 342 V T1J, T5d, Tbq, T5g, T1G, T58, Tbp, T5b;
cannam@95 343 Tbo = VSUB(T1z, T1C);
cannam@95 344 T1D = VADD(T1z, T1C);
cannam@95 345 T1J = VADD(T1H, T1I);
cannam@95 346 T5d = VSUB(T1H, T1I);
cannam@95 347 Tbq = VADD(T5e, T5f);
cannam@95 348 T5g = VSUB(T5e, T5f);
cannam@95 349 T1G = VADD(T1E, T1F);
cannam@95 350 T58 = VSUB(T1E, T1F);
cannam@95 351 Tbp = VADD(T59, T5a);
cannam@95 352 T5b = VSUB(T59, T5a);
cannam@95 353 Tba = VSUB(Tb8, Tb9);
cannam@95 354 Tdv = VADD(Tb8, Tb9);
cannam@95 355 T57 = VADD(T53, T56);
cannam@95 356 T8l = VSUB(T56, T53);
cannam@95 357 T5h = VSUB(T5d, T5g);
cannam@95 358 T5N = VADD(T5d, T5g);
cannam@95 359 Tb7 = VSUB(T1J, T1G);
cannam@95 360 T1K = VADD(T1G, T1J);
cannam@95 361 Tdw = VADD(Tbp, Tbq);
cannam@95 362 Tbr = VSUB(Tbp, Tbq);
cannam@95 363 T5O = VSUB(T5b, T58);
cannam@95 364 T5c = VADD(T58, T5b);
cannam@95 365 }
cannam@95 366 T5M = VSUB(T5I, T5L);
cannam@95 367 T8w = VADD(T5I, T5L);
cannam@95 368 T1L = VADD(T1D, T1K);
cannam@95 369 TdA = VSUB(T1D, T1K);
cannam@95 370 Tdx = VSUB(Tdv, Tdw);
cannam@95 371 Teo = VADD(Tdv, Tdw);
cannam@95 372 Tbs = VADD(Tbo, Tbr);
cannam@95 373 Tct = VSUB(Tbo, Tbr);
cannam@95 374 T8m = VADD(T5O, T5N);
cannam@95 375 T5P = VSUB(T5N, T5O);
cannam@95 376 T8x = VADD(T5c, T5h);
cannam@95 377 T5i = VSUB(T5c, T5h);
cannam@95 378 }
cannam@95 379 }
cannam@95 380 }
cannam@95 381 }
cannam@95 382 {
cannam@95 383 V T4e, T82, T8d, T4T, T4W, T83, T4p, T8e;
cannam@95 384 {
cannam@95 385 V T7T, T3R, T42, T7W, T3Y, T7X, T45, T7U;
cannam@95 386 {
cannam@95 387 V T40, TN, T2Y, T3Q, T2Q, T3P, TQ, T41, T2T, T3V, TX, T2Z, TS, TT, T2V;
cannam@95 388 V T2W;
cannam@95 389 {
cannam@95 390 V T2O, T2P, TO, TP, TL, TM;
cannam@95 391 TL = LD(&(ri[WS(is, 62)]), ivs, &(ri[0]));
cannam@95 392 TM = LD(&(ri[WS(is, 30)]), ivs, &(ri[0]));
cannam@95 393 T5Q = VFNMS(LDK(KP707106781), T5P, T5M);
cannam@95 394 T6V = VFMA(LDK(KP707106781), T5P, T5M);
cannam@95 395 T8y = VFMA(LDK(KP707106781), T8x, T8w);
cannam@95 396 T9z = VFNMS(LDK(KP707106781), T8x, T8w);
cannam@95 397 T5j = VFNMS(LDK(KP707106781), T5i, T57);
cannam@95 398 T6Y = VFMA(LDK(KP707106781), T5i, T57);
cannam@95 399 Tbb = VADD(Tb7, Tba);
cannam@95 400 Tcw = VSUB(Tba, Tb7);
cannam@95 401 T8n = VFMA(LDK(KP707106781), T8m, T8l);
cannam@95 402 T9C = VFNMS(LDK(KP707106781), T8m, T8l);
cannam@95 403 T40 = VSUB(TL, TM);
cannam@95 404 TN = VADD(TL, TM);
cannam@95 405 T2O = LD(&(ii[WS(is, 62)]), ivs, &(ii[0]));
cannam@95 406 T2P = LD(&(ii[WS(is, 30)]), ivs, &(ii[0]));
cannam@95 407 TO = LD(&(ri[WS(is, 14)]), ivs, &(ri[0]));
cannam@95 408 TP = LD(&(ri[WS(is, 46)]), ivs, &(ri[0]));
cannam@95 409 {
cannam@95 410 V T2R, T2S, TV, TW;
cannam@95 411 T2R = LD(&(ii[WS(is, 14)]), ivs, &(ii[0]));
cannam@95 412 T2S = LD(&(ii[WS(is, 46)]), ivs, &(ii[0]));
cannam@95 413 TV = LD(&(ri[WS(is, 54)]), ivs, &(ri[0]));
cannam@95 414 TW = LD(&(ri[WS(is, 22)]), ivs, &(ri[0]));
cannam@95 415 T2Y = LD(&(ii[WS(is, 54)]), ivs, &(ii[0]));
cannam@95 416 T3Q = VSUB(T2O, T2P);
cannam@95 417 T2Q = VADD(T2O, T2P);
cannam@95 418 T3P = VSUB(TO, TP);
cannam@95 419 TQ = VADD(TO, TP);
cannam@95 420 T41 = VSUB(T2R, T2S);
cannam@95 421 T2T = VADD(T2R, T2S);
cannam@95 422 T3V = VSUB(TV, TW);
cannam@95 423 TX = VADD(TV, TW);
cannam@95 424 T2Z = LD(&(ii[WS(is, 22)]), ivs, &(ii[0]));
cannam@95 425 TS = LD(&(ri[WS(is, 6)]), ivs, &(ri[0]));
cannam@95 426 TT = LD(&(ri[WS(is, 38)]), ivs, &(ri[0]));
cannam@95 427 T2V = LD(&(ii[WS(is, 6)]), ivs, &(ii[0]));
cannam@95 428 T2W = LD(&(ii[WS(is, 38)]), ivs, &(ii[0]));
cannam@95 429 }
cannam@95 430 }
cannam@95 431 {
cannam@95 432 V TaA, TR, Tay, T2U, T3W, T30, TU, T3S, T2X, T3T;
cannam@95 433 TaA = VSUB(TN, TQ);
cannam@95 434 TR = VADD(TN, TQ);
cannam@95 435 Tay = VSUB(T2Q, T2T);
cannam@95 436 T2U = VADD(T2Q, T2T);
cannam@95 437 T3W = VSUB(T2Y, T2Z);
cannam@95 438 T30 = VADD(T2Y, T2Z);
cannam@95 439 TU = VADD(TS, TT);
cannam@95 440 T3S = VSUB(TS, TT);
cannam@95 441 T2X = VADD(T2V, T2W);
cannam@95 442 T3T = VSUB(T2V, T2W);
cannam@95 443 {
cannam@95 444 V T3X, T43, Tax, TY, T31, TaB, T3U, T44;
cannam@95 445 T7T = VSUB(T3Q, T3P);
cannam@95 446 T3R = VADD(T3P, T3Q);
cannam@95 447 T3X = VSUB(T3V, T3W);
cannam@95 448 T43 = VADD(T3V, T3W);
cannam@95 449 Tax = VSUB(TX, TU);
cannam@95 450 TY = VADD(TU, TX);
cannam@95 451 T31 = VADD(T2X, T30);
cannam@95 452 TaB = VSUB(T2X, T30);
cannam@95 453 T3U = VADD(T3S, T3T);
cannam@95 454 T44 = VSUB(T3T, T3S);
cannam@95 455 T42 = VSUB(T40, T41);
cannam@95 456 T7W = VADD(T40, T41);
cannam@95 457 Tch = VSUB(Tay, Tax);
cannam@95 458 Taz = VADD(Tax, Tay);
cannam@95 459 Tdf = VSUB(TR, TY);
cannam@95 460 TZ = VADD(TR, TY);
cannam@95 461 Tdg = VSUB(T2U, T31);
cannam@95 462 T32 = VADD(T2U, T31);
cannam@95 463 Tci = VSUB(TaA, TaB);
cannam@95 464 TaC = VADD(TaA, TaB);
cannam@95 465 T3Y = VSUB(T3U, T3X);
cannam@95 466 T7X = VADD(T3U, T3X);
cannam@95 467 T45 = VSUB(T43, T44);
cannam@95 468 T7U = VADD(T44, T43);
cannam@95 469 }
cannam@95 470 }
cannam@95 471 }
cannam@95 472 {
cannam@95 473 V T4P, T14, T4l, TaH, T4d, T4a, T17, TaI, T4S, T4k, T1e, T4m, T19, T1a, T4g;
cannam@95 474 V T4h;
cannam@95 475 {
cannam@95 476 V T4b, T4c, T15, T16, T12, T13;
cannam@95 477 T12 = LD(&(ri[WS(is, 1)]), ivs, &(ri[WS(is, 1)]));
cannam@95 478 T13 = LD(&(ri[WS(is, 33)]), ivs, &(ri[WS(is, 1)]));
cannam@95 479 T4b = LD(&(ii[WS(is, 1)]), ivs, &(ii[WS(is, 1)]));
cannam@95 480 T6J = VFMA(LDK(KP707106781), T3Y, T3R);
cannam@95 481 T3Z = VFNMS(LDK(KP707106781), T3Y, T3R);
cannam@95 482 T9n = VFNMS(LDK(KP707106781), T7U, T7T);
cannam@95 483 T7V = VFMA(LDK(KP707106781), T7U, T7T);
cannam@95 484 T9o = VFNMS(LDK(KP707106781), T7X, T7W);
cannam@95 485 T7Y = VFMA(LDK(KP707106781), T7X, T7W);
cannam@95 486 T6K = VFMA(LDK(KP707106781), T45, T42);
cannam@95 487 T46 = VFNMS(LDK(KP707106781), T45, T42);
cannam@95 488 T4P = VSUB(T12, T13);
cannam@95 489 T14 = VADD(T12, T13);
cannam@95 490 T4c = LD(&(ii[WS(is, 33)]), ivs, &(ii[WS(is, 1)]));
cannam@95 491 T15 = LD(&(ri[WS(is, 17)]), ivs, &(ri[WS(is, 1)]));
cannam@95 492 T16 = LD(&(ri[WS(is, 49)]), ivs, &(ri[WS(is, 1)]));
cannam@95 493 {
cannam@95 494 V T4Q, T4R, T1c, T1d;
cannam@95 495 T4Q = LD(&(ii[WS(is, 17)]), ivs, &(ii[WS(is, 1)]));
cannam@95 496 T4R = LD(&(ii[WS(is, 49)]), ivs, &(ii[WS(is, 1)]));
cannam@95 497 T1c = LD(&(ri[WS(is, 57)]), ivs, &(ri[WS(is, 1)]));
cannam@95 498 T1d = LD(&(ri[WS(is, 25)]), ivs, &(ri[WS(is, 1)]));
cannam@95 499 T4l = LD(&(ii[WS(is, 57)]), ivs, &(ii[WS(is, 1)]));
cannam@95 500 TaH = VADD(T4b, T4c);
cannam@95 501 T4d = VSUB(T4b, T4c);
cannam@95 502 T4a = VSUB(T15, T16);
cannam@95 503 T17 = VADD(T15, T16);
cannam@95 504 TaI = VADD(T4Q, T4R);
cannam@95 505 T4S = VSUB(T4Q, T4R);
cannam@95 506 T4k = VSUB(T1c, T1d);
cannam@95 507 T1e = VADD(T1c, T1d);
cannam@95 508 T4m = LD(&(ii[WS(is, 25)]), ivs, &(ii[WS(is, 1)]));
cannam@95 509 T19 = LD(&(ri[WS(is, 9)]), ivs, &(ri[WS(is, 1)]));
cannam@95 510 T1a = LD(&(ri[WS(is, 41)]), ivs, &(ri[WS(is, 1)]));
cannam@95 511 T4g = LD(&(ii[WS(is, 9)]), ivs, &(ii[WS(is, 1)]));
cannam@95 512 T4h = LD(&(ii[WS(is, 41)]), ivs, &(ii[WS(is, 1)]));
cannam@95 513 }
cannam@95 514 }
cannam@95 515 {
cannam@95 516 V TaX, T18, T4n, TaZ, TaJ, Tdk, T1b, T4f, TaY, T4i;
cannam@95 517 TaX = VSUB(T14, T17);
cannam@95 518 T18 = VADD(T14, T17);
cannam@95 519 T4n = VSUB(T4l, T4m);
cannam@95 520 TaZ = VADD(T4l, T4m);
cannam@95 521 TaJ = VSUB(TaH, TaI);
cannam@95 522 Tdk = VADD(TaH, TaI);
cannam@95 523 T1b = VADD(T19, T1a);
cannam@95 524 T4f = VSUB(T19, T1a);
cannam@95 525 TaY = VADD(T4g, T4h);
cannam@95 526 T4i = VSUB(T4g, T4h);
cannam@95 527 T4e = VADD(T4a, T4d);
cannam@95 528 T82 = VSUB(T4d, T4a);
cannam@95 529 {
cannam@95 530 V T4U, T4o, T1f, TaG, Tdl, Tb0, T4V, T4j;
cannam@95 531 T8d = VADD(T4P, T4S);
cannam@95 532 T4T = VSUB(T4P, T4S);
cannam@95 533 T4U = VADD(T4k, T4n);
cannam@95 534 T4o = VSUB(T4k, T4n);
cannam@95 535 T1f = VADD(T1b, T1e);
cannam@95 536 TaG = VSUB(T1e, T1b);
cannam@95 537 Tdl = VADD(TaY, TaZ);
cannam@95 538 Tb0 = VSUB(TaY, TaZ);
cannam@95 539 T4V = VSUB(T4i, T4f);
cannam@95 540 T4j = VADD(T4f, T4i);
cannam@95 541 Tdp = VSUB(T18, T1f);
cannam@95 542 T1g = VADD(T18, T1f);
cannam@95 543 Tej = VADD(Tdk, Tdl);
cannam@95 544 Tdm = VSUB(Tdk, Tdl);
cannam@95 545 Tcm = VSUB(TaX, Tb0);
cannam@95 546 Tb1 = VADD(TaX, Tb0);
cannam@95 547 T4W = VSUB(T4U, T4V);
cannam@95 548 T83 = VADD(T4V, T4U);
cannam@95 549 T4p = VSUB(T4j, T4o);
cannam@95 550 T8e = VADD(T4j, T4o);
cannam@95 551 Tcp = VSUB(TaJ, TaG);
cannam@95 552 TaK = VADD(TaG, TaJ);
cannam@95 553 }
cannam@95 554 }
cannam@95 555 }
cannam@95 556 }
cannam@95 557 {
cannam@95 558 V T1n, Tdq, T4r, T1q, TaR, T4z, Tb2, TaP, T4M, T4Y, T4w, T1t, TaS, T4u, T8g;
cannam@95 559 V T87;
cannam@95 560 {
cannam@95 561 V T1r, T85, T4L, TaO, TaN, T86, T4G, T1s, T4s, T4t;
cannam@95 562 {
cannam@95 563 V T1h, T1i, T4I, T4J, T1k, T1l, T4D, T4E;
cannam@95 564 T1h = LD(&(ri[WS(is, 5)]), ivs, &(ri[WS(is, 1)]));
cannam@95 565 T6O = VFMA(LDK(KP707106781), T4W, T4T);
cannam@95 566 T4X = VFNMS(LDK(KP707106781), T4W, T4T);
cannam@95 567 T9s = VFNMS(LDK(KP707106781), T8e, T8d);
cannam@95 568 T8f = VFMA(LDK(KP707106781), T8e, T8d);
cannam@95 569 T6R = VFMA(LDK(KP707106781), T4p, T4e);
cannam@95 570 T4q = VFNMS(LDK(KP707106781), T4p, T4e);
cannam@95 571 T9v = VFNMS(LDK(KP707106781), T83, T82);
cannam@95 572 T84 = VFMA(LDK(KP707106781), T83, T82);
cannam@95 573 T1i = LD(&(ri[WS(is, 37)]), ivs, &(ri[WS(is, 1)]));
cannam@95 574 T4I = LD(&(ii[WS(is, 5)]), ivs, &(ii[WS(is, 1)]));
cannam@95 575 T4J = LD(&(ii[WS(is, 37)]), ivs, &(ii[WS(is, 1)]));
cannam@95 576 T1k = LD(&(ri[WS(is, 21)]), ivs, &(ri[WS(is, 1)]));
cannam@95 577 T1l = LD(&(ri[WS(is, 53)]), ivs, &(ri[WS(is, 1)]));
cannam@95 578 T4D = LD(&(ii[WS(is, 21)]), ivs, &(ii[WS(is, 1)]));
cannam@95 579 T4E = LD(&(ii[WS(is, 53)]), ivs, &(ii[WS(is, 1)]));
cannam@95 580 {
cannam@95 581 V T1o, T4C, T1j, TaL, T4K, T4H, T1m, TaM, T4F, T1p, T4x, T4y;
cannam@95 582 T1o = LD(&(ri[WS(is, 61)]), ivs, &(ri[WS(is, 1)]));
cannam@95 583 T4C = VSUB(T1h, T1i);
cannam@95 584 T1j = VADD(T1h, T1i);
cannam@95 585 TaL = VADD(T4I, T4J);
cannam@95 586 T4K = VSUB(T4I, T4J);
cannam@95 587 T4H = VSUB(T1k, T1l);
cannam@95 588 T1m = VADD(T1k, T1l);
cannam@95 589 TaM = VADD(T4D, T4E);
cannam@95 590 T4F = VSUB(T4D, T4E);
cannam@95 591 T1p = LD(&(ri[WS(is, 29)]), ivs, &(ri[WS(is, 1)]));
cannam@95 592 T4x = LD(&(ii[WS(is, 61)]), ivs, &(ii[WS(is, 1)]));
cannam@95 593 T4y = LD(&(ii[WS(is, 29)]), ivs, &(ii[WS(is, 1)]));
cannam@95 594 T1r = LD(&(ri[WS(is, 13)]), ivs, &(ri[WS(is, 1)]));
cannam@95 595 T85 = VSUB(T4K, T4H);
cannam@95 596 T4L = VADD(T4H, T4K);
cannam@95 597 TaO = VSUB(T1j, T1m);
cannam@95 598 T1n = VADD(T1j, T1m);
cannam@95 599 Tdq = VADD(TaL, TaM);
cannam@95 600 TaN = VSUB(TaL, TaM);
cannam@95 601 T86 = VADD(T4C, T4F);
cannam@95 602 T4G = VSUB(T4C, T4F);
cannam@95 603 T4r = VSUB(T1o, T1p);
cannam@95 604 T1q = VADD(T1o, T1p);
cannam@95 605 TaR = VADD(T4x, T4y);
cannam@95 606 T4z = VSUB(T4x, T4y);
cannam@95 607 T1s = LD(&(ri[WS(is, 45)]), ivs, &(ri[WS(is, 1)]));
cannam@95 608 T4s = LD(&(ii[WS(is, 13)]), ivs, &(ii[WS(is, 1)]));
cannam@95 609 T4t = LD(&(ii[WS(is, 45)]), ivs, &(ii[WS(is, 1)]));
cannam@95 610 }
cannam@95 611 }
cannam@95 612 Tb2 = VADD(TaO, TaN);
cannam@95 613 TaP = VSUB(TaN, TaO);
cannam@95 614 T4M = VFNMS(LDK(KP414213562), T4L, T4G);
cannam@95 615 T4Y = VFMA(LDK(KP414213562), T4G, T4L);
cannam@95 616 T4w = VSUB(T1r, T1s);
cannam@95 617 T1t = VADD(T1r, T1s);
cannam@95 618 TaS = VADD(T4s, T4t);
cannam@95 619 T4u = VSUB(T4s, T4t);
cannam@95 620 T8g = VFMA(LDK(KP414213562), T85, T86);
cannam@95 621 T87 = VFNMS(LDK(KP414213562), T86, T85);
cannam@95 622 }
cannam@95 623 {
cannam@95 624 V T1W, T8o, T5E, Tbf, Tbe, T8p, T5z, T1X, T5l, T5m;
cannam@95 625 {
cannam@95 626 V T5B, T5v, T1O, T5C, T1P, T1Q, T5w, T5x;
cannam@95 627 {
cannam@95 628 V T1M, T88, T4A, T1u, TaQ, Tdr, TaT, T89, T4v, T1N, TaU, Tb3;
cannam@95 629 T1M = LD(&(ri[WS(is, 3)]), ivs, &(ri[WS(is, 1)]));
cannam@95 630 T88 = VSUB(T4z, T4w);
cannam@95 631 T4A = VADD(T4w, T4z);
cannam@95 632 T1u = VADD(T1q, T1t);
cannam@95 633 TaQ = VSUB(T1q, T1t);
cannam@95 634 Tdr = VADD(TaR, TaS);
cannam@95 635 TaT = VSUB(TaR, TaS);
cannam@95 636 T89 = VADD(T4r, T4u);
cannam@95 637 T4v = VSUB(T4r, T4u);
cannam@95 638 T1N = LD(&(ri[WS(is, 35)]), ivs, &(ri[WS(is, 1)]));
cannam@95 639 T5B = LD(&(ii[WS(is, 3)]), ivs, &(ii[WS(is, 1)]));
cannam@95 640 Tdn = VSUB(T1u, T1n);
cannam@95 641 T1v = VADD(T1n, T1u);
cannam@95 642 Tek = VADD(Tdq, Tdr);
cannam@95 643 Tds = VSUB(Tdq, Tdr);
cannam@95 644 TaU = VADD(TaQ, TaT);
cannam@95 645 Tb3 = VSUB(TaQ, TaT);
cannam@95 646 {
cannam@95 647 V T8a, T8h, T4Z, T4B;
cannam@95 648 T8a = VFMA(LDK(KP414213562), T89, T88);
cannam@95 649 T8h = VFNMS(LDK(KP414213562), T88, T89);
cannam@95 650 T4Z = VFNMS(LDK(KP414213562), T4v, T4A);
cannam@95 651 T4B = VFMA(LDK(KP414213562), T4A, T4v);
cannam@95 652 T5v = VSUB(T1M, T1N);
cannam@95 653 T1O = VADD(T1M, T1N);
cannam@95 654 Tcn = VSUB(TaU, TaP);
cannam@95 655 TaV = VADD(TaP, TaU);
cannam@95 656 Tcq = VSUB(Tb2, Tb3);
cannam@95 657 Tb4 = VADD(Tb2, Tb3);
cannam@95 658 T9t = VSUB(T8a, T87);
cannam@95 659 T8b = VADD(T87, T8a);
cannam@95 660 T9w = VSUB(T8g, T8h);
cannam@95 661 T8i = VADD(T8g, T8h);
cannam@95 662 T6S = VADD(T4Y, T4Z);
cannam@95 663 T50 = VSUB(T4Y, T4Z);
cannam@95 664 T6P = VADD(T4M, T4B);
cannam@95 665 T4N = VSUB(T4B, T4M);
cannam@95 666 T5C = LD(&(ii[WS(is, 35)]), ivs, &(ii[WS(is, 1)]));
cannam@95 667 }
cannam@95 668 }
cannam@95 669 T1P = LD(&(ri[WS(is, 19)]), ivs, &(ri[WS(is, 1)]));
cannam@95 670 T1Q = LD(&(ri[WS(is, 51)]), ivs, &(ri[WS(is, 1)]));
cannam@95 671 T5w = LD(&(ii[WS(is, 19)]), ivs, &(ii[WS(is, 1)]));
cannam@95 672 T5x = LD(&(ii[WS(is, 51)]), ivs, &(ii[WS(is, 1)]));
cannam@95 673 {
cannam@95 674 V T5q, Tbc, T5D, T5A, T1R, Tbd, T5y, T5r, T1T, T1U;
cannam@95 675 T1T = LD(&(ri[WS(is, 59)]), ivs, &(ri[WS(is, 1)]));
cannam@95 676 T1U = LD(&(ri[WS(is, 27)]), ivs, &(ri[WS(is, 1)]));
cannam@95 677 T5q = LD(&(ii[WS(is, 59)]), ivs, &(ii[WS(is, 1)]));
cannam@95 678 Tbc = VADD(T5B, T5C);
cannam@95 679 T5D = VSUB(T5B, T5C);
cannam@95 680 T5A = VSUB(T1P, T1Q);
cannam@95 681 T1R = VADD(T1P, T1Q);
cannam@95 682 Tbd = VADD(T5w, T5x);
cannam@95 683 T5y = VSUB(T5w, T5x);
cannam@95 684 T5k = VSUB(T1T, T1U);
cannam@95 685 T1V = VADD(T1T, T1U);
cannam@95 686 T5r = LD(&(ii[WS(is, 27)]), ivs, &(ii[WS(is, 1)]));
cannam@95 687 T1W = LD(&(ri[WS(is, 11)]), ivs, &(ri[WS(is, 1)]));
cannam@95 688 T8o = VSUB(T5D, T5A);
cannam@95 689 T5E = VADD(T5A, T5D);
cannam@95 690 Tbf = VSUB(T1O, T1R);
cannam@95 691 T1S = VADD(T1O, T1R);
cannam@95 692 TdB = VADD(Tbc, Tbd);
cannam@95 693 Tbe = VSUB(Tbc, Tbd);
cannam@95 694 T8p = VADD(T5v, T5y);
cannam@95 695 T5z = VSUB(T5v, T5y);
cannam@95 696 Tbi = VADD(T5q, T5r);
cannam@95 697 T5s = VSUB(T5q, T5r);
cannam@95 698 T1X = LD(&(ri[WS(is, 43)]), ivs, &(ri[WS(is, 1)]));
cannam@95 699 T5l = LD(&(ii[WS(is, 11)]), ivs, &(ii[WS(is, 1)]));
cannam@95 700 T5m = LD(&(ii[WS(is, 43)]), ivs, &(ii[WS(is, 1)]));
cannam@95 701 }
cannam@95 702 }
cannam@95 703 Tbt = VADD(Tbf, Tbe);
cannam@95 704 Tbg = VSUB(Tbe, Tbf);
cannam@95 705 T5F = VFNMS(LDK(KP414213562), T5E, T5z);
cannam@95 706 T5R = VFMA(LDK(KP414213562), T5z, T5E);
cannam@95 707 T5p = VSUB(T1W, T1X);
cannam@95 708 T1Y = VADD(T1W, T1X);
cannam@95 709 Tbj = VADD(T5l, T5m);
cannam@95 710 T5n = VSUB(T5l, T5m);
cannam@95 711 T8z = VFMA(LDK(KP414213562), T8o, T8p);
cannam@95 712 T8q = VFNMS(LDK(KP414213562), T8p, T8o);
cannam@95 713 }
cannam@95 714 }
cannam@95 715 }
cannam@95 716 }
cannam@95 717 {
cannam@95 718 V Tbm, Tbv, T9A, T8u, T9D, T8B, T6Z, T5T, T6W, T5G, TeL, TeM, TeN, TeO, TeR;
cannam@95 719 V TeS, TeT, TeU, TeV, TeW, TeX, TeY, TeZ, Tf0, Tf1, Tf2, Tf3, Tf4, Tf5, Tf6;
cannam@95 720 V Tf7, Tf8, Tf9, Tfa, Tfb, Tfc, TbE, Tao, Tfd, Tfe, Td7, Td8, Tff, Tfg, Tfh;
cannam@95 721 V Tfi, Tfj, Tfk, Tfl, Tfm, Tfn, Tfo, Tfp, Tfq, Tfr, Tfs;
cannam@95 722 {
cannam@95 723 V Tel, Tdy, TdD, Tcu, Tcx, Teq, Tei, Ten, Tex, Teh, TeB, Tev, Te9, Tec;
cannam@95 724 {
cannam@95 725 V Tef, Teu, TeE, TeD, T11, TeF, T1w, T21, Tet, T2y, T33, Teg, T20;
cannam@95 726 {
cannam@95 727 V Tv, T8r, T5t, T1Z, Tbh, TdC, Tbk, T8s, T5o, T10, Tep, Tbl, Tbu;
cannam@95 728 Tef = VSUB(Tf, Tu);
cannam@95 729 Tv = VADD(Tf, Tu);
cannam@95 730 T8r = VSUB(T5s, T5p);
cannam@95 731 T5t = VADD(T5p, T5s);
cannam@95 732 T1Z = VADD(T1V, T1Y);
cannam@95 733 Tbh = VSUB(T1V, T1Y);
cannam@95 734 TdC = VADD(Tbi, Tbj);
cannam@95 735 Tbk = VSUB(Tbi, Tbj);
cannam@95 736 T8s = VADD(T5k, T5n);
cannam@95 737 T5o = VSUB(T5k, T5n);
cannam@95 738 T10 = VADD(TK, TZ);
cannam@95 739 Teu = VSUB(TZ, TK);
cannam@95 740 Tel = VSUB(Tej, Tek);
cannam@95 741 TeE = VADD(Tej, Tek);
cannam@95 742 Tdy = VSUB(T1Z, T1S);
cannam@95 743 T20 = VADD(T1S, T1Z);
cannam@95 744 Tep = VADD(TdB, TdC);
cannam@95 745 TdD = VSUB(TdB, TdC);
cannam@95 746 Tbl = VADD(Tbh, Tbk);
cannam@95 747 Tbu = VSUB(Tbh, Tbk);
cannam@95 748 {
cannam@95 749 V T8t, T8A, T5S, T5u;
cannam@95 750 T8t = VFMA(LDK(KP414213562), T8s, T8r);
cannam@95 751 T8A = VFNMS(LDK(KP414213562), T8r, T8s);
cannam@95 752 T5S = VFNMS(LDK(KP414213562), T5o, T5t);
cannam@95 753 T5u = VFMA(LDK(KP414213562), T5t, T5o);
cannam@95 754 TeD = VSUB(Tv, T10);
cannam@95 755 T11 = VADD(Tv, T10);
cannam@95 756 Tcu = VSUB(Tbl, Tbg);
cannam@95 757 Tbm = VADD(Tbg, Tbl);
cannam@95 758 Tcx = VSUB(Tbt, Tbu);
cannam@95 759 Tbv = VADD(Tbt, Tbu);
cannam@95 760 T9A = VSUB(T8t, T8q);
cannam@95 761 T8u = VADD(T8q, T8t);
cannam@95 762 T9D = VSUB(T8z, T8A);
cannam@95 763 T8B = VADD(T8z, T8A);
cannam@95 764 T6Z = VADD(T5R, T5S);
cannam@95 765 T5T = VSUB(T5R, T5S);
cannam@95 766 T6W = VADD(T5F, T5u);
cannam@95 767 T5G = VSUB(T5u, T5F);
cannam@95 768 TeF = VADD(Teo, Tep);
cannam@95 769 Teq = VSUB(Teo, Tep);
cannam@95 770 }
cannam@95 771 }
cannam@95 772 Tei = VSUB(T1g, T1v);
cannam@95 773 T1w = VADD(T1g, T1v);
cannam@95 774 T21 = VADD(T1L, T20);
cannam@95 775 Ten = VSUB(T1L, T20);
cannam@95 776 Tet = VSUB(T2i, T2x);
cannam@95 777 T2y = VADD(T2i, T2x);
cannam@95 778 T33 = VADD(T2N, T32);
cannam@95 779 Teg = VSUB(T2N, T32);
cannam@95 780 {
cannam@95 781 V TeI, TeG, T23, T22, TeH, T34;
cannam@95 782 TeI = VADD(TeE, TeF);
cannam@95 783 TeG = VSUB(TeE, TeF);
cannam@95 784 T23 = VSUB(T21, T1w);
cannam@95 785 T22 = VADD(T1w, T21);
cannam@95 786 TeH = VADD(T2y, T33);
cannam@95 787 T34 = VSUB(T2y, T33);
cannam@95 788 Tex = VSUB(Tef, Teg);
cannam@95 789 Teh = VADD(Tef, Teg);
cannam@95 790 TeJ = VSUB(TeD, TeG);
cannam@95 791 STM4(&(ro[48]), TeJ, ovs, &(ro[0]));
cannam@95 792 TeK = VADD(TeD, TeG);
cannam@95 793 STM4(&(ro[16]), TeK, ovs, &(ro[0]));
cannam@95 794 TeL = VADD(T11, T22);
cannam@95 795 STM4(&(ro[0]), TeL, ovs, &(ro[0]));
cannam@95 796 TeM = VSUB(T11, T22);
cannam@95 797 STM4(&(ro[32]), TeM, ovs, &(ro[0]));
cannam@95 798 TeN = VADD(TeH, TeI);
cannam@95 799 STM4(&(io[0]), TeN, ovs, &(io[0]));
cannam@95 800 TeO = VSUB(TeH, TeI);
cannam@95 801 STM4(&(io[32]), TeO, ovs, &(io[0]));
cannam@95 802 TeP = VSUB(T34, T23);
cannam@95 803 STM4(&(io[48]), TeP, ovs, &(io[0]));
cannam@95 804 TeQ = VADD(T23, T34);
cannam@95 805 STM4(&(io[16]), TeQ, ovs, &(io[0]));
cannam@95 806 TeB = VADD(Teu, Tet);
cannam@95 807 Tev = VSUB(Tet, Teu);
cannam@95 808 }
cannam@95 809 }
cannam@95 810 {
cannam@95 811 V TdV, Tdb, TdJ, Te5, TdE, Tdz, TdZ, Tdo, Te6, Tdi, Teb, Te3, TdW, TdM, Tdt;
cannam@95 812 V TdY;
cannam@95 813 {
cannam@95 814 V TdL, Tde, Tey, Tem, Tez, Ter, Tdh, TdK, Te1, Te2;
cannam@95 815 TdV = VADD(Td9, Tda);
cannam@95 816 Tdb = VSUB(Td9, Tda);
cannam@95 817 TdJ = VSUB(TdH, TdI);
cannam@95 818 Te5 = VADD(TdI, TdH);
cannam@95 819 TdL = VADD(Tdd, Tdc);
cannam@95 820 Tde = VSUB(Tdc, Tdd);
cannam@95 821 Tey = VSUB(Tel, Tei);
cannam@95 822 Tem = VADD(Tei, Tel);
cannam@95 823 Tez = VADD(Ten, Teq);
cannam@95 824 Ter = VSUB(Ten, Teq);
cannam@95 825 Tdh = VADD(Tdf, Tdg);
cannam@95 826 TdK = VSUB(Tdf, Tdg);
cannam@95 827 TdE = VSUB(TdA, TdD);
cannam@95 828 Te1 = VADD(TdA, TdD);
cannam@95 829 Te2 = VADD(Tdy, Tdx);
cannam@95 830 Tdz = VSUB(Tdx, Tdy);
cannam@95 831 TdZ = VADD(Tdn, Tdm);
cannam@95 832 Tdo = VSUB(Tdm, Tdn);
cannam@95 833 {
cannam@95 834 V TeA, TeC, Tew, Tes;
cannam@95 835 TeA = VSUB(Tey, Tez);
cannam@95 836 TeC = VADD(Tey, Tez);
cannam@95 837 Tew = VSUB(Ter, Tem);
cannam@95 838 Tes = VADD(Tem, Ter);
cannam@95 839 Te6 = VADD(Tde, Tdh);
cannam@95 840 Tdi = VSUB(Tde, Tdh);
cannam@95 841 Teb = VFMA(LDK(KP414213562), Te1, Te2);
cannam@95 842 Te3 = VFNMS(LDK(KP414213562), Te2, Te1);
cannam@95 843 TdW = VADD(TdL, TdK);
cannam@95 844 TdM = VSUB(TdK, TdL);
cannam@95 845 TeR = VFMA(LDK(KP707106781), TeA, Tex);
cannam@95 846 STM4(&(ro[24]), TeR, ovs, &(ro[0]));
cannam@95 847 TeS = VFNMS(LDK(KP707106781), TeA, Tex);
cannam@95 848 STM4(&(ro[56]), TeS, ovs, &(ro[0]));
cannam@95 849 TeT = VFMA(LDK(KP707106781), TeC, TeB);
cannam@95 850 STM4(&(io[8]), TeT, ovs, &(io[0]));
cannam@95 851 TeU = VFNMS(LDK(KP707106781), TeC, TeB);
cannam@95 852 STM4(&(io[40]), TeU, ovs, &(io[0]));
cannam@95 853 TeV = VFMA(LDK(KP707106781), Tew, Tev);
cannam@95 854 STM4(&(io[24]), TeV, ovs, &(io[0]));
cannam@95 855 TeW = VFNMS(LDK(KP707106781), Tew, Tev);
cannam@95 856 STM4(&(io[56]), TeW, ovs, &(io[0]));
cannam@95 857 TeX = VFMA(LDK(KP707106781), Tes, Teh);
cannam@95 858 STM4(&(ro[8]), TeX, ovs, &(ro[0]));
cannam@95 859 TeY = VFNMS(LDK(KP707106781), Tes, Teh);
cannam@95 860 STM4(&(ro[40]), TeY, ovs, &(ro[0]));
cannam@95 861 Tdt = VSUB(Tdp, Tds);
cannam@95 862 TdY = VADD(Tdp, Tds);
cannam@95 863 }
cannam@95 864 }
cannam@95 865 {
cannam@95 866 V TdT, Tdj, TdP, TdN, TdR, Tdu, Tea, Te0, TdQ, TdF, TdX, Ted, Te7;
cannam@95 867 TdT = VFNMS(LDK(KP707106781), Tdi, Tdb);
cannam@95 868 Tdj = VFMA(LDK(KP707106781), Tdi, Tdb);
cannam@95 869 TdP = VFMA(LDK(KP707106781), TdM, TdJ);
cannam@95 870 TdN = VFNMS(LDK(KP707106781), TdM, TdJ);
cannam@95 871 TdR = VFNMS(LDK(KP414213562), Tdo, Tdt);
cannam@95 872 Tdu = VFMA(LDK(KP414213562), Tdt, Tdo);
cannam@95 873 Tea = VFNMS(LDK(KP414213562), TdY, TdZ);
cannam@95 874 Te0 = VFMA(LDK(KP414213562), TdZ, TdY);
cannam@95 875 TdQ = VFMA(LDK(KP414213562), Tdz, TdE);
cannam@95 876 TdF = VFNMS(LDK(KP414213562), TdE, Tdz);
cannam@95 877 Te9 = VFNMS(LDK(KP707106781), TdW, TdV);
cannam@95 878 TdX = VFMA(LDK(KP707106781), TdW, TdV);
cannam@95 879 Ted = VFMA(LDK(KP707106781), Te6, Te5);
cannam@95 880 Te7 = VFNMS(LDK(KP707106781), Te6, Te5);
cannam@95 881 {
cannam@95 882 V Tee, Te8, Te4, TdU, TdS, TdO, TdG;
cannam@95 883 Tee = VADD(Tea, Teb);
cannam@95 884 Tec = VSUB(Tea, Teb);
cannam@95 885 Te8 = VSUB(Te3, Te0);
cannam@95 886 Te4 = VADD(Te0, Te3);
cannam@95 887 TdU = VADD(TdR, TdQ);
cannam@95 888 TdS = VSUB(TdQ, TdR);
cannam@95 889 TdO = VADD(Tdu, TdF);
cannam@95 890 TdG = VSUB(Tdu, TdF);
cannam@95 891 TeZ = VFMA(LDK(KP923879532), Tee, Ted);
cannam@95 892 STM4(&(io[4]), TeZ, ovs, &(io[0]));
cannam@95 893 Tf0 = VFNMS(LDK(KP923879532), Tee, Ted);
cannam@95 894 STM4(&(io[36]), Tf0, ovs, &(io[0]));
cannam@95 895 Tf1 = VFMA(LDK(KP923879532), Te4, TdX);
cannam@95 896 STM4(&(ro[4]), Tf1, ovs, &(ro[0]));
cannam@95 897 Tf2 = VFNMS(LDK(KP923879532), Te4, TdX);
cannam@95 898 STM4(&(ro[36]), Tf2, ovs, &(ro[0]));
cannam@95 899 Tf3 = VFMA(LDK(KP923879532), TdU, TdT);
cannam@95 900 STM4(&(ro[60]), Tf3, ovs, &(ro[0]));
cannam@95 901 Tf4 = VFNMS(LDK(KP923879532), TdU, TdT);
cannam@95 902 STM4(&(ro[28]), Tf4, ovs, &(ro[0]));
cannam@95 903 Tf5 = VFMA(LDK(KP923879532), TdS, TdP);
cannam@95 904 STM4(&(io[12]), Tf5, ovs, &(io[0]));
cannam@95 905 Tf6 = VFNMS(LDK(KP923879532), TdS, TdP);
cannam@95 906 STM4(&(io[44]), Tf6, ovs, &(io[0]));
cannam@95 907 Tf7 = VFMA(LDK(KP923879532), TdO, TdN);
cannam@95 908 STM4(&(io[60]), Tf7, ovs, &(io[0]));
cannam@95 909 Tf8 = VFNMS(LDK(KP923879532), TdO, TdN);
cannam@95 910 STM4(&(io[28]), Tf8, ovs, &(io[0]));
cannam@95 911 Tf9 = VFMA(LDK(KP923879532), TdG, Tdj);
cannam@95 912 STM4(&(ro[12]), Tf9, ovs, &(ro[0]));
cannam@95 913 Tfa = VFNMS(LDK(KP923879532), TdG, Tdj);
cannam@95 914 STM4(&(ro[44]), Tfa, ovs, &(ro[0]));
cannam@95 915 Tfb = VFMA(LDK(KP923879532), Te8, Te7);
cannam@95 916 STM4(&(io[20]), Tfb, ovs, &(io[0]));
cannam@95 917 Tfc = VFNMS(LDK(KP923879532), Te8, Te7);
cannam@95 918 STM4(&(io[52]), Tfc, ovs, &(io[0]));
cannam@95 919 }
cannam@95 920 }
cannam@95 921 }
cannam@95 922 {
cannam@95 923 V TcF, TcE, Tcy, Tcv, TcT, Tco, TcP, Tcd, TcZ, TcD, Td0, Tck, Td4, TcX, Tcr;
cannam@95 924 V TcS;
cannam@95 925 {
cannam@95 926 V Tcc, TcC, Tcg, Tcj, TcV, TcW;
cannam@95 927 TbE = VADD(TbC, TbD);
cannam@95 928 Tcc = VSUB(TbC, TbD);
cannam@95 929 TcC = VSUB(Tan, Tak);
cannam@95 930 Tao = VADD(Tak, Tan);
cannam@95 931 TcF = VFNMS(LDK(KP414213562), Tce, Tcf);
cannam@95 932 Tcg = VFMA(LDK(KP414213562), Tcf, Tce);
cannam@95 933 Tcj = VFNMS(LDK(KP414213562), Tci, Tch);
cannam@95 934 TcE = VFMA(LDK(KP414213562), Tch, Tci);
cannam@95 935 Tcy = VFNMS(LDK(KP707106781), Tcx, Tcw);
cannam@95 936 TcV = VFMA(LDK(KP707106781), Tcx, Tcw);
cannam@95 937 TcW = VFMA(LDK(KP707106781), Tcu, Tct);
cannam@95 938 Tcv = VFNMS(LDK(KP707106781), Tcu, Tct);
cannam@95 939 TcT = VFMA(LDK(KP707106781), Tcn, Tcm);
cannam@95 940 Tco = VFNMS(LDK(KP707106781), Tcn, Tcm);
cannam@95 941 Tfd = VFMA(LDK(KP923879532), Tec, Te9);
cannam@95 942 STM4(&(ro[20]), Tfd, ovs, &(ro[0]));
cannam@95 943 Tfe = VFNMS(LDK(KP923879532), Tec, Te9);
cannam@95 944 STM4(&(ro[52]), Tfe, ovs, &(ro[0]));
cannam@95 945 TcP = VFNMS(LDK(KP707106781), Tcc, Tcb);
cannam@95 946 Tcd = VFMA(LDK(KP707106781), Tcc, Tcb);
cannam@95 947 TcZ = VFNMS(LDK(KP707106781), TcC, TcB);
cannam@95 948 TcD = VFMA(LDK(KP707106781), TcC, TcB);
cannam@95 949 Td0 = VADD(Tcg, Tcj);
cannam@95 950 Tck = VSUB(Tcg, Tcj);
cannam@95 951 Td4 = VFMA(LDK(KP198912367), TcV, TcW);
cannam@95 952 TcX = VFNMS(LDK(KP198912367), TcW, TcV);
cannam@95 953 Tcr = VFNMS(LDK(KP707106781), Tcq, Tcp);
cannam@95 954 TcS = VFMA(LDK(KP707106781), Tcq, Tcp);
cannam@95 955 }
cannam@95 956 {
cannam@95 957 V TcJ, Tcl, TcK, Tcs, TcQ, TcG, Td5, TcU, TcL, Tcz;
cannam@95 958 TcJ = VFNMS(LDK(KP923879532), Tck, Tcd);
cannam@95 959 Tcl = VFMA(LDK(KP923879532), Tck, Tcd);
cannam@95 960 TcK = VFNMS(LDK(KP668178637), Tco, Tcr);
cannam@95 961 Tcs = VFMA(LDK(KP668178637), Tcr, Tco);
cannam@95 962 TcQ = VADD(TcF, TcE);
cannam@95 963 TcG = VSUB(TcE, TcF);
cannam@95 964 Td5 = VFNMS(LDK(KP198912367), TcS, TcT);
cannam@95 965 TcU = VFMA(LDK(KP198912367), TcT, TcS);
cannam@95 966 TcL = VFMA(LDK(KP668178637), Tcv, Tcy);
cannam@95 967 Tcz = VFNMS(LDK(KP668178637), Tcy, Tcv);
cannam@95 968 {
cannam@95 969 V Td1, Td3, TcR, TcN, TcH, Td2, TcY, TcM, TcO, TcI, TcA, Td6;
cannam@95 970 Td1 = VFMA(LDK(KP923879532), Td0, TcZ);
cannam@95 971 Td3 = VFNMS(LDK(KP923879532), Td0, TcZ);
cannam@95 972 TcR = VFNMS(LDK(KP923879532), TcQ, TcP);
cannam@95 973 Td7 = VFMA(LDK(KP923879532), TcQ, TcP);
cannam@95 974 TcN = VFMA(LDK(KP923879532), TcG, TcD);
cannam@95 975 TcH = VFNMS(LDK(KP923879532), TcG, TcD);
cannam@95 976 Td2 = VADD(TcU, TcX);
cannam@95 977 TcY = VSUB(TcU, TcX);
cannam@95 978 TcM = VSUB(TcK, TcL);
cannam@95 979 TcO = VADD(TcK, TcL);
cannam@95 980 TcI = VSUB(Tcz, Tcs);
cannam@95 981 TcA = VADD(Tcs, Tcz);
cannam@95 982 Td6 = VSUB(Td4, Td5);
cannam@95 983 Td8 = VADD(Td5, Td4);
cannam@95 984 Tff = VFMA(LDK(KP980785280), TcY, TcR);
cannam@95 985 STM4(&(ro[14]), Tff, ovs, &(ro[0]));
cannam@95 986 Tfg = VFNMS(LDK(KP980785280), TcY, TcR);
cannam@95 987 STM4(&(ro[46]), Tfg, ovs, &(ro[0]));
cannam@95 988 Tfh = VFMA(LDK(KP831469612), TcM, TcJ);
cannam@95 989 STM4(&(ro[22]), Tfh, ovs, &(ro[0]));
cannam@95 990 Tfi = VFNMS(LDK(KP831469612), TcM, TcJ);
cannam@95 991 STM4(&(ro[54]), Tfi, ovs, &(ro[0]));
cannam@95 992 Tfj = VFMA(LDK(KP831469612), TcO, TcN);
cannam@95 993 STM4(&(io[6]), Tfj, ovs, &(io[0]));
cannam@95 994 Tfk = VFNMS(LDK(KP831469612), TcO, TcN);
cannam@95 995 STM4(&(io[38]), Tfk, ovs, &(io[0]));
cannam@95 996 Tfl = VFMA(LDK(KP831469612), TcI, TcH);
cannam@95 997 STM4(&(io[22]), Tfl, ovs, &(io[0]));
cannam@95 998 Tfm = VFNMS(LDK(KP831469612), TcI, TcH);
cannam@95 999 STM4(&(io[54]), Tfm, ovs, &(io[0]));
cannam@95 1000 Tfn = VFMA(LDK(KP831469612), TcA, Tcl);
cannam@95 1001 STM4(&(ro[6]), Tfn, ovs, &(ro[0]));
cannam@95 1002 Tfo = VFNMS(LDK(KP831469612), TcA, Tcl);
cannam@95 1003 STM4(&(ro[38]), Tfo, ovs, &(ro[0]));
cannam@95 1004 Tfp = VFMA(LDK(KP980785280), Td6, Td3);
cannam@95 1005 STM4(&(io[14]), Tfp, ovs, &(io[0]));
cannam@95 1006 Tfq = VFNMS(LDK(KP980785280), Td6, Td3);
cannam@95 1007 STM4(&(io[46]), Tfq, ovs, &(io[0]));
cannam@95 1008 Tfr = VFNMS(LDK(KP980785280), Td2, Td1);
cannam@95 1009 STM4(&(io[30]), Tfr, ovs, &(io[0]));
cannam@95 1010 Tfs = VFMA(LDK(KP980785280), Td2, Td1);
cannam@95 1011 STM4(&(io[62]), Tfs, ovs, &(io[0]));
cannam@95 1012 }
cannam@95 1013 }
cannam@95 1014 }
cannam@95 1015 }
cannam@95 1016 {
cannam@95 1017 V Tft, Tfu, Tfv, Tfw, Tfx, Tfy, Tfz, TfA, TfB, TfC, TfD, TfE, TfF, TfG, T3f;
cannam@95 1018 V T66, T63, T3u, TfL, TfM, TfN, TfO, TfP, TfQ, TfR, TfS, TfT, TfU, TfV, TfW;
cannam@95 1019 V TfX, TfY, TfZ, Tg0, Tc5, Tc8;
cannam@95 1020 {
cannam@95 1021 V TbH, TbG, Tbw, Tbn, TbV, TaW, TbR, Tap, Tc1, TbF, Tc2, TaE, Tc7, TbZ, Tb5;
cannam@95 1022 V TbU;
cannam@95 1023 {
cannam@95 1024 V Taw, TaD, TbX, TbY;
cannam@95 1025 TbH = VFMA(LDK(KP414213562), Tas, Tav);
cannam@95 1026 Taw = VFNMS(LDK(KP414213562), Tav, Tas);
cannam@95 1027 TaD = VFMA(LDK(KP414213562), TaC, Taz);
cannam@95 1028 TbG = VFNMS(LDK(KP414213562), Taz, TaC);
cannam@95 1029 Tbw = VFNMS(LDK(KP707106781), Tbv, Tbs);
cannam@95 1030 TbX = VFMA(LDK(KP707106781), Tbv, Tbs);
cannam@95 1031 TbY = VFMA(LDK(KP707106781), Tbm, Tbb);
cannam@95 1032 Tbn = VFNMS(LDK(KP707106781), Tbm, Tbb);
cannam@95 1033 TbV = VFMA(LDK(KP707106781), TaV, TaK);
cannam@95 1034 TaW = VFNMS(LDK(KP707106781), TaV, TaK);
cannam@95 1035 Tft = VFMA(LDK(KP980785280), Td8, Td7);
cannam@95 1036 STM4(&(ro[62]), Tft, ovs, &(ro[0]));
cannam@95 1037 Tfu = VFNMS(LDK(KP980785280), Td8, Td7);
cannam@95 1038 STM4(&(ro[30]), Tfu, ovs, &(ro[0]));
cannam@95 1039 TbR = VFMA(LDK(KP707106781), Tao, Tah);
cannam@95 1040 Tap = VFNMS(LDK(KP707106781), Tao, Tah);
cannam@95 1041 Tc1 = VFMA(LDK(KP707106781), TbE, TbB);
cannam@95 1042 TbF = VFNMS(LDK(KP707106781), TbE, TbB);
cannam@95 1043 Tc2 = VADD(Taw, TaD);
cannam@95 1044 TaE = VSUB(Taw, TaD);
cannam@95 1045 Tc7 = VFMA(LDK(KP198912367), TbX, TbY);
cannam@95 1046 TbZ = VFNMS(LDK(KP198912367), TbY, TbX);
cannam@95 1047 Tb5 = VFNMS(LDK(KP707106781), Tb4, Tb1);
cannam@95 1048 TbU = VFMA(LDK(KP707106781), Tb4, Tb1);
cannam@95 1049 }
cannam@95 1050 {
cannam@95 1051 V TbP, TaF, TbN, Tb6, TbS, TbI, Tc6, TbW, TbM, Tbx;
cannam@95 1052 TbP = VFNMS(LDK(KP923879532), TaE, Tap);
cannam@95 1053 TaF = VFMA(LDK(KP923879532), TaE, Tap);
cannam@95 1054 TbN = VFNMS(LDK(KP668178637), TaW, Tb5);
cannam@95 1055 Tb6 = VFMA(LDK(KP668178637), Tb5, TaW);
cannam@95 1056 TbS = VADD(TbH, TbG);
cannam@95 1057 TbI = VSUB(TbG, TbH);
cannam@95 1058 Tc6 = VFNMS(LDK(KP198912367), TbU, TbV);
cannam@95 1059 TbW = VFMA(LDK(KP198912367), TbV, TbU);
cannam@95 1060 TbM = VFMA(LDK(KP668178637), Tbn, Tbw);
cannam@95 1061 Tbx = VFNMS(LDK(KP668178637), Tbw, Tbn);
cannam@95 1062 {
cannam@95 1063 V Tc3, Tc9, TbT, TbL, TbJ, Tc4, Tc0, TbQ, TbO, TbK, Tby, Tca;
cannam@95 1064 Tc3 = VFNMS(LDK(KP923879532), Tc2, Tc1);
cannam@95 1065 Tc9 = VFMA(LDK(KP923879532), Tc2, Tc1);
cannam@95 1066 TbT = VFMA(LDK(KP923879532), TbS, TbR);
cannam@95 1067 Tc5 = VFNMS(LDK(KP923879532), TbS, TbR);
cannam@95 1068 TbL = VFMA(LDK(KP923879532), TbI, TbF);
cannam@95 1069 TbJ = VFNMS(LDK(KP923879532), TbI, TbF);
cannam@95 1070 Tc4 = VSUB(TbZ, TbW);
cannam@95 1071 Tc0 = VADD(TbW, TbZ);
cannam@95 1072 TbQ = VADD(TbN, TbM);
cannam@95 1073 TbO = VSUB(TbM, TbN);
cannam@95 1074 TbK = VADD(Tb6, Tbx);
cannam@95 1075 Tby = VSUB(Tb6, Tbx);
cannam@95 1076 Tca = VADD(Tc6, Tc7);
cannam@95 1077 Tc8 = VSUB(Tc6, Tc7);
cannam@95 1078 Tfv = VFMA(LDK(KP980785280), Tc0, TbT);
cannam@95 1079 STM4(&(ro[2]), Tfv, ovs, &(ro[0]));
cannam@95 1080 Tfw = VFNMS(LDK(KP980785280), Tc0, TbT);
cannam@95 1081 STM4(&(ro[34]), Tfw, ovs, &(ro[0]));
cannam@95 1082 Tfx = VFMA(LDK(KP831469612), TbQ, TbP);
cannam@95 1083 STM4(&(ro[58]), Tfx, ovs, &(ro[0]));
cannam@95 1084 Tfy = VFNMS(LDK(KP831469612), TbQ, TbP);
cannam@95 1085 STM4(&(ro[26]), Tfy, ovs, &(ro[0]));
cannam@95 1086 Tfz = VFMA(LDK(KP831469612), TbO, TbL);
cannam@95 1087 STM4(&(io[10]), Tfz, ovs, &(io[0]));
cannam@95 1088 TfA = VFNMS(LDK(KP831469612), TbO, TbL);
cannam@95 1089 STM4(&(io[42]), TfA, ovs, &(io[0]));
cannam@95 1090 TfB = VFMA(LDK(KP831469612), TbK, TbJ);
cannam@95 1091 STM4(&(io[58]), TfB, ovs, &(io[0]));
cannam@95 1092 TfC = VFNMS(LDK(KP831469612), TbK, TbJ);
cannam@95 1093 STM4(&(io[26]), TfC, ovs, &(io[0]));
cannam@95 1094 TfD = VFMA(LDK(KP831469612), Tby, TaF);
cannam@95 1095 STM4(&(ro[10]), TfD, ovs, &(ro[0]));
cannam@95 1096 TfE = VFNMS(LDK(KP831469612), Tby, TaF);
cannam@95 1097 STM4(&(ro[42]), TfE, ovs, &(ro[0]));
cannam@95 1098 TfF = VFMA(LDK(KP980785280), Tca, Tc9);
cannam@95 1099 STM4(&(io[2]), TfF, ovs, &(io[0]));
cannam@95 1100 TfG = VFNMS(LDK(KP980785280), Tca, Tc9);
cannam@95 1101 STM4(&(io[34]), TfG, ovs, &(io[0]));
cannam@95 1102 TfH = VFNMS(LDK(KP980785280), Tc4, Tc3);
cannam@95 1103 STM4(&(io[50]), TfH, ovs, &(io[0]));
cannam@95 1104 TfI = VFMA(LDK(KP980785280), Tc4, Tc3);
cannam@95 1105 STM4(&(io[18]), TfI, ovs, &(io[0]));
cannam@95 1106 }
cannam@95 1107 }
cannam@95 1108 }
cannam@95 1109 {
cannam@95 1110 V T70, T6X, T7h, T6F, T7x, T7m, T7w, T7p, T7s, T6M, T7c, T6U, T7r, T75, T7i;
cannam@95 1111 V T78, T7b, T6N;
cannam@95 1112 {
cannam@95 1113 V T6T, T6Q, T77, T6I, T6L, T76, T73, T74;
cannam@95 1114 {
cannam@95 1115 V T6D, T6E, T7k, T7l, T7n, T7o;
cannam@95 1116 T3f = VFMA(LDK(KP707106781), T3e, T37);
cannam@95 1117 T6D = VFNMS(LDK(KP707106781), T3e, T37);
cannam@95 1118 T6E = VADD(T65, T64);
cannam@95 1119 T66 = VSUB(T64, T65);
cannam@95 1120 T6T = VFNMS(LDK(KP923879532), T6S, T6R);
cannam@95 1121 T7k = VFMA(LDK(KP923879532), T6S, T6R);
cannam@95 1122 T7l = VFMA(LDK(KP923879532), T6P, T6O);
cannam@95 1123 T6Q = VFNMS(LDK(KP923879532), T6P, T6O);
cannam@95 1124 T70 = VFNMS(LDK(KP923879532), T6Z, T6Y);
cannam@95 1125 T7n = VFMA(LDK(KP923879532), T6Z, T6Y);
cannam@95 1126 T7o = VFMA(LDK(KP923879532), T6W, T6V);
cannam@95 1127 T6X = VFNMS(LDK(KP923879532), T6W, T6V);
cannam@95 1128 T77 = VFNMS(LDK(KP198912367), T6G, T6H);
cannam@95 1129 T6I = VFMA(LDK(KP198912367), T6H, T6G);
cannam@95 1130 TfJ = VFMA(LDK(KP980785280), Tc8, Tc5);
cannam@95 1131 STM4(&(ro[18]), TfJ, ovs, &(ro[0]));
cannam@95 1132 TfK = VFNMS(LDK(KP980785280), Tc8, Tc5);
cannam@95 1133 STM4(&(ro[50]), TfK, ovs, &(ro[0]));
cannam@95 1134 T7h = VFMA(LDK(KP923879532), T6E, T6D);
cannam@95 1135 T6F = VFNMS(LDK(KP923879532), T6E, T6D);
cannam@95 1136 T7x = VFNMS(LDK(KP098491403), T7k, T7l);
cannam@95 1137 T7m = VFMA(LDK(KP098491403), T7l, T7k);
cannam@95 1138 T7w = VFMA(LDK(KP098491403), T7n, T7o);
cannam@95 1139 T7p = VFNMS(LDK(KP098491403), T7o, T7n);
cannam@95 1140 T6L = VFNMS(LDK(KP198912367), T6K, T6J);
cannam@95 1141 T76 = VFMA(LDK(KP198912367), T6J, T6K);
cannam@95 1142 }
cannam@95 1143 T63 = VFMA(LDK(KP707106781), T62, T5Z);
cannam@95 1144 T73 = VFNMS(LDK(KP707106781), T62, T5Z);
cannam@95 1145 T74 = VADD(T3m, T3t);
cannam@95 1146 T3u = VSUB(T3m, T3t);
cannam@95 1147 T7s = VADD(T6I, T6L);
cannam@95 1148 T6M = VSUB(T6I, T6L);
cannam@95 1149 T7c = VFNMS(LDK(KP820678790), T6Q, T6T);
cannam@95 1150 T6U = VFMA(LDK(KP820678790), T6T, T6Q);
cannam@95 1151 T7r = VFMA(LDK(KP923879532), T74, T73);
cannam@95 1152 T75 = VFNMS(LDK(KP923879532), T74, T73);
cannam@95 1153 T7i = VADD(T77, T76);
cannam@95 1154 T78 = VSUB(T76, T77);
cannam@95 1155 }
cannam@95 1156 T7b = VFNMS(LDK(KP980785280), T6M, T6F);
cannam@95 1157 T6N = VFMA(LDK(KP980785280), T6M, T6F);
cannam@95 1158 {
cannam@95 1159 V T7u, T7q, T7v, T7t, T7A, T7y, T7j, T7z, T7f, T79, T71, T7d;
cannam@95 1160 T7u = VADD(T7m, T7p);
cannam@95 1161 T7q = VSUB(T7m, T7p);
cannam@95 1162 T7v = VFNMS(LDK(KP980785280), T7s, T7r);
cannam@95 1163 T7t = VFMA(LDK(KP980785280), T7s, T7r);
cannam@95 1164 T7A = VADD(T7x, T7w);
cannam@95 1165 T7y = VSUB(T7w, T7x);
cannam@95 1166 T7j = VFNMS(LDK(KP980785280), T7i, T7h);
cannam@95 1167 T7z = VFMA(LDK(KP980785280), T7i, T7h);
cannam@95 1168 T7f = VFMA(LDK(KP980785280), T78, T75);
cannam@95 1169 T79 = VFNMS(LDK(KP980785280), T78, T75);
cannam@95 1170 T71 = VFNMS(LDK(KP820678790), T70, T6X);
cannam@95 1171 T7d = VFMA(LDK(KP820678790), T6X, T70);
cannam@95 1172 {
cannam@95 1173 V T7g, T7e, T72, T7a;
cannam@95 1174 TfL = VFMA(LDK(KP995184726), T7y, T7v);
cannam@95 1175 STM4(&(io[15]), TfL, ovs, &(io[1]));
cannam@95 1176 TfM = VFNMS(LDK(KP995184726), T7y, T7v);
cannam@95 1177 STM4(&(io[47]), TfM, ovs, &(io[1]));
cannam@95 1178 TfN = VFMA(LDK(KP995184726), T7q, T7j);
cannam@95 1179 STM4(&(ro[15]), TfN, ovs, &(ro[1]));
cannam@95 1180 TfO = VFNMS(LDK(KP995184726), T7q, T7j);
cannam@95 1181 STM4(&(ro[47]), TfO, ovs, &(ro[1]));
cannam@95 1182 T7g = VADD(T7c, T7d);
cannam@95 1183 T7e = VSUB(T7c, T7d);
cannam@95 1184 T72 = VADD(T6U, T71);
cannam@95 1185 T7a = VSUB(T71, T6U);
cannam@95 1186 TfP = VFNMS(LDK(KP995184726), T7u, T7t);
cannam@95 1187 STM4(&(io[31]), TfP, ovs, &(io[1]));
cannam@95 1188 TfQ = VFMA(LDK(KP995184726), T7u, T7t);
cannam@95 1189 STM4(&(io[63]), TfQ, ovs, &(io[1]));
cannam@95 1190 TfR = VFMA(LDK(KP773010453), T7e, T7b);
cannam@95 1191 STM4(&(ro[23]), TfR, ovs, &(ro[1]));
cannam@95 1192 TfS = VFNMS(LDK(KP773010453), T7e, T7b);
cannam@95 1193 STM4(&(ro[55]), TfS, ovs, &(ro[1]));
cannam@95 1194 TfT = VFMA(LDK(KP773010453), T7g, T7f);
cannam@95 1195 STM4(&(io[7]), TfT, ovs, &(io[1]));
cannam@95 1196 TfU = VFNMS(LDK(KP773010453), T7g, T7f);
cannam@95 1197 STM4(&(io[39]), TfU, ovs, &(io[1]));
cannam@95 1198 TfV = VFMA(LDK(KP773010453), T7a, T79);
cannam@95 1199 STM4(&(io[23]), TfV, ovs, &(io[1]));
cannam@95 1200 TfW = VFNMS(LDK(KP773010453), T7a, T79);
cannam@95 1201 STM4(&(io[55]), TfW, ovs, &(io[1]));
cannam@95 1202 TfX = VFMA(LDK(KP773010453), T72, T6N);
cannam@95 1203 STM4(&(ro[7]), TfX, ovs, &(ro[1]));
cannam@95 1204 TfY = VFNMS(LDK(KP773010453), T72, T6N);
cannam@95 1205 STM4(&(ro[39]), TfY, ovs, &(ro[1]));
cannam@95 1206 TfZ = VFNMS(LDK(KP995184726), T7A, T7z);
cannam@95 1207 STM4(&(ro[31]), TfZ, ovs, &(ro[1]));
cannam@95 1208 Tg0 = VFMA(LDK(KP995184726), T7A, T7z);
cannam@95 1209 STM4(&(ro[63]), Tg0, ovs, &(ro[1]));
cannam@95 1210 }
cannam@95 1211 }
cannam@95 1212 }
cannam@95 1213 {
cannam@95 1214 V T7D, T8K, T8H, T7K, Ta8, Ta7, Tae, Tad;
cannam@95 1215 {
cannam@95 1216 V T9x, T9u, T9E, T9B, T9L, T9K, T9V, T9j, Tab, Ta0, Taa, Ta3, Ta6, T9q, T9H;
cannam@95 1217 V T9I;
cannam@95 1218 {
cannam@95 1219 V T9h, T9i, T9Y, T9Z, Ta1, Ta2, T9m, T9p;
cannam@95 1220 T7D = VFMA(LDK(KP707106781), T7C, T7B);
cannam@95 1221 T9h = VFNMS(LDK(KP707106781), T7C, T7B);
cannam@95 1222 T9i = VSUB(T8I, T8J);
cannam@95 1223 T8K = VADD(T8I, T8J);
cannam@95 1224 T9x = VFNMS(LDK(KP923879532), T9w, T9v);
cannam@95 1225 T9Y = VFMA(LDK(KP923879532), T9w, T9v);
cannam@95 1226 T9Z = VFMA(LDK(KP923879532), T9t, T9s);
cannam@95 1227 T9u = VFNMS(LDK(KP923879532), T9t, T9s);
cannam@95 1228 T9E = VFNMS(LDK(KP923879532), T9D, T9C);
cannam@95 1229 Ta1 = VFMA(LDK(KP923879532), T9D, T9C);
cannam@95 1230 Ta2 = VFMA(LDK(KP923879532), T9A, T9z);
cannam@95 1231 T9B = VFNMS(LDK(KP923879532), T9A, T9z);
cannam@95 1232 T9L = VFNMS(LDK(KP668178637), T9k, T9l);
cannam@95 1233 T9m = VFMA(LDK(KP668178637), T9l, T9k);
cannam@95 1234 T9p = VFNMS(LDK(KP668178637), T9o, T9n);
cannam@95 1235 T9K = VFMA(LDK(KP668178637), T9n, T9o);
cannam@95 1236 T9V = VFNMS(LDK(KP923879532), T9i, T9h);
cannam@95 1237 T9j = VFMA(LDK(KP923879532), T9i, T9h);
cannam@95 1238 Tab = VFNMS(LDK(KP303346683), T9Y, T9Z);
cannam@95 1239 Ta0 = VFMA(LDK(KP303346683), T9Z, T9Y);
cannam@95 1240 Taa = VFMA(LDK(KP303346683), Ta1, Ta2);
cannam@95 1241 Ta3 = VFNMS(LDK(KP303346683), Ta2, Ta1);
cannam@95 1242 Ta6 = VADD(T9m, T9p);
cannam@95 1243 T9q = VSUB(T9m, T9p);
cannam@95 1244 T8H = VFMA(LDK(KP707106781), T8G, T8F);
cannam@95 1245 T9H = VFNMS(LDK(KP707106781), T8G, T8F);
cannam@95 1246 T9I = VSUB(T7J, T7G);
cannam@95 1247 T7K = VADD(T7G, T7J);
cannam@95 1248 }
cannam@95 1249 {
cannam@95 1250 V T9P, T9r, T9Q, T9y, Ta5, T9J, T9W, T9M, T9R, T9F;
cannam@95 1251 T9P = VFNMS(LDK(KP831469612), T9q, T9j);
cannam@95 1252 T9r = VFMA(LDK(KP831469612), T9q, T9j);
cannam@95 1253 T9Q = VFNMS(LDK(KP534511135), T9u, T9x);
cannam@95 1254 T9y = VFMA(LDK(KP534511135), T9x, T9u);
cannam@95 1255 Ta5 = VFNMS(LDK(KP923879532), T9I, T9H);
cannam@95 1256 T9J = VFMA(LDK(KP923879532), T9I, T9H);
cannam@95 1257 T9W = VADD(T9L, T9K);
cannam@95 1258 T9M = VSUB(T9K, T9L);
cannam@95 1259 T9R = VFMA(LDK(KP534511135), T9B, T9E);
cannam@95 1260 T9F = VFNMS(LDK(KP534511135), T9E, T9B);
cannam@95 1261 {
cannam@95 1262 V T9T, T9N, T9U, T9S, T9G, T9O;
cannam@95 1263 {
cannam@95 1264 V Ta4, Ta9, Tac, T9X;
cannam@95 1265 Ta8 = VADD(Ta0, Ta3);
cannam@95 1266 Ta4 = VSUB(Ta0, Ta3);
cannam@95 1267 Ta9 = VFNMS(LDK(KP831469612), Ta6, Ta5);
cannam@95 1268 Ta7 = VFMA(LDK(KP831469612), Ta6, Ta5);
cannam@95 1269 Tae = VADD(Tab, Taa);
cannam@95 1270 Tac = VSUB(Taa, Tab);
cannam@95 1271 T9X = VFNMS(LDK(KP831469612), T9W, T9V);
cannam@95 1272 Tad = VFMA(LDK(KP831469612), T9W, T9V);
cannam@95 1273 T9T = VFMA(LDK(KP831469612), T9M, T9J);
cannam@95 1274 T9N = VFNMS(LDK(KP831469612), T9M, T9J);
cannam@95 1275 T9U = VADD(T9Q, T9R);
cannam@95 1276 T9S = VSUB(T9Q, T9R);
cannam@95 1277 T9G = VADD(T9y, T9F);
cannam@95 1278 T9O = VSUB(T9F, T9y);
cannam@95 1279 {
cannam@95 1280 V Tg1, Tg2, Tg3, Tg4;
cannam@95 1281 Tg1 = VFNMS(LDK(KP956940335), Tac, Ta9);
cannam@95 1282 STM4(&(io[45]), Tg1, ovs, &(io[1]));
cannam@95 1283 STN4(&(io[44]), Tf6, Tg1, Tfq, TfM, ovs);
cannam@95 1284 Tg2 = VFMA(LDK(KP956940335), Ta4, T9X);
cannam@95 1285 STM4(&(ro[13]), Tg2, ovs, &(ro[1]));
cannam@95 1286 STN4(&(ro[12]), Tf9, Tg2, Tff, TfN, ovs);
cannam@95 1287 Tg3 = VFNMS(LDK(KP956940335), Ta4, T9X);
cannam@95 1288 STM4(&(ro[45]), Tg3, ovs, &(ro[1]));
cannam@95 1289 STN4(&(ro[44]), Tfa, Tg3, Tfg, TfO, ovs);
cannam@95 1290 Tg4 = VFMA(LDK(KP956940335), Tac, Ta9);
cannam@95 1291 STM4(&(io[13]), Tg4, ovs, &(io[1]));
cannam@95 1292 STN4(&(io[12]), Tf5, Tg4, Tfp, TfL, ovs);
cannam@95 1293 }
cannam@95 1294 }
cannam@95 1295 {
cannam@95 1296 V Tg5, Tg6, Tg7, Tg8;
cannam@95 1297 Tg5 = VFMA(LDK(KP881921264), T9S, T9P);
cannam@95 1298 STM4(&(ro[21]), Tg5, ovs, &(ro[1]));
cannam@95 1299 STN4(&(ro[20]), Tfd, Tg5, Tfh, TfR, ovs);
cannam@95 1300 Tg6 = VFNMS(LDK(KP881921264), T9S, T9P);
cannam@95 1301 STM4(&(ro[53]), Tg6, ovs, &(ro[1]));
cannam@95 1302 STN4(&(ro[52]), Tfe, Tg6, Tfi, TfS, ovs);
cannam@95 1303 Tg7 = VFMA(LDK(KP881921264), T9U, T9T);
cannam@95 1304 STM4(&(io[5]), Tg7, ovs, &(io[1]));
cannam@95 1305 STN4(&(io[4]), TeZ, Tg7, Tfj, TfT, ovs);
cannam@95 1306 Tg8 = VFNMS(LDK(KP881921264), T9U, T9T);
cannam@95 1307 STM4(&(io[37]), Tg8, ovs, &(io[1]));
cannam@95 1308 STN4(&(io[36]), Tf0, Tg8, Tfk, TfU, ovs);
cannam@95 1309 {
cannam@95 1310 V Tg9, Tga, Tgb, Tgc;
cannam@95 1311 Tg9 = VFMA(LDK(KP881921264), T9O, T9N);
cannam@95 1312 STM4(&(io[21]), Tg9, ovs, &(io[1]));
cannam@95 1313 STN4(&(io[20]), Tfb, Tg9, Tfl, TfV, ovs);
cannam@95 1314 Tga = VFNMS(LDK(KP881921264), T9O, T9N);
cannam@95 1315 STM4(&(io[53]), Tga, ovs, &(io[1]));
cannam@95 1316 STN4(&(io[52]), Tfc, Tga, Tfm, TfW, ovs);
cannam@95 1317 Tgb = VFMA(LDK(KP881921264), T9G, T9r);
cannam@95 1318 STM4(&(ro[5]), Tgb, ovs, &(ro[1]));
cannam@95 1319 STN4(&(ro[4]), Tf1, Tgb, Tfn, TfX, ovs);
cannam@95 1320 Tgc = VFNMS(LDK(KP881921264), T9G, T9r);
cannam@95 1321 STM4(&(ro[37]), Tgc, ovs, &(ro[1]));
cannam@95 1322 STN4(&(ro[36]), Tf2, Tgc, Tfo, TfY, ovs);
cannam@95 1323 }
cannam@95 1324 }
cannam@95 1325 }
cannam@95 1326 }
cannam@95 1327 }
cannam@95 1328 {
cannam@95 1329 V Tgh, Tgi, Tgl, Tgm, Tgn, Tgo, Tgp, Tgq, Tgr, Tgs, Tgt, Tgu;
cannam@95 1330 {
cannam@95 1331 V T5U, T6j, T3v, T6y, T6o, T5H, T69, T68, T6z, T6r, T6u, T48, T6f, T52, T6t;
cannam@95 1332 V T67, T6h, T49;
cannam@95 1333 {
cannam@95 1334 V T51, T4O, T6p, T6q, T3O, T47, T6m, T6n;
cannam@95 1335 T51 = VFNMS(LDK(KP923879532), T50, T4X);
cannam@95 1336 T6m = VFMA(LDK(KP923879532), T50, T4X);
cannam@95 1337 T6n = VFMA(LDK(KP923879532), T4N, T4q);
cannam@95 1338 T4O = VFNMS(LDK(KP923879532), T4N, T4q);
cannam@95 1339 T5U = VFNMS(LDK(KP923879532), T5T, T5Q);
cannam@95 1340 T6p = VFMA(LDK(KP923879532), T5T, T5Q);
cannam@95 1341 {
cannam@95 1342 V Tgd, Tge, Tgf, Tgg;
cannam@95 1343 Tgd = VFMA(LDK(KP956940335), Ta8, Ta7);
cannam@95 1344 STM4(&(io[61]), Tgd, ovs, &(io[1]));
cannam@95 1345 STN4(&(io[60]), Tf7, Tgd, Tfs, TfQ, ovs);
cannam@95 1346 Tge = VFNMS(LDK(KP956940335), Ta8, Ta7);
cannam@95 1347 STM4(&(io[29]), Tge, ovs, &(io[1]));
cannam@95 1348 STN4(&(io[28]), Tf8, Tge, Tfr, TfP, ovs);
cannam@95 1349 Tgf = VFMA(LDK(KP956940335), Tae, Tad);
cannam@95 1350 STM4(&(ro[61]), Tgf, ovs, &(ro[1]));
cannam@95 1351 STN4(&(ro[60]), Tf3, Tgf, Tft, Tg0, ovs);
cannam@95 1352 Tgg = VFNMS(LDK(KP956940335), Tae, Tad);
cannam@95 1353 STM4(&(ro[29]), Tgg, ovs, &(ro[1]));
cannam@95 1354 STN4(&(ro[28]), Tf4, Tgg, Tfu, TfZ, ovs);
cannam@95 1355 T6j = VFMA(LDK(KP923879532), T3u, T3f);
cannam@95 1356 T3v = VFNMS(LDK(KP923879532), T3u, T3f);
cannam@95 1357 T6y = VFNMS(LDK(KP303346683), T6m, T6n);
cannam@95 1358 T6o = VFMA(LDK(KP303346683), T6n, T6m);
cannam@95 1359 T6q = VFMA(LDK(KP923879532), T5G, T5j);
cannam@95 1360 T5H = VFNMS(LDK(KP923879532), T5G, T5j);
cannam@95 1361 }
cannam@95 1362 T69 = VFMA(LDK(KP668178637), T3G, T3N);
cannam@95 1363 T3O = VFNMS(LDK(KP668178637), T3N, T3G);
cannam@95 1364 T47 = VFMA(LDK(KP668178637), T46, T3Z);
cannam@95 1365 T68 = VFNMS(LDK(KP668178637), T3Z, T46);
cannam@95 1366 T6z = VFMA(LDK(KP303346683), T6p, T6q);
cannam@95 1367 T6r = VFNMS(LDK(KP303346683), T6q, T6p);
cannam@95 1368 T6u = VADD(T3O, T47);
cannam@95 1369 T48 = VSUB(T3O, T47);
cannam@95 1370 T6f = VFNMS(LDK(KP534511135), T4O, T51);
cannam@95 1371 T52 = VFMA(LDK(KP534511135), T51, T4O);
cannam@95 1372 T6t = VFMA(LDK(KP923879532), T66, T63);
cannam@95 1373 T67 = VFNMS(LDK(KP923879532), T66, T63);
cannam@95 1374 }
cannam@95 1375 T6h = VFNMS(LDK(KP831469612), T48, T3v);
cannam@95 1376 T49 = VFMA(LDK(KP831469612), T48, T3v);
cannam@95 1377 {
cannam@95 1378 V T6w, T6s, T6B, T6v, T6A, T6C, T6k, T6a, T6e, T5V;
cannam@95 1379 T6w = VSUB(T6r, T6o);
cannam@95 1380 T6s = VADD(T6o, T6r);
cannam@95 1381 T6B = VFMA(LDK(KP831469612), T6u, T6t);
cannam@95 1382 T6v = VFNMS(LDK(KP831469612), T6u, T6t);
cannam@95 1383 T6A = VSUB(T6y, T6z);
cannam@95 1384 T6C = VADD(T6y, T6z);
cannam@95 1385 T6k = VADD(T69, T68);
cannam@95 1386 T6a = VSUB(T68, T69);
cannam@95 1387 T6e = VFMA(LDK(KP534511135), T5H, T5U);
cannam@95 1388 T5V = VFNMS(LDK(KP534511135), T5U, T5H);
cannam@95 1389 Tgh = VFMA(LDK(KP956940335), T6C, T6B);
cannam@95 1390 STM4(&(io[3]), Tgh, ovs, &(io[1]));
cannam@95 1391 Tgi = VFNMS(LDK(KP956940335), T6C, T6B);
cannam@95 1392 STM4(&(io[35]), Tgi, ovs, &(io[1]));
cannam@95 1393 {
cannam@95 1394 V T6l, T6x, T6d, T6b;
cannam@95 1395 T6l = VFMA(LDK(KP831469612), T6k, T6j);
cannam@95 1396 T6x = VFNMS(LDK(KP831469612), T6k, T6j);
cannam@95 1397 T6d = VFMA(LDK(KP831469612), T6a, T67);
cannam@95 1398 T6b = VFNMS(LDK(KP831469612), T6a, T67);
cannam@95 1399 {
cannam@95 1400 V T6g, T6i, T5W, T6c;
cannam@95 1401 T6g = VSUB(T6e, T6f);
cannam@95 1402 T6i = VADD(T6f, T6e);
cannam@95 1403 T5W = VSUB(T52, T5V);
cannam@95 1404 T6c = VADD(T52, T5V);
cannam@95 1405 Tgj = VFMA(LDK(KP956940335), T6w, T6v);
cannam@95 1406 STM4(&(io[19]), Tgj, ovs, &(io[1]));
cannam@95 1407 Tgk = VFNMS(LDK(KP956940335), T6w, T6v);
cannam@95 1408 STM4(&(io[51]), Tgk, ovs, &(io[1]));
cannam@95 1409 Tgl = VFMA(LDK(KP956940335), T6s, T6l);
cannam@95 1410 STM4(&(ro[3]), Tgl, ovs, &(ro[1]));
cannam@95 1411 Tgm = VFNMS(LDK(KP956940335), T6s, T6l);
cannam@95 1412 STM4(&(ro[35]), Tgm, ovs, &(ro[1]));
cannam@95 1413 Tgn = VFMA(LDK(KP881921264), T6i, T6h);
cannam@95 1414 STM4(&(ro[59]), Tgn, ovs, &(ro[1]));
cannam@95 1415 Tgo = VFNMS(LDK(KP881921264), T6i, T6h);
cannam@95 1416 STM4(&(ro[27]), Tgo, ovs, &(ro[1]));
cannam@95 1417 Tgp = VFMA(LDK(KP881921264), T6g, T6d);
cannam@95 1418 STM4(&(io[11]), Tgp, ovs, &(io[1]));
cannam@95 1419 Tgq = VFNMS(LDK(KP881921264), T6g, T6d);
cannam@95 1420 STM4(&(io[43]), Tgq, ovs, &(io[1]));
cannam@95 1421 Tgr = VFMA(LDK(KP881921264), T6c, T6b);
cannam@95 1422 STM4(&(io[59]), Tgr, ovs, &(io[1]));
cannam@95 1423 Tgs = VFNMS(LDK(KP881921264), T6c, T6b);
cannam@95 1424 STM4(&(io[27]), Tgs, ovs, &(io[1]));
cannam@95 1425 Tgt = VFMA(LDK(KP881921264), T5W, T49);
cannam@95 1426 STM4(&(ro[11]), Tgt, ovs, &(ro[1]));
cannam@95 1427 Tgu = VFNMS(LDK(KP881921264), T5W, T49);
cannam@95 1428 STM4(&(ro[43]), Tgu, ovs, &(ro[1]));
cannam@95 1429 Tgv = VFNMS(LDK(KP956940335), T6A, T6x);
cannam@95 1430 STM4(&(ro[51]), Tgv, ovs, &(ro[1]));
cannam@95 1431 Tgw = VFMA(LDK(KP956940335), T6A, T6x);
cannam@95 1432 STM4(&(ro[19]), Tgw, ovs, &(ro[1]));
cannam@95 1433 }
cannam@95 1434 }
cannam@95 1435 }
cannam@95 1436 }
cannam@95 1437 {
cannam@95 1438 V T8j, T8c, T8C, T8v, T8N, T8M, T8X, T7L, T9c, T92, T9d, T95, T98, T80;
cannam@95 1439 {
cannam@95 1440 V T90, T91, T93, T94, T7S, T7Z;
cannam@95 1441 T8j = VFNMS(LDK(KP923879532), T8i, T8f);
cannam@95 1442 T90 = VFMA(LDK(KP923879532), T8i, T8f);
cannam@95 1443 T91 = VFMA(LDK(KP923879532), T8b, T84);
cannam@95 1444 T8c = VFNMS(LDK(KP923879532), T8b, T84);
cannam@95 1445 T8C = VFNMS(LDK(KP923879532), T8B, T8y);
cannam@95 1446 T93 = VFMA(LDK(KP923879532), T8B, T8y);
cannam@95 1447 T94 = VFMA(LDK(KP923879532), T8u, T8n);
cannam@95 1448 T8v = VFNMS(LDK(KP923879532), T8u, T8n);
cannam@95 1449 T8N = VFMA(LDK(KP198912367), T7O, T7R);
cannam@95 1450 T7S = VFNMS(LDK(KP198912367), T7R, T7O);
cannam@95 1451 T7Z = VFMA(LDK(KP198912367), T7Y, T7V);
cannam@95 1452 T8M = VFNMS(LDK(KP198912367), T7V, T7Y);
cannam@95 1453 T8X = VFMA(LDK(KP923879532), T7K, T7D);
cannam@95 1454 T7L = VFNMS(LDK(KP923879532), T7K, T7D);
cannam@95 1455 T9c = VFNMS(LDK(KP098491403), T90, T91);
cannam@95 1456 T92 = VFMA(LDK(KP098491403), T91, T90);
cannam@95 1457 T9d = VFMA(LDK(KP098491403), T93, T94);
cannam@95 1458 T95 = VFNMS(LDK(KP098491403), T94, T93);
cannam@95 1459 T98 = VADD(T7S, T7Z);
cannam@95 1460 T80 = VSUB(T7S, T7Z);
cannam@95 1461 }
cannam@95 1462 {
cannam@95 1463 V T8V, T81, T8T, T8k, T97, T8L, T8Y, T8O, T8S, T8D;
cannam@95 1464 T8V = VFNMS(LDK(KP980785280), T80, T7L);
cannam@95 1465 T81 = VFMA(LDK(KP980785280), T80, T7L);
cannam@95 1466 T8T = VFNMS(LDK(KP820678790), T8c, T8j);
cannam@95 1467 T8k = VFMA(LDK(KP820678790), T8j, T8c);
cannam@95 1468 T97 = VFMA(LDK(KP923879532), T8K, T8H);
cannam@95 1469 T8L = VFNMS(LDK(KP923879532), T8K, T8H);
cannam@95 1470 T8Y = VADD(T8N, T8M);
cannam@95 1471 T8O = VSUB(T8M, T8N);
cannam@95 1472 T8S = VFMA(LDK(KP820678790), T8v, T8C);
cannam@95 1473 T8D = VFNMS(LDK(KP820678790), T8C, T8v);
cannam@95 1474 {
cannam@95 1475 V T8R, T8P, T8U, T8W, T8E, T8Q;
cannam@95 1476 {
cannam@95 1477 V T96, T9f, T9g, T8Z;
cannam@95 1478 T9a = VSUB(T95, T92);
cannam@95 1479 T96 = VADD(T92, T95);
cannam@95 1480 T9f = VFMA(LDK(KP980785280), T98, T97);
cannam@95 1481 T99 = VFNMS(LDK(KP980785280), T98, T97);
cannam@95 1482 T9e = VSUB(T9c, T9d);
cannam@95 1483 T9g = VADD(T9c, T9d);
cannam@95 1484 T8Z = VFMA(LDK(KP980785280), T8Y, T8X);
cannam@95 1485 T9b = VFNMS(LDK(KP980785280), T8Y, T8X);
cannam@95 1486 T8R = VFMA(LDK(KP980785280), T8O, T8L);
cannam@95 1487 T8P = VFNMS(LDK(KP980785280), T8O, T8L);
cannam@95 1488 T8U = VSUB(T8S, T8T);
cannam@95 1489 T8W = VADD(T8T, T8S);
cannam@95 1490 T8E = VSUB(T8k, T8D);
cannam@95 1491 T8Q = VADD(T8k, T8D);
cannam@95 1492 {
cannam@95 1493 V Tgx, Tgy, Tgz, TgA;
cannam@95 1494 Tgx = VFNMS(LDK(KP995184726), T9g, T9f);
cannam@95 1495 STM4(&(io[33]), Tgx, ovs, &(io[1]));
cannam@95 1496 STN4(&(io[32]), TeO, Tgx, TfG, Tgi, ovs);
cannam@95 1497 Tgy = VFMA(LDK(KP995184726), T96, T8Z);
cannam@95 1498 STM4(&(ro[1]), Tgy, ovs, &(ro[1]));
cannam@95 1499 STN4(&(ro[0]), TeL, Tgy, Tfv, Tgl, ovs);
cannam@95 1500 Tgz = VFNMS(LDK(KP995184726), T96, T8Z);
cannam@95 1501 STM4(&(ro[33]), Tgz, ovs, &(ro[1]));
cannam@95 1502 STN4(&(ro[32]), TeM, Tgz, Tfw, Tgm, ovs);
cannam@95 1503 TgA = VFMA(LDK(KP995184726), T9g, T9f);
cannam@95 1504 STM4(&(io[1]), TgA, ovs, &(io[1]));
cannam@95 1505 STN4(&(io[0]), TeN, TgA, TfF, Tgh, ovs);
cannam@95 1506 }
cannam@95 1507 }
cannam@95 1508 {
cannam@95 1509 V TgB, TgC, TgD, TgE;
cannam@95 1510 TgB = VFMA(LDK(KP773010453), T8W, T8V);
cannam@95 1511 STM4(&(ro[57]), TgB, ovs, &(ro[1]));
cannam@95 1512 STN4(&(ro[56]), TeS, TgB, Tfx, Tgn, ovs);
cannam@95 1513 TgC = VFNMS(LDK(KP773010453), T8W, T8V);
cannam@95 1514 STM4(&(ro[25]), TgC, ovs, &(ro[1]));
cannam@95 1515 STN4(&(ro[24]), TeR, TgC, Tfy, Tgo, ovs);
cannam@95 1516 TgD = VFMA(LDK(KP773010453), T8U, T8R);
cannam@95 1517 STM4(&(io[9]), TgD, ovs, &(io[1]));
cannam@95 1518 STN4(&(io[8]), TeT, TgD, Tfz, Tgp, ovs);
cannam@95 1519 TgE = VFNMS(LDK(KP773010453), T8U, T8R);
cannam@95 1520 STM4(&(io[41]), TgE, ovs, &(io[1]));
cannam@95 1521 STN4(&(io[40]), TeU, TgE, TfA, Tgq, ovs);
cannam@95 1522 {
cannam@95 1523 V TgF, TgG, TgH, TgI;
cannam@95 1524 TgF = VFMA(LDK(KP773010453), T8Q, T8P);
cannam@95 1525 STM4(&(io[57]), TgF, ovs, &(io[1]));
cannam@95 1526 STN4(&(io[56]), TeW, TgF, TfB, Tgr, ovs);
cannam@95 1527 TgG = VFNMS(LDK(KP773010453), T8Q, T8P);
cannam@95 1528 STM4(&(io[25]), TgG, ovs, &(io[1]));
cannam@95 1529 STN4(&(io[24]), TeV, TgG, TfC, Tgs, ovs);
cannam@95 1530 TgH = VFMA(LDK(KP773010453), T8E, T81);
cannam@95 1531 STM4(&(ro[9]), TgH, ovs, &(ro[1]));
cannam@95 1532 STN4(&(ro[8]), TeX, TgH, TfD, Tgt, ovs);
cannam@95 1533 TgI = VFNMS(LDK(KP773010453), T8E, T81);
cannam@95 1534 STM4(&(ro[41]), TgI, ovs, &(ro[1]));
cannam@95 1535 STN4(&(ro[40]), TeY, TgI, TfE, Tgu, ovs);
cannam@95 1536 }
cannam@95 1537 }
cannam@95 1538 }
cannam@95 1539 }
cannam@95 1540 }
cannam@95 1541 }
cannam@95 1542 }
cannam@95 1543 }
cannam@95 1544 }
cannam@95 1545 }
cannam@95 1546 {
cannam@95 1547 V TgJ, TgK, TgL, TgM;
cannam@95 1548 TgJ = VFMA(LDK(KP995184726), T9a, T99);
cannam@95 1549 STM4(&(io[17]), TgJ, ovs, &(io[1]));
cannam@95 1550 STN4(&(io[16]), TeQ, TgJ, TfI, Tgj, ovs);
cannam@95 1551 TgK = VFNMS(LDK(KP995184726), T9a, T99);
cannam@95 1552 STM4(&(io[49]), TgK, ovs, &(io[1]));
cannam@95 1553 STN4(&(io[48]), TeP, TgK, TfH, Tgk, ovs);
cannam@95 1554 TgL = VFMA(LDK(KP995184726), T9e, T9b);
cannam@95 1555 STM4(&(ro[17]), TgL, ovs, &(ro[1]));
cannam@95 1556 STN4(&(ro[16]), TeK, TgL, TfJ, Tgw, ovs);
cannam@95 1557 TgM = VFNMS(LDK(KP995184726), T9e, T9b);
cannam@95 1558 STM4(&(ro[49]), TgM, ovs, &(ro[1]));
cannam@95 1559 STN4(&(ro[48]), TeJ, TgM, TfK, Tgv, ovs);
cannam@95 1560 }
cannam@95 1561 }
cannam@95 1562 }
cannam@95 1563 VLEAVE();
cannam@95 1564 }
cannam@95 1565
cannam@95 1566 static const kdft_desc desc = { 64, XSIMD_STRING("n2sv_64"), {520, 0, 392, 0}, &GENUS, 0, 1, 0, 0 };
cannam@95 1567
cannam@95 1568 void XSIMD(codelet_n2sv_64) (planner *p) {
cannam@95 1569 X(kdft_register) (p, n2sv_64, &desc);
cannam@95 1570 }
cannam@95 1571
cannam@95 1572 #else /* HAVE_FMA */
cannam@95 1573
cannam@95 1574 /* Generated by: ../../../genfft/gen_notw.native -simd -compact -variables 4 -pipeline-latency 8 -n 64 -name n2sv_64 -with-ostride 1 -include n2s.h -store-multiple 4 */
cannam@95 1575
cannam@95 1576 /*
cannam@95 1577 * This function contains 912 FP additions, 248 FP multiplications,
cannam@95 1578 * (or, 808 additions, 144 multiplications, 104 fused multiply/add),
cannam@95 1579 * 260 stack variables, 15 constants, and 288 memory accesses
cannam@95 1580 */
cannam@95 1581 #include "n2s.h"
cannam@95 1582
cannam@95 1583 static void n2sv_64(const R *ri, const R *ii, R *ro, R *io, stride is, stride os, INT v, INT ivs, INT ovs)
cannam@95 1584 {
cannam@95 1585 DVK(KP773010453, +0.773010453362736960810906609758469800971041293);
cannam@95 1586 DVK(KP634393284, +0.634393284163645498215171613225493370675687095);
cannam@95 1587 DVK(KP098017140, +0.098017140329560601994195563888641845861136673);
cannam@95 1588 DVK(KP995184726, +0.995184726672196886244836953109479921575474869);
cannam@95 1589 DVK(KP881921264, +0.881921264348355029712756863660388349508442621);
cannam@95 1590 DVK(KP471396736, +0.471396736825997648556387625905254377657460319);
cannam@95 1591 DVK(KP290284677, +0.290284677254462367636192375817395274691476278);
cannam@95 1592 DVK(KP956940335, +0.956940335732208864935797886980269969482849206);
cannam@95 1593 DVK(KP831469612, +0.831469612302545237078788377617905756738560812);
cannam@95 1594 DVK(KP555570233, +0.555570233019602224742830813948532874374937191);
cannam@95 1595 DVK(KP195090322, +0.195090322016128267848284868477022240927691618);
cannam@95 1596 DVK(KP980785280, +0.980785280403230449126182236134239036973933731);
cannam@95 1597 DVK(KP923879532, +0.923879532511286756128183189396788286822416626);
cannam@95 1598 DVK(KP382683432, +0.382683432365089771728459984030398866761344562);
cannam@95 1599 DVK(KP707106781, +0.707106781186547524400844362104849039284835938);
cannam@95 1600 {
cannam@95 1601 INT i;
cannam@95 1602 for (i = v; i > 0; i = i - (2 * VL), ri = ri + ((2 * VL) * ivs), ii = ii + ((2 * VL) * ivs), ro = ro + ((2 * VL) * ovs), io = io + ((2 * VL) * ovs), MAKE_VOLATILE_STRIDE(256, is), MAKE_VOLATILE_STRIDE(256, os)) {
cannam@95 1603 V T37, T7B, T8F, T5Z, Tf, Td9, TbB, TcB, T62, T7C, T2i, TdH, Tah, Tcb, T3e;
cannam@95 1604 V T8G, Tu, TdI, Tak, TbD, Tan, TbC, T2x, Tda, T3m, T65, T7G, T8J, T7J, T8I;
cannam@95 1605 V T3t, T64, TK, Tdd, Tas, Tce, Tav, Tcf, T2N, Tdc, T3G, T6G, T7O, T9k, T7R;
cannam@95 1606 V T9l, T3N, T6H, T1L, Tdv, Tbs, Tcw, TdC, Teo, T5j, T6V, T5Q, T6Y, T8y, T9C;
cannam@95 1607 V Tbb, Tct, T8n, T9z, TZ, Tdf, Taz, Tch, TaC, Tci, T32, Tdg, T3Z, T6J, T7V;
cannam@95 1608 V T9n, T7Y, T9o, T46, T6K, T1g, Tdp, Tb1, Tcm, Tdm, Tej, T4q, T6R, T4X, T6O;
cannam@95 1609 V T8f, T9s, TaK, Tcp, T84, T9v, T1v, Tdn, Tb4, Tcq, Tds, Tek, T4N, T6P, T50;
cannam@95 1610 V T6S, T8i, T9w, TaV, Tcn, T8b, T9t, T20, TdD, Tbv, Tcu, Tdy, Tep, T5G, T6Z;
cannam@95 1611 V T5T, T6W, T8B, T9A, Tbm, Tcx, T8u, T9D;
cannam@95 1612 {
cannam@95 1613 V T3, T35, T26, T5Y, T6, T5X, T29, T36, Ta, T39, T2d, T38, Td, T3b, T2g;
cannam@95 1614 V T3c;
cannam@95 1615 {
cannam@95 1616 V T1, T2, T24, T25;
cannam@95 1617 T1 = LD(&(ri[0]), ivs, &(ri[0]));
cannam@95 1618 T2 = LD(&(ri[WS(is, 32)]), ivs, &(ri[0]));
cannam@95 1619 T3 = VADD(T1, T2);
cannam@95 1620 T35 = VSUB(T1, T2);
cannam@95 1621 T24 = LD(&(ii[0]), ivs, &(ii[0]));
cannam@95 1622 T25 = LD(&(ii[WS(is, 32)]), ivs, &(ii[0]));
cannam@95 1623 T26 = VADD(T24, T25);
cannam@95 1624 T5Y = VSUB(T24, T25);
cannam@95 1625 }
cannam@95 1626 {
cannam@95 1627 V T4, T5, T27, T28;
cannam@95 1628 T4 = LD(&(ri[WS(is, 16)]), ivs, &(ri[0]));
cannam@95 1629 T5 = LD(&(ri[WS(is, 48)]), ivs, &(ri[0]));
cannam@95 1630 T6 = VADD(T4, T5);
cannam@95 1631 T5X = VSUB(T4, T5);
cannam@95 1632 T27 = LD(&(ii[WS(is, 16)]), ivs, &(ii[0]));
cannam@95 1633 T28 = LD(&(ii[WS(is, 48)]), ivs, &(ii[0]));
cannam@95 1634 T29 = VADD(T27, T28);
cannam@95 1635 T36 = VSUB(T27, T28);
cannam@95 1636 }
cannam@95 1637 {
cannam@95 1638 V T8, T9, T2b, T2c;
cannam@95 1639 T8 = LD(&(ri[WS(is, 8)]), ivs, &(ri[0]));
cannam@95 1640 T9 = LD(&(ri[WS(is, 40)]), ivs, &(ri[0]));
cannam@95 1641 Ta = VADD(T8, T9);
cannam@95 1642 T39 = VSUB(T8, T9);
cannam@95 1643 T2b = LD(&(ii[WS(is, 8)]), ivs, &(ii[0]));
cannam@95 1644 T2c = LD(&(ii[WS(is, 40)]), ivs, &(ii[0]));
cannam@95 1645 T2d = VADD(T2b, T2c);
cannam@95 1646 T38 = VSUB(T2b, T2c);
cannam@95 1647 }
cannam@95 1648 {
cannam@95 1649 V Tb, Tc, T2e, T2f;
cannam@95 1650 Tb = LD(&(ri[WS(is, 56)]), ivs, &(ri[0]));
cannam@95 1651 Tc = LD(&(ri[WS(is, 24)]), ivs, &(ri[0]));
cannam@95 1652 Td = VADD(Tb, Tc);
cannam@95 1653 T3b = VSUB(Tb, Tc);
cannam@95 1654 T2e = LD(&(ii[WS(is, 56)]), ivs, &(ii[0]));
cannam@95 1655 T2f = LD(&(ii[WS(is, 24)]), ivs, &(ii[0]));
cannam@95 1656 T2g = VADD(T2e, T2f);
cannam@95 1657 T3c = VSUB(T2e, T2f);
cannam@95 1658 }
cannam@95 1659 {
cannam@95 1660 V T7, Te, T2a, T2h;
cannam@95 1661 T37 = VSUB(T35, T36);
cannam@95 1662 T7B = VADD(T35, T36);
cannam@95 1663 T8F = VSUB(T5Y, T5X);
cannam@95 1664 T5Z = VADD(T5X, T5Y);
cannam@95 1665 T7 = VADD(T3, T6);
cannam@95 1666 Te = VADD(Ta, Td);
cannam@95 1667 Tf = VADD(T7, Te);
cannam@95 1668 Td9 = VSUB(T7, Te);
cannam@95 1669 {
cannam@95 1670 V Tbz, TbA, T60, T61;
cannam@95 1671 Tbz = VSUB(T26, T29);
cannam@95 1672 TbA = VSUB(Td, Ta);
cannam@95 1673 TbB = VSUB(Tbz, TbA);
cannam@95 1674 TcB = VADD(TbA, Tbz);
cannam@95 1675 T60 = VSUB(T3b, T3c);
cannam@95 1676 T61 = VADD(T39, T38);
cannam@95 1677 T62 = VMUL(LDK(KP707106781), VSUB(T60, T61));
cannam@95 1678 T7C = VMUL(LDK(KP707106781), VADD(T61, T60));
cannam@95 1679 }
cannam@95 1680 T2a = VADD(T26, T29);
cannam@95 1681 T2h = VADD(T2d, T2g);
cannam@95 1682 T2i = VADD(T2a, T2h);
cannam@95 1683 TdH = VSUB(T2a, T2h);
cannam@95 1684 {
cannam@95 1685 V Taf, Tag, T3a, T3d;
cannam@95 1686 Taf = VSUB(T3, T6);
cannam@95 1687 Tag = VSUB(T2d, T2g);
cannam@95 1688 Tah = VSUB(Taf, Tag);
cannam@95 1689 Tcb = VADD(Taf, Tag);
cannam@95 1690 T3a = VSUB(T38, T39);
cannam@95 1691 T3d = VADD(T3b, T3c);
cannam@95 1692 T3e = VMUL(LDK(KP707106781), VSUB(T3a, T3d));
cannam@95 1693 T8G = VMUL(LDK(KP707106781), VADD(T3a, T3d));
cannam@95 1694 }
cannam@95 1695 }
cannam@95 1696 }
cannam@95 1697 {
cannam@95 1698 V Ti, T3j, T2l, T3h, Tl, T3g, T2o, T3k, Tp, T3q, T2s, T3o, Ts, T3n, T2v;
cannam@95 1699 V T3r;
cannam@95 1700 {
cannam@95 1701 V Tg, Th, T2j, T2k;
cannam@95 1702 Tg = LD(&(ri[WS(is, 4)]), ivs, &(ri[0]));
cannam@95 1703 Th = LD(&(ri[WS(is, 36)]), ivs, &(ri[0]));
cannam@95 1704 Ti = VADD(Tg, Th);
cannam@95 1705 T3j = VSUB(Tg, Th);
cannam@95 1706 T2j = LD(&(ii[WS(is, 4)]), ivs, &(ii[0]));
cannam@95 1707 T2k = LD(&(ii[WS(is, 36)]), ivs, &(ii[0]));
cannam@95 1708 T2l = VADD(T2j, T2k);
cannam@95 1709 T3h = VSUB(T2j, T2k);
cannam@95 1710 }
cannam@95 1711 {
cannam@95 1712 V Tj, Tk, T2m, T2n;
cannam@95 1713 Tj = LD(&(ri[WS(is, 20)]), ivs, &(ri[0]));
cannam@95 1714 Tk = LD(&(ri[WS(is, 52)]), ivs, &(ri[0]));
cannam@95 1715 Tl = VADD(Tj, Tk);
cannam@95 1716 T3g = VSUB(Tj, Tk);
cannam@95 1717 T2m = LD(&(ii[WS(is, 20)]), ivs, &(ii[0]));
cannam@95 1718 T2n = LD(&(ii[WS(is, 52)]), ivs, &(ii[0]));
cannam@95 1719 T2o = VADD(T2m, T2n);
cannam@95 1720 T3k = VSUB(T2m, T2n);
cannam@95 1721 }
cannam@95 1722 {
cannam@95 1723 V Tn, To, T2q, T2r;
cannam@95 1724 Tn = LD(&(ri[WS(is, 60)]), ivs, &(ri[0]));
cannam@95 1725 To = LD(&(ri[WS(is, 28)]), ivs, &(ri[0]));
cannam@95 1726 Tp = VADD(Tn, To);
cannam@95 1727 T3q = VSUB(Tn, To);
cannam@95 1728 T2q = LD(&(ii[WS(is, 60)]), ivs, &(ii[0]));
cannam@95 1729 T2r = LD(&(ii[WS(is, 28)]), ivs, &(ii[0]));
cannam@95 1730 T2s = VADD(T2q, T2r);
cannam@95 1731 T3o = VSUB(T2q, T2r);
cannam@95 1732 }
cannam@95 1733 {
cannam@95 1734 V Tq, Tr, T2t, T2u;
cannam@95 1735 Tq = LD(&(ri[WS(is, 12)]), ivs, &(ri[0]));
cannam@95 1736 Tr = LD(&(ri[WS(is, 44)]), ivs, &(ri[0]));
cannam@95 1737 Ts = VADD(Tq, Tr);
cannam@95 1738 T3n = VSUB(Tq, Tr);
cannam@95 1739 T2t = LD(&(ii[WS(is, 12)]), ivs, &(ii[0]));
cannam@95 1740 T2u = LD(&(ii[WS(is, 44)]), ivs, &(ii[0]));
cannam@95 1741 T2v = VADD(T2t, T2u);
cannam@95 1742 T3r = VSUB(T2t, T2u);
cannam@95 1743 }
cannam@95 1744 {
cannam@95 1745 V Tm, Tt, Tai, Taj;
cannam@95 1746 Tm = VADD(Ti, Tl);
cannam@95 1747 Tt = VADD(Tp, Ts);
cannam@95 1748 Tu = VADD(Tm, Tt);
cannam@95 1749 TdI = VSUB(Tt, Tm);
cannam@95 1750 Tai = VSUB(T2l, T2o);
cannam@95 1751 Taj = VSUB(Ti, Tl);
cannam@95 1752 Tak = VSUB(Tai, Taj);
cannam@95 1753 TbD = VADD(Taj, Tai);
cannam@95 1754 }
cannam@95 1755 {
cannam@95 1756 V Tal, Tam, T2p, T2w;
cannam@95 1757 Tal = VSUB(Tp, Ts);
cannam@95 1758 Tam = VSUB(T2s, T2v);
cannam@95 1759 Tan = VADD(Tal, Tam);
cannam@95 1760 TbC = VSUB(Tal, Tam);
cannam@95 1761 T2p = VADD(T2l, T2o);
cannam@95 1762 T2w = VADD(T2s, T2v);
cannam@95 1763 T2x = VADD(T2p, T2w);
cannam@95 1764 Tda = VSUB(T2p, T2w);
cannam@95 1765 }
cannam@95 1766 {
cannam@95 1767 V T3i, T3l, T7E, T7F;
cannam@95 1768 T3i = VADD(T3g, T3h);
cannam@95 1769 T3l = VSUB(T3j, T3k);
cannam@95 1770 T3m = VFNMS(LDK(KP923879532), T3l, VMUL(LDK(KP382683432), T3i));
cannam@95 1771 T65 = VFMA(LDK(KP923879532), T3i, VMUL(LDK(KP382683432), T3l));
cannam@95 1772 T7E = VSUB(T3h, T3g);
cannam@95 1773 T7F = VADD(T3j, T3k);
cannam@95 1774 T7G = VFNMS(LDK(KP382683432), T7F, VMUL(LDK(KP923879532), T7E));
cannam@95 1775 T8J = VFMA(LDK(KP382683432), T7E, VMUL(LDK(KP923879532), T7F));
cannam@95 1776 }
cannam@95 1777 {
cannam@95 1778 V T7H, T7I, T3p, T3s;
cannam@95 1779 T7H = VSUB(T3o, T3n);
cannam@95 1780 T7I = VADD(T3q, T3r);
cannam@95 1781 T7J = VFMA(LDK(KP923879532), T7H, VMUL(LDK(KP382683432), T7I));
cannam@95 1782 T8I = VFNMS(LDK(KP382683432), T7H, VMUL(LDK(KP923879532), T7I));
cannam@95 1783 T3p = VADD(T3n, T3o);
cannam@95 1784 T3s = VSUB(T3q, T3r);
cannam@95 1785 T3t = VFMA(LDK(KP382683432), T3p, VMUL(LDK(KP923879532), T3s));
cannam@95 1786 T64 = VFNMS(LDK(KP923879532), T3p, VMUL(LDK(KP382683432), T3s));
cannam@95 1787 }
cannam@95 1788 }
cannam@95 1789 {
cannam@95 1790 V Ty, T3H, T2B, T3x, TB, T3w, T2E, T3I, TI, T3L, T2L, T3B, TF, T3K, T2I;
cannam@95 1791 V T3E;
cannam@95 1792 {
cannam@95 1793 V Tw, Tx, T2C, T2D;
cannam@95 1794 Tw = LD(&(ri[WS(is, 2)]), ivs, &(ri[0]));
cannam@95 1795 Tx = LD(&(ri[WS(is, 34)]), ivs, &(ri[0]));
cannam@95 1796 Ty = VADD(Tw, Tx);
cannam@95 1797 T3H = VSUB(Tw, Tx);
cannam@95 1798 {
cannam@95 1799 V T2z, T2A, Tz, TA;
cannam@95 1800 T2z = LD(&(ii[WS(is, 2)]), ivs, &(ii[0]));
cannam@95 1801 T2A = LD(&(ii[WS(is, 34)]), ivs, &(ii[0]));
cannam@95 1802 T2B = VADD(T2z, T2A);
cannam@95 1803 T3x = VSUB(T2z, T2A);
cannam@95 1804 Tz = LD(&(ri[WS(is, 18)]), ivs, &(ri[0]));
cannam@95 1805 TA = LD(&(ri[WS(is, 50)]), ivs, &(ri[0]));
cannam@95 1806 TB = VADD(Tz, TA);
cannam@95 1807 T3w = VSUB(Tz, TA);
cannam@95 1808 }
cannam@95 1809 T2C = LD(&(ii[WS(is, 18)]), ivs, &(ii[0]));
cannam@95 1810 T2D = LD(&(ii[WS(is, 50)]), ivs, &(ii[0]));
cannam@95 1811 T2E = VADD(T2C, T2D);
cannam@95 1812 T3I = VSUB(T2C, T2D);
cannam@95 1813 {
cannam@95 1814 V TG, TH, T3z, T2J, T2K, T3A;
cannam@95 1815 TG = LD(&(ri[WS(is, 58)]), ivs, &(ri[0]));
cannam@95 1816 TH = LD(&(ri[WS(is, 26)]), ivs, &(ri[0]));
cannam@95 1817 T3z = VSUB(TG, TH);
cannam@95 1818 T2J = LD(&(ii[WS(is, 58)]), ivs, &(ii[0]));
cannam@95 1819 T2K = LD(&(ii[WS(is, 26)]), ivs, &(ii[0]));
cannam@95 1820 T3A = VSUB(T2J, T2K);
cannam@95 1821 TI = VADD(TG, TH);
cannam@95 1822 T3L = VADD(T3z, T3A);
cannam@95 1823 T2L = VADD(T2J, T2K);
cannam@95 1824 T3B = VSUB(T3z, T3A);
cannam@95 1825 }
cannam@95 1826 {
cannam@95 1827 V TD, TE, T3C, T2G, T2H, T3D;
cannam@95 1828 TD = LD(&(ri[WS(is, 10)]), ivs, &(ri[0]));
cannam@95 1829 TE = LD(&(ri[WS(is, 42)]), ivs, &(ri[0]));
cannam@95 1830 T3C = VSUB(TD, TE);
cannam@95 1831 T2G = LD(&(ii[WS(is, 10)]), ivs, &(ii[0]));
cannam@95 1832 T2H = LD(&(ii[WS(is, 42)]), ivs, &(ii[0]));
cannam@95 1833 T3D = VSUB(T2G, T2H);
cannam@95 1834 TF = VADD(TD, TE);
cannam@95 1835 T3K = VSUB(T3D, T3C);
cannam@95 1836 T2I = VADD(T2G, T2H);
cannam@95 1837 T3E = VADD(T3C, T3D);
cannam@95 1838 }
cannam@95 1839 }
cannam@95 1840 {
cannam@95 1841 V TC, TJ, Taq, Tar;
cannam@95 1842 TC = VADD(Ty, TB);
cannam@95 1843 TJ = VADD(TF, TI);
cannam@95 1844 TK = VADD(TC, TJ);
cannam@95 1845 Tdd = VSUB(TC, TJ);
cannam@95 1846 Taq = VSUB(T2B, T2E);
cannam@95 1847 Tar = VSUB(TI, TF);
cannam@95 1848 Tas = VSUB(Taq, Tar);
cannam@95 1849 Tce = VADD(Tar, Taq);
cannam@95 1850 }
cannam@95 1851 {
cannam@95 1852 V Tat, Tau, T2F, T2M;
cannam@95 1853 Tat = VSUB(Ty, TB);
cannam@95 1854 Tau = VSUB(T2I, T2L);
cannam@95 1855 Tav = VSUB(Tat, Tau);
cannam@95 1856 Tcf = VADD(Tat, Tau);
cannam@95 1857 T2F = VADD(T2B, T2E);
cannam@95 1858 T2M = VADD(T2I, T2L);
cannam@95 1859 T2N = VADD(T2F, T2M);
cannam@95 1860 Tdc = VSUB(T2F, T2M);
cannam@95 1861 }
cannam@95 1862 {
cannam@95 1863 V T3y, T3F, T7M, T7N;
cannam@95 1864 T3y = VADD(T3w, T3x);
cannam@95 1865 T3F = VMUL(LDK(KP707106781), VSUB(T3B, T3E));
cannam@95 1866 T3G = VSUB(T3y, T3F);
cannam@95 1867 T6G = VADD(T3y, T3F);
cannam@95 1868 T7M = VSUB(T3x, T3w);
cannam@95 1869 T7N = VMUL(LDK(KP707106781), VADD(T3K, T3L));
cannam@95 1870 T7O = VSUB(T7M, T7N);
cannam@95 1871 T9k = VADD(T7M, T7N);
cannam@95 1872 }
cannam@95 1873 {
cannam@95 1874 V T7P, T7Q, T3J, T3M;
cannam@95 1875 T7P = VADD(T3H, T3I);
cannam@95 1876 T7Q = VMUL(LDK(KP707106781), VADD(T3E, T3B));
cannam@95 1877 T7R = VSUB(T7P, T7Q);
cannam@95 1878 T9l = VADD(T7P, T7Q);
cannam@95 1879 T3J = VSUB(T3H, T3I);
cannam@95 1880 T3M = VMUL(LDK(KP707106781), VSUB(T3K, T3L));
cannam@95 1881 T3N = VSUB(T3J, T3M);
cannam@95 1882 T6H = VADD(T3J, T3M);
cannam@95 1883 }
cannam@95 1884 }
cannam@95 1885 {
cannam@95 1886 V T1z, T53, T5L, Tbo, T1C, T5I, T56, Tbp, T1J, Tb9, T5h, T5N, T1G, Tb8, T5c;
cannam@95 1887 V T5O;
cannam@95 1888 {
cannam@95 1889 V T1x, T1y, T54, T55;
cannam@95 1890 T1x = LD(&(ri[WS(is, 63)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1891 T1y = LD(&(ri[WS(is, 31)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1892 T1z = VADD(T1x, T1y);
cannam@95 1893 T53 = VSUB(T1x, T1y);
cannam@95 1894 {
cannam@95 1895 V T5J, T5K, T1A, T1B;
cannam@95 1896 T5J = LD(&(ii[WS(is, 63)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1897 T5K = LD(&(ii[WS(is, 31)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1898 T5L = VSUB(T5J, T5K);
cannam@95 1899 Tbo = VADD(T5J, T5K);
cannam@95 1900 T1A = LD(&(ri[WS(is, 15)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1901 T1B = LD(&(ri[WS(is, 47)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1902 T1C = VADD(T1A, T1B);
cannam@95 1903 T5I = VSUB(T1A, T1B);
cannam@95 1904 }
cannam@95 1905 T54 = LD(&(ii[WS(is, 15)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1906 T55 = LD(&(ii[WS(is, 47)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1907 T56 = VSUB(T54, T55);
cannam@95 1908 Tbp = VADD(T54, T55);
cannam@95 1909 {
cannam@95 1910 V T1H, T1I, T5d, T5e, T5f, T5g;
cannam@95 1911 T1H = LD(&(ri[WS(is, 55)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1912 T1I = LD(&(ri[WS(is, 23)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1913 T5d = VSUB(T1H, T1I);
cannam@95 1914 T5e = LD(&(ii[WS(is, 55)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1915 T5f = LD(&(ii[WS(is, 23)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1916 T5g = VSUB(T5e, T5f);
cannam@95 1917 T1J = VADD(T1H, T1I);
cannam@95 1918 Tb9 = VADD(T5e, T5f);
cannam@95 1919 T5h = VADD(T5d, T5g);
cannam@95 1920 T5N = VSUB(T5d, T5g);
cannam@95 1921 }
cannam@95 1922 {
cannam@95 1923 V T1E, T1F, T5b, T58, T59, T5a;
cannam@95 1924 T1E = LD(&(ri[WS(is, 7)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1925 T1F = LD(&(ri[WS(is, 39)]), ivs, &(ri[WS(is, 1)]));
cannam@95 1926 T5b = VSUB(T1E, T1F);
cannam@95 1927 T58 = LD(&(ii[WS(is, 7)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1928 T59 = LD(&(ii[WS(is, 39)]), ivs, &(ii[WS(is, 1)]));
cannam@95 1929 T5a = VSUB(T58, T59);
cannam@95 1930 T1G = VADD(T1E, T1F);
cannam@95 1931 Tb8 = VADD(T58, T59);
cannam@95 1932 T5c = VSUB(T5a, T5b);
cannam@95 1933 T5O = VADD(T5b, T5a);
cannam@95 1934 }
cannam@95 1935 }
cannam@95 1936 {
cannam@95 1937 V T1D, T1K, Tbq, Tbr;
cannam@95 1938 T1D = VADD(T1z, T1C);
cannam@95 1939 T1K = VADD(T1G, T1J);
cannam@95 1940 T1L = VADD(T1D, T1K);
cannam@95 1941 Tdv = VSUB(T1D, T1K);
cannam@95 1942 Tbq = VSUB(Tbo, Tbp);
cannam@95 1943 Tbr = VSUB(T1J, T1G);
cannam@95 1944 Tbs = VSUB(Tbq, Tbr);
cannam@95 1945 Tcw = VADD(Tbr, Tbq);
cannam@95 1946 }
cannam@95 1947 {
cannam@95 1948 V TdA, TdB, T57, T5i;
cannam@95 1949 TdA = VADD(Tbo, Tbp);
cannam@95 1950 TdB = VADD(Tb8, Tb9);
cannam@95 1951 TdC = VSUB(TdA, TdB);
cannam@95 1952 Teo = VADD(TdA, TdB);
cannam@95 1953 T57 = VSUB(T53, T56);
cannam@95 1954 T5i = VMUL(LDK(KP707106781), VSUB(T5c, T5h));
cannam@95 1955 T5j = VSUB(T57, T5i);
cannam@95 1956 T6V = VADD(T57, T5i);
cannam@95 1957 }
cannam@95 1958 {
cannam@95 1959 V T5M, T5P, T8w, T8x;
cannam@95 1960 T5M = VADD(T5I, T5L);
cannam@95 1961 T5P = VMUL(LDK(KP707106781), VSUB(T5N, T5O));
cannam@95 1962 T5Q = VSUB(T5M, T5P);
cannam@95 1963 T6Y = VADD(T5M, T5P);
cannam@95 1964 T8w = VSUB(T5L, T5I);
cannam@95 1965 T8x = VMUL(LDK(KP707106781), VADD(T5c, T5h));
cannam@95 1966 T8y = VSUB(T8w, T8x);
cannam@95 1967 T9C = VADD(T8w, T8x);
cannam@95 1968 }
cannam@95 1969 {
cannam@95 1970 V Tb7, Tba, T8l, T8m;
cannam@95 1971 Tb7 = VSUB(T1z, T1C);
cannam@95 1972 Tba = VSUB(Tb8, Tb9);
cannam@95 1973 Tbb = VSUB(Tb7, Tba);
cannam@95 1974 Tct = VADD(Tb7, Tba);
cannam@95 1975 T8l = VADD(T53, T56);
cannam@95 1976 T8m = VMUL(LDK(KP707106781), VADD(T5O, T5N));
cannam@95 1977 T8n = VSUB(T8l, T8m);
cannam@95 1978 T9z = VADD(T8l, T8m);
cannam@95 1979 }
cannam@95 1980 }
cannam@95 1981 {
cannam@95 1982 V TN, T40, T2Q, T3Q, TQ, T3P, T2T, T41, TX, T44, T30, T3U, TU, T43, T2X;
cannam@95 1983 V T3X;
cannam@95 1984 {
cannam@95 1985 V TL, TM, T2R, T2S;
cannam@95 1986 TL = LD(&(ri[WS(is, 62)]), ivs, &(ri[0]));
cannam@95 1987 TM = LD(&(ri[WS(is, 30)]), ivs, &(ri[0]));
cannam@95 1988 TN = VADD(TL, TM);
cannam@95 1989 T40 = VSUB(TL, TM);
cannam@95 1990 {
cannam@95 1991 V T2O, T2P, TO, TP;
cannam@95 1992 T2O = LD(&(ii[WS(is, 62)]), ivs, &(ii[0]));
cannam@95 1993 T2P = LD(&(ii[WS(is, 30)]), ivs, &(ii[0]));
cannam@95 1994 T2Q = VADD(T2O, T2P);
cannam@95 1995 T3Q = VSUB(T2O, T2P);
cannam@95 1996 TO = LD(&(ri[WS(is, 14)]), ivs, &(ri[0]));
cannam@95 1997 TP = LD(&(ri[WS(is, 46)]), ivs, &(ri[0]));
cannam@95 1998 TQ = VADD(TO, TP);
cannam@95 1999 T3P = VSUB(TO, TP);
cannam@95 2000 }
cannam@95 2001 T2R = LD(&(ii[WS(is, 14)]), ivs, &(ii[0]));
cannam@95 2002 T2S = LD(&(ii[WS(is, 46)]), ivs, &(ii[0]));
cannam@95 2003 T2T = VADD(T2R, T2S);
cannam@95 2004 T41 = VSUB(T2R, T2S);
cannam@95 2005 {
cannam@95 2006 V TV, TW, T3S, T2Y, T2Z, T3T;
cannam@95 2007 TV = LD(&(ri[WS(is, 54)]), ivs, &(ri[0]));
cannam@95 2008 TW = LD(&(ri[WS(is, 22)]), ivs, &(ri[0]));
cannam@95 2009 T3S = VSUB(TV, TW);
cannam@95 2010 T2Y = LD(&(ii[WS(is, 54)]), ivs, &(ii[0]));
cannam@95 2011 T2Z = LD(&(ii[WS(is, 22)]), ivs, &(ii[0]));
cannam@95 2012 T3T = VSUB(T2Y, T2Z);
cannam@95 2013 TX = VADD(TV, TW);
cannam@95 2014 T44 = VADD(T3S, T3T);
cannam@95 2015 T30 = VADD(T2Y, T2Z);
cannam@95 2016 T3U = VSUB(T3S, T3T);
cannam@95 2017 }
cannam@95 2018 {
cannam@95 2019 V TS, TT, T3V, T2V, T2W, T3W;
cannam@95 2020 TS = LD(&(ri[WS(is, 6)]), ivs, &(ri[0]));
cannam@95 2021 TT = LD(&(ri[WS(is, 38)]), ivs, &(ri[0]));
cannam@95 2022 T3V = VSUB(TS, TT);
cannam@95 2023 T2V = LD(&(ii[WS(is, 6)]), ivs, &(ii[0]));
cannam@95 2024 T2W = LD(&(ii[WS(is, 38)]), ivs, &(ii[0]));
cannam@95 2025 T3W = VSUB(T2V, T2W);
cannam@95 2026 TU = VADD(TS, TT);
cannam@95 2027 T43 = VSUB(T3W, T3V);
cannam@95 2028 T2X = VADD(T2V, T2W);
cannam@95 2029 T3X = VADD(T3V, T3W);
cannam@95 2030 }
cannam@95 2031 }
cannam@95 2032 {
cannam@95 2033 V TR, TY, Tax, Tay;
cannam@95 2034 TR = VADD(TN, TQ);
cannam@95 2035 TY = VADD(TU, TX);
cannam@95 2036 TZ = VADD(TR, TY);
cannam@95 2037 Tdf = VSUB(TR, TY);
cannam@95 2038 Tax = VSUB(T2Q, T2T);
cannam@95 2039 Tay = VSUB(TX, TU);
cannam@95 2040 Taz = VSUB(Tax, Tay);
cannam@95 2041 Tch = VADD(Tay, Tax);
cannam@95 2042 }
cannam@95 2043 {
cannam@95 2044 V TaA, TaB, T2U, T31;
cannam@95 2045 TaA = VSUB(TN, TQ);
cannam@95 2046 TaB = VSUB(T2X, T30);
cannam@95 2047 TaC = VSUB(TaA, TaB);
cannam@95 2048 Tci = VADD(TaA, TaB);
cannam@95 2049 T2U = VADD(T2Q, T2T);
cannam@95 2050 T31 = VADD(T2X, T30);
cannam@95 2051 T32 = VADD(T2U, T31);
cannam@95 2052 Tdg = VSUB(T2U, T31);
cannam@95 2053 }
cannam@95 2054 {
cannam@95 2055 V T3R, T3Y, T7T, T7U;
cannam@95 2056 T3R = VADD(T3P, T3Q);
cannam@95 2057 T3Y = VMUL(LDK(KP707106781), VSUB(T3U, T3X));
cannam@95 2058 T3Z = VSUB(T3R, T3Y);
cannam@95 2059 T6J = VADD(T3R, T3Y);
cannam@95 2060 T7T = VADD(T40, T41);
cannam@95 2061 T7U = VMUL(LDK(KP707106781), VADD(T3X, T3U));
cannam@95 2062 T7V = VSUB(T7T, T7U);
cannam@95 2063 T9n = VADD(T7T, T7U);
cannam@95 2064 }
cannam@95 2065 {
cannam@95 2066 V T7W, T7X, T42, T45;
cannam@95 2067 T7W = VSUB(T3Q, T3P);
cannam@95 2068 T7X = VMUL(LDK(KP707106781), VADD(T43, T44));
cannam@95 2069 T7Y = VSUB(T7W, T7X);
cannam@95 2070 T9o = VADD(T7W, T7X);
cannam@95 2071 T42 = VSUB(T40, T41);
cannam@95 2072 T45 = VMUL(LDK(KP707106781), VSUB(T43, T44));
cannam@95 2073 T46 = VSUB(T42, T45);
cannam@95 2074 T6K = VADD(T42, T45);
cannam@95 2075 }
cannam@95 2076 }
cannam@95 2077 {
cannam@95 2078 V T14, T4P, T4d, TaG, T17, T4a, T4S, TaH, T1e, TaZ, T4j, T4V, T1b, TaY, T4o;
cannam@95 2079 V T4U;
cannam@95 2080 {
cannam@95 2081 V T12, T13, T4Q, T4R;
cannam@95 2082 T12 = LD(&(ri[WS(is, 1)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2083 T13 = LD(&(ri[WS(is, 33)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2084 T14 = VADD(T12, T13);
cannam@95 2085 T4P = VSUB(T12, T13);
cannam@95 2086 {
cannam@95 2087 V T4b, T4c, T15, T16;
cannam@95 2088 T4b = LD(&(ii[WS(is, 1)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2089 T4c = LD(&(ii[WS(is, 33)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2090 T4d = VSUB(T4b, T4c);
cannam@95 2091 TaG = VADD(T4b, T4c);
cannam@95 2092 T15 = LD(&(ri[WS(is, 17)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2093 T16 = LD(&(ri[WS(is, 49)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2094 T17 = VADD(T15, T16);
cannam@95 2095 T4a = VSUB(T15, T16);
cannam@95 2096 }
cannam@95 2097 T4Q = LD(&(ii[WS(is, 17)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2098 T4R = LD(&(ii[WS(is, 49)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2099 T4S = VSUB(T4Q, T4R);
cannam@95 2100 TaH = VADD(T4Q, T4R);
cannam@95 2101 {
cannam@95 2102 V T1c, T1d, T4f, T4g, T4h, T4i;
cannam@95 2103 T1c = LD(&(ri[WS(is, 57)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2104 T1d = LD(&(ri[WS(is, 25)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2105 T4f = VSUB(T1c, T1d);
cannam@95 2106 T4g = LD(&(ii[WS(is, 57)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2107 T4h = LD(&(ii[WS(is, 25)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2108 T4i = VSUB(T4g, T4h);
cannam@95 2109 T1e = VADD(T1c, T1d);
cannam@95 2110 TaZ = VADD(T4g, T4h);
cannam@95 2111 T4j = VSUB(T4f, T4i);
cannam@95 2112 T4V = VADD(T4f, T4i);
cannam@95 2113 }
cannam@95 2114 {
cannam@95 2115 V T19, T1a, T4k, T4l, T4m, T4n;
cannam@95 2116 T19 = LD(&(ri[WS(is, 9)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2117 T1a = LD(&(ri[WS(is, 41)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2118 T4k = VSUB(T19, T1a);
cannam@95 2119 T4l = LD(&(ii[WS(is, 9)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2120 T4m = LD(&(ii[WS(is, 41)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2121 T4n = VSUB(T4l, T4m);
cannam@95 2122 T1b = VADD(T19, T1a);
cannam@95 2123 TaY = VADD(T4l, T4m);
cannam@95 2124 T4o = VADD(T4k, T4n);
cannam@95 2125 T4U = VSUB(T4n, T4k);
cannam@95 2126 }
cannam@95 2127 }
cannam@95 2128 {
cannam@95 2129 V T18, T1f, TaX, Tb0;
cannam@95 2130 T18 = VADD(T14, T17);
cannam@95 2131 T1f = VADD(T1b, T1e);
cannam@95 2132 T1g = VADD(T18, T1f);
cannam@95 2133 Tdp = VSUB(T18, T1f);
cannam@95 2134 TaX = VSUB(T14, T17);
cannam@95 2135 Tb0 = VSUB(TaY, TaZ);
cannam@95 2136 Tb1 = VSUB(TaX, Tb0);
cannam@95 2137 Tcm = VADD(TaX, Tb0);
cannam@95 2138 }
cannam@95 2139 {
cannam@95 2140 V Tdk, Tdl, T4e, T4p;
cannam@95 2141 Tdk = VADD(TaG, TaH);
cannam@95 2142 Tdl = VADD(TaY, TaZ);
cannam@95 2143 Tdm = VSUB(Tdk, Tdl);
cannam@95 2144 Tej = VADD(Tdk, Tdl);
cannam@95 2145 T4e = VADD(T4a, T4d);
cannam@95 2146 T4p = VMUL(LDK(KP707106781), VSUB(T4j, T4o));
cannam@95 2147 T4q = VSUB(T4e, T4p);
cannam@95 2148 T6R = VADD(T4e, T4p);
cannam@95 2149 }
cannam@95 2150 {
cannam@95 2151 V T4T, T4W, T8d, T8e;
cannam@95 2152 T4T = VSUB(T4P, T4S);
cannam@95 2153 T4W = VMUL(LDK(KP707106781), VSUB(T4U, T4V));
cannam@95 2154 T4X = VSUB(T4T, T4W);
cannam@95 2155 T6O = VADD(T4T, T4W);
cannam@95 2156 T8d = VADD(T4P, T4S);
cannam@95 2157 T8e = VMUL(LDK(KP707106781), VADD(T4o, T4j));
cannam@95 2158 T8f = VSUB(T8d, T8e);
cannam@95 2159 T9s = VADD(T8d, T8e);
cannam@95 2160 }
cannam@95 2161 {
cannam@95 2162 V TaI, TaJ, T82, T83;
cannam@95 2163 TaI = VSUB(TaG, TaH);
cannam@95 2164 TaJ = VSUB(T1e, T1b);
cannam@95 2165 TaK = VSUB(TaI, TaJ);
cannam@95 2166 Tcp = VADD(TaJ, TaI);
cannam@95 2167 T82 = VSUB(T4d, T4a);
cannam@95 2168 T83 = VMUL(LDK(KP707106781), VADD(T4U, T4V));
cannam@95 2169 T84 = VSUB(T82, T83);
cannam@95 2170 T9v = VADD(T82, T83);
cannam@95 2171 }
cannam@95 2172 }
cannam@95 2173 {
cannam@95 2174 V T1j, TaR, T1m, TaS, T4G, T4L, TaT, TaQ, T89, T88, T1q, TaM, T1t, TaN, T4v;
cannam@95 2175 V T4A, TaO, TaL, T86, T85;
cannam@95 2176 {
cannam@95 2177 V T4H, T4F, T4C, T4K;
cannam@95 2178 {
cannam@95 2179 V T1h, T1i, T4D, T4E;
cannam@95 2180 T1h = LD(&(ri[WS(is, 5)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2181 T1i = LD(&(ri[WS(is, 37)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2182 T1j = VADD(T1h, T1i);
cannam@95 2183 T4H = VSUB(T1h, T1i);
cannam@95 2184 T4D = LD(&(ii[WS(is, 5)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2185 T4E = LD(&(ii[WS(is, 37)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2186 T4F = VSUB(T4D, T4E);
cannam@95 2187 TaR = VADD(T4D, T4E);
cannam@95 2188 }
cannam@95 2189 {
cannam@95 2190 V T1k, T1l, T4I, T4J;
cannam@95 2191 T1k = LD(&(ri[WS(is, 21)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2192 T1l = LD(&(ri[WS(is, 53)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2193 T1m = VADD(T1k, T1l);
cannam@95 2194 T4C = VSUB(T1k, T1l);
cannam@95 2195 T4I = LD(&(ii[WS(is, 21)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2196 T4J = LD(&(ii[WS(is, 53)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2197 T4K = VSUB(T4I, T4J);
cannam@95 2198 TaS = VADD(T4I, T4J);
cannam@95 2199 }
cannam@95 2200 T4G = VADD(T4C, T4F);
cannam@95 2201 T4L = VSUB(T4H, T4K);
cannam@95 2202 TaT = VSUB(TaR, TaS);
cannam@95 2203 TaQ = VSUB(T1j, T1m);
cannam@95 2204 T89 = VADD(T4H, T4K);
cannam@95 2205 T88 = VSUB(T4F, T4C);
cannam@95 2206 }
cannam@95 2207 {
cannam@95 2208 V T4r, T4z, T4w, T4u;
cannam@95 2209 {
cannam@95 2210 V T1o, T1p, T4x, T4y;
cannam@95 2211 T1o = LD(&(ri[WS(is, 61)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2212 T1p = LD(&(ri[WS(is, 29)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2213 T1q = VADD(T1o, T1p);
cannam@95 2214 T4r = VSUB(T1o, T1p);
cannam@95 2215 T4x = LD(&(ii[WS(is, 61)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2216 T4y = LD(&(ii[WS(is, 29)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2217 T4z = VSUB(T4x, T4y);
cannam@95 2218 TaM = VADD(T4x, T4y);
cannam@95 2219 }
cannam@95 2220 {
cannam@95 2221 V T1r, T1s, T4s, T4t;
cannam@95 2222 T1r = LD(&(ri[WS(is, 13)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2223 T1s = LD(&(ri[WS(is, 45)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2224 T1t = VADD(T1r, T1s);
cannam@95 2225 T4w = VSUB(T1r, T1s);
cannam@95 2226 T4s = LD(&(ii[WS(is, 13)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2227 T4t = LD(&(ii[WS(is, 45)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2228 T4u = VSUB(T4s, T4t);
cannam@95 2229 TaN = VADD(T4s, T4t);
cannam@95 2230 }
cannam@95 2231 T4v = VSUB(T4r, T4u);
cannam@95 2232 T4A = VADD(T4w, T4z);
cannam@95 2233 TaO = VSUB(TaM, TaN);
cannam@95 2234 TaL = VSUB(T1q, T1t);
cannam@95 2235 T86 = VSUB(T4z, T4w);
cannam@95 2236 T85 = VADD(T4r, T4u);
cannam@95 2237 }
cannam@95 2238 {
cannam@95 2239 V T1n, T1u, Tb2, Tb3;
cannam@95 2240 T1n = VADD(T1j, T1m);
cannam@95 2241 T1u = VADD(T1q, T1t);
cannam@95 2242 T1v = VADD(T1n, T1u);
cannam@95 2243 Tdn = VSUB(T1u, T1n);
cannam@95 2244 Tb2 = VSUB(TaT, TaQ);
cannam@95 2245 Tb3 = VADD(TaL, TaO);
cannam@95 2246 Tb4 = VMUL(LDK(KP707106781), VSUB(Tb2, Tb3));
cannam@95 2247 Tcq = VMUL(LDK(KP707106781), VADD(Tb2, Tb3));
cannam@95 2248 }
cannam@95 2249 {
cannam@95 2250 V Tdq, Tdr, T4B, T4M;
cannam@95 2251 Tdq = VADD(TaR, TaS);
cannam@95 2252 Tdr = VADD(TaM, TaN);
cannam@95 2253 Tds = VSUB(Tdq, Tdr);
cannam@95 2254 Tek = VADD(Tdq, Tdr);
cannam@95 2255 T4B = VFNMS(LDK(KP923879532), T4A, VMUL(LDK(KP382683432), T4v));
cannam@95 2256 T4M = VFMA(LDK(KP923879532), T4G, VMUL(LDK(KP382683432), T4L));
cannam@95 2257 T4N = VSUB(T4B, T4M);
cannam@95 2258 T6P = VADD(T4M, T4B);
cannam@95 2259 }
cannam@95 2260 {
cannam@95 2261 V T4Y, T4Z, T8g, T8h;
cannam@95 2262 T4Y = VFNMS(LDK(KP923879532), T4L, VMUL(LDK(KP382683432), T4G));
cannam@95 2263 T4Z = VFMA(LDK(KP382683432), T4A, VMUL(LDK(KP923879532), T4v));
cannam@95 2264 T50 = VSUB(T4Y, T4Z);
cannam@95 2265 T6S = VADD(T4Y, T4Z);
cannam@95 2266 T8g = VFNMS(LDK(KP382683432), T89, VMUL(LDK(KP923879532), T88));
cannam@95 2267 T8h = VFMA(LDK(KP923879532), T86, VMUL(LDK(KP382683432), T85));
cannam@95 2268 T8i = VSUB(T8g, T8h);
cannam@95 2269 T9w = VADD(T8g, T8h);
cannam@95 2270 }
cannam@95 2271 {
cannam@95 2272 V TaP, TaU, T87, T8a;
cannam@95 2273 TaP = VSUB(TaL, TaO);
cannam@95 2274 TaU = VADD(TaQ, TaT);
cannam@95 2275 TaV = VMUL(LDK(KP707106781), VSUB(TaP, TaU));
cannam@95 2276 Tcn = VMUL(LDK(KP707106781), VADD(TaU, TaP));
cannam@95 2277 T87 = VFNMS(LDK(KP382683432), T86, VMUL(LDK(KP923879532), T85));
cannam@95 2278 T8a = VFMA(LDK(KP382683432), T88, VMUL(LDK(KP923879532), T89));
cannam@95 2279 T8b = VSUB(T87, T8a);
cannam@95 2280 T9t = VADD(T8a, T87);
cannam@95 2281 }
cannam@95 2282 }
cannam@95 2283 {
cannam@95 2284 V T1O, Tbc, T1R, Tbd, T5o, T5t, Tbf, Tbe, T8p, T8o, T1V, Tbi, T1Y, Tbj, T5z;
cannam@95 2285 V T5E, Tbk, Tbh, T8s, T8r;
cannam@95 2286 {
cannam@95 2287 V T5p, T5n, T5k, T5s;
cannam@95 2288 {
cannam@95 2289 V T1M, T1N, T5l, T5m;
cannam@95 2290 T1M = LD(&(ri[WS(is, 3)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2291 T1N = LD(&(ri[WS(is, 35)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2292 T1O = VADD(T1M, T1N);
cannam@95 2293 T5p = VSUB(T1M, T1N);
cannam@95 2294 T5l = LD(&(ii[WS(is, 3)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2295 T5m = LD(&(ii[WS(is, 35)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2296 T5n = VSUB(T5l, T5m);
cannam@95 2297 Tbc = VADD(T5l, T5m);
cannam@95 2298 }
cannam@95 2299 {
cannam@95 2300 V T1P, T1Q, T5q, T5r;
cannam@95 2301 T1P = LD(&(ri[WS(is, 19)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2302 T1Q = LD(&(ri[WS(is, 51)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2303 T1R = VADD(T1P, T1Q);
cannam@95 2304 T5k = VSUB(T1P, T1Q);
cannam@95 2305 T5q = LD(&(ii[WS(is, 19)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2306 T5r = LD(&(ii[WS(is, 51)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2307 T5s = VSUB(T5q, T5r);
cannam@95 2308 Tbd = VADD(T5q, T5r);
cannam@95 2309 }
cannam@95 2310 T5o = VADD(T5k, T5n);
cannam@95 2311 T5t = VSUB(T5p, T5s);
cannam@95 2312 Tbf = VSUB(T1O, T1R);
cannam@95 2313 Tbe = VSUB(Tbc, Tbd);
cannam@95 2314 T8p = VADD(T5p, T5s);
cannam@95 2315 T8o = VSUB(T5n, T5k);
cannam@95 2316 }
cannam@95 2317 {
cannam@95 2318 V T5A, T5y, T5v, T5D;
cannam@95 2319 {
cannam@95 2320 V T1T, T1U, T5w, T5x;
cannam@95 2321 T1T = LD(&(ri[WS(is, 59)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2322 T1U = LD(&(ri[WS(is, 27)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2323 T1V = VADD(T1T, T1U);
cannam@95 2324 T5A = VSUB(T1T, T1U);
cannam@95 2325 T5w = LD(&(ii[WS(is, 59)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2326 T5x = LD(&(ii[WS(is, 27)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2327 T5y = VSUB(T5w, T5x);
cannam@95 2328 Tbi = VADD(T5w, T5x);
cannam@95 2329 }
cannam@95 2330 {
cannam@95 2331 V T1W, T1X, T5B, T5C;
cannam@95 2332 T1W = LD(&(ri[WS(is, 11)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2333 T1X = LD(&(ri[WS(is, 43)]), ivs, &(ri[WS(is, 1)]));
cannam@95 2334 T1Y = VADD(T1W, T1X);
cannam@95 2335 T5v = VSUB(T1W, T1X);
cannam@95 2336 T5B = LD(&(ii[WS(is, 11)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2337 T5C = LD(&(ii[WS(is, 43)]), ivs, &(ii[WS(is, 1)]));
cannam@95 2338 T5D = VSUB(T5B, T5C);
cannam@95 2339 Tbj = VADD(T5B, T5C);
cannam@95 2340 }
cannam@95 2341 T5z = VADD(T5v, T5y);
cannam@95 2342 T5E = VSUB(T5A, T5D);
cannam@95 2343 Tbk = VSUB(Tbi, Tbj);
cannam@95 2344 Tbh = VSUB(T1V, T1Y);
cannam@95 2345 T8s = VADD(T5A, T5D);
cannam@95 2346 T8r = VSUB(T5y, T5v);
cannam@95 2347 }
cannam@95 2348 {
cannam@95 2349 V T1S, T1Z, Tbt, Tbu;
cannam@95 2350 T1S = VADD(T1O, T1R);
cannam@95 2351 T1Z = VADD(T1V, T1Y);
cannam@95 2352 T20 = VADD(T1S, T1Z);
cannam@95 2353 TdD = VSUB(T1Z, T1S);
cannam@95 2354 Tbt = VSUB(Tbh, Tbk);
cannam@95 2355 Tbu = VADD(Tbf, Tbe);
cannam@95 2356 Tbv = VMUL(LDK(KP707106781), VSUB(Tbt, Tbu));
cannam@95 2357 Tcu = VMUL(LDK(KP707106781), VADD(Tbu, Tbt));
cannam@95 2358 }
cannam@95 2359 {
cannam@95 2360 V Tdw, Tdx, T5u, T5F;
cannam@95 2361 Tdw = VADD(Tbc, Tbd);
cannam@95 2362 Tdx = VADD(Tbi, Tbj);
cannam@95 2363 Tdy = VSUB(Tdw, Tdx);
cannam@95 2364 Tep = VADD(Tdw, Tdx);
cannam@95 2365 T5u = VFNMS(LDK(KP923879532), T5t, VMUL(LDK(KP382683432), T5o));
cannam@95 2366 T5F = VFMA(LDK(KP382683432), T5z, VMUL(LDK(KP923879532), T5E));
cannam@95 2367 T5G = VSUB(T5u, T5F);
cannam@95 2368 T6Z = VADD(T5u, T5F);
cannam@95 2369 }
cannam@95 2370 {
cannam@95 2371 V T5R, T5S, T8z, T8A;
cannam@95 2372 T5R = VFNMS(LDK(KP923879532), T5z, VMUL(LDK(KP382683432), T5E));
cannam@95 2373 T5S = VFMA(LDK(KP923879532), T5o, VMUL(LDK(KP382683432), T5t));
cannam@95 2374 T5T = VSUB(T5R, T5S);
cannam@95 2375 T6W = VADD(T5S, T5R);
cannam@95 2376 T8z = VFNMS(LDK(KP382683432), T8r, VMUL(LDK(KP923879532), T8s));
cannam@95 2377 T8A = VFMA(LDK(KP382683432), T8o, VMUL(LDK(KP923879532), T8p));
cannam@95 2378 T8B = VSUB(T8z, T8A);
cannam@95 2379 T9A = VADD(T8A, T8z);
cannam@95 2380 }
cannam@95 2381 {
cannam@95 2382 V Tbg, Tbl, T8q, T8t;
cannam@95 2383 Tbg = VSUB(Tbe, Tbf);
cannam@95 2384 Tbl = VADD(Tbh, Tbk);
cannam@95 2385 Tbm = VMUL(LDK(KP707106781), VSUB(Tbg, Tbl));
cannam@95 2386 Tcx = VMUL(LDK(KP707106781), VADD(Tbg, Tbl));
cannam@95 2387 T8q = VFNMS(LDK(KP382683432), T8p, VMUL(LDK(KP923879532), T8o));
cannam@95 2388 T8t = VFMA(LDK(KP923879532), T8r, VMUL(LDK(KP382683432), T8s));
cannam@95 2389 T8u = VSUB(T8q, T8t);
cannam@95 2390 T9D = VADD(T8q, T8t);
cannam@95 2391 }
cannam@95 2392 }
cannam@95 2393 {
cannam@95 2394 V TeJ, TeK, TeL, TeM, TeN, TeO, TeP, TeQ, TeR, TeS, TeT, TeU, TeV, TeW, TeX;
cannam@95 2395 V TeY, TeZ, Tf0, Tf1, Tf2, Tf3, Tf4, Tf5, Tf6, Tf7, Tf8, Tf9, Tfa, Tfb, Tfc;
cannam@95 2396 V Tfd, Tfe, Tff, Tfg, Tfh, Tfi, Tfj, Tfk, Tfl, Tfm, Tfn, Tfo, Tfp, Tfq, Tfr;
cannam@95 2397 V Tfs, Tft, Tfu;
cannam@95 2398 {
cannam@95 2399 V T11, TeD, TeG, TeI, T22, T23, T34, TeH;
cannam@95 2400 {
cannam@95 2401 V Tv, T10, TeE, TeF;
cannam@95 2402 Tv = VADD(Tf, Tu);
cannam@95 2403 T10 = VADD(TK, TZ);
cannam@95 2404 T11 = VADD(Tv, T10);
cannam@95 2405 TeD = VSUB(Tv, T10);
cannam@95 2406 TeE = VADD(Tej, Tek);
cannam@95 2407 TeF = VADD(Teo, Tep);
cannam@95 2408 TeG = VSUB(TeE, TeF);
cannam@95 2409 TeI = VADD(TeE, TeF);
cannam@95 2410 }
cannam@95 2411 {
cannam@95 2412 V T1w, T21, T2y, T33;
cannam@95 2413 T1w = VADD(T1g, T1v);
cannam@95 2414 T21 = VADD(T1L, T20);
cannam@95 2415 T22 = VADD(T1w, T21);
cannam@95 2416 T23 = VSUB(T21, T1w);
cannam@95 2417 T2y = VADD(T2i, T2x);
cannam@95 2418 T33 = VADD(T2N, T32);
cannam@95 2419 T34 = VSUB(T2y, T33);
cannam@95 2420 TeH = VADD(T2y, T33);
cannam@95 2421 }
cannam@95 2422 TeJ = VSUB(T11, T22);
cannam@95 2423 STM4(&(ro[32]), TeJ, ovs, &(ro[0]));
cannam@95 2424 TeK = VSUB(TeH, TeI);
cannam@95 2425 STM4(&(io[32]), TeK, ovs, &(io[0]));
cannam@95 2426 TeL = VADD(T11, T22);
cannam@95 2427 STM4(&(ro[0]), TeL, ovs, &(ro[0]));
cannam@95 2428 TeM = VADD(TeH, TeI);
cannam@95 2429 STM4(&(io[0]), TeM, ovs, &(io[0]));
cannam@95 2430 TeN = VADD(T23, T34);
cannam@95 2431 STM4(&(io[16]), TeN, ovs, &(io[0]));
cannam@95 2432 TeO = VADD(TeD, TeG);
cannam@95 2433 STM4(&(ro[16]), TeO, ovs, &(ro[0]));
cannam@95 2434 TeP = VSUB(T34, T23);
cannam@95 2435 STM4(&(io[48]), TeP, ovs, &(io[0]));
cannam@95 2436 TeQ = VSUB(TeD, TeG);
cannam@95 2437 STM4(&(ro[48]), TeQ, ovs, &(ro[0]));
cannam@95 2438 }
cannam@95 2439 {
cannam@95 2440 V Teh, Tex, Tev, TeB, Tem, Tey, Ter, Tez;
cannam@95 2441 {
cannam@95 2442 V Tef, Teg, Tet, Teu;
cannam@95 2443 Tef = VSUB(Tf, Tu);
cannam@95 2444 Teg = VSUB(T2N, T32);
cannam@95 2445 Teh = VADD(Tef, Teg);
cannam@95 2446 Tex = VSUB(Tef, Teg);
cannam@95 2447 Tet = VSUB(T2i, T2x);
cannam@95 2448 Teu = VSUB(TZ, TK);
cannam@95 2449 Tev = VSUB(Tet, Teu);
cannam@95 2450 TeB = VADD(Teu, Tet);
cannam@95 2451 }
cannam@95 2452 {
cannam@95 2453 V Tei, Tel, Ten, Teq;
cannam@95 2454 Tei = VSUB(T1g, T1v);
cannam@95 2455 Tel = VSUB(Tej, Tek);
cannam@95 2456 Tem = VADD(Tei, Tel);
cannam@95 2457 Tey = VSUB(Tel, Tei);
cannam@95 2458 Ten = VSUB(T1L, T20);
cannam@95 2459 Teq = VSUB(Teo, Tep);
cannam@95 2460 Ter = VSUB(Ten, Teq);
cannam@95 2461 Tez = VADD(Ten, Teq);
cannam@95 2462 }
cannam@95 2463 {
cannam@95 2464 V Tes, TeC, Tew, TeA;
cannam@95 2465 Tes = VMUL(LDK(KP707106781), VADD(Tem, Ter));
cannam@95 2466 TeR = VSUB(Teh, Tes);
cannam@95 2467 STM4(&(ro[40]), TeR, ovs, &(ro[0]));
cannam@95 2468 TeS = VADD(Teh, Tes);
cannam@95 2469 STM4(&(ro[8]), TeS, ovs, &(ro[0]));
cannam@95 2470 TeC = VMUL(LDK(KP707106781), VADD(Tey, Tez));
cannam@95 2471 TeT = VSUB(TeB, TeC);
cannam@95 2472 STM4(&(io[40]), TeT, ovs, &(io[0]));
cannam@95 2473 TeU = VADD(TeB, TeC);
cannam@95 2474 STM4(&(io[8]), TeU, ovs, &(io[0]));
cannam@95 2475 Tew = VMUL(LDK(KP707106781), VSUB(Ter, Tem));
cannam@95 2476 TeV = VSUB(Tev, Tew);
cannam@95 2477 STM4(&(io[56]), TeV, ovs, &(io[0]));
cannam@95 2478 TeW = VADD(Tev, Tew);
cannam@95 2479 STM4(&(io[24]), TeW, ovs, &(io[0]));
cannam@95 2480 TeA = VMUL(LDK(KP707106781), VSUB(Tey, Tez));
cannam@95 2481 TeX = VSUB(Tex, TeA);
cannam@95 2482 STM4(&(ro[56]), TeX, ovs, &(ro[0]));
cannam@95 2483 TeY = VADD(Tex, TeA);
cannam@95 2484 STM4(&(ro[24]), TeY, ovs, &(ro[0]));
cannam@95 2485 }
cannam@95 2486 }
cannam@95 2487 {
cannam@95 2488 V Tdb, TdV, Te5, TdJ, Tdi, Te6, Te3, Teb, TdM, TdW, Tdu, TdQ, Te0, Tea, TdF;
cannam@95 2489 V TdR;
cannam@95 2490 {
cannam@95 2491 V Tde, Tdh, Tdo, Tdt;
cannam@95 2492 Tdb = VSUB(Td9, Tda);
cannam@95 2493 TdV = VADD(Td9, Tda);
cannam@95 2494 Te5 = VADD(TdI, TdH);
cannam@95 2495 TdJ = VSUB(TdH, TdI);
cannam@95 2496 Tde = VSUB(Tdc, Tdd);
cannam@95 2497 Tdh = VADD(Tdf, Tdg);
cannam@95 2498 Tdi = VMUL(LDK(KP707106781), VSUB(Tde, Tdh));
cannam@95 2499 Te6 = VMUL(LDK(KP707106781), VADD(Tde, Tdh));
cannam@95 2500 {
cannam@95 2501 V Te1, Te2, TdK, TdL;
cannam@95 2502 Te1 = VADD(Tdv, Tdy);
cannam@95 2503 Te2 = VADD(TdD, TdC);
cannam@95 2504 Te3 = VFNMS(LDK(KP382683432), Te2, VMUL(LDK(KP923879532), Te1));
cannam@95 2505 Teb = VFMA(LDK(KP923879532), Te2, VMUL(LDK(KP382683432), Te1));
cannam@95 2506 TdK = VSUB(Tdf, Tdg);
cannam@95 2507 TdL = VADD(Tdd, Tdc);
cannam@95 2508 TdM = VMUL(LDK(KP707106781), VSUB(TdK, TdL));
cannam@95 2509 TdW = VMUL(LDK(KP707106781), VADD(TdL, TdK));
cannam@95 2510 }
cannam@95 2511 Tdo = VSUB(Tdm, Tdn);
cannam@95 2512 Tdt = VSUB(Tdp, Tds);
cannam@95 2513 Tdu = VFMA(LDK(KP923879532), Tdo, VMUL(LDK(KP382683432), Tdt));
cannam@95 2514 TdQ = VFNMS(LDK(KP923879532), Tdt, VMUL(LDK(KP382683432), Tdo));
cannam@95 2515 {
cannam@95 2516 V TdY, TdZ, Tdz, TdE;
cannam@95 2517 TdY = VADD(Tdn, Tdm);
cannam@95 2518 TdZ = VADD(Tdp, Tds);
cannam@95 2519 Te0 = VFMA(LDK(KP382683432), TdY, VMUL(LDK(KP923879532), TdZ));
cannam@95 2520 Tea = VFNMS(LDK(KP382683432), TdZ, VMUL(LDK(KP923879532), TdY));
cannam@95 2521 Tdz = VSUB(Tdv, Tdy);
cannam@95 2522 TdE = VSUB(TdC, TdD);
cannam@95 2523 TdF = VFNMS(LDK(KP923879532), TdE, VMUL(LDK(KP382683432), Tdz));
cannam@95 2524 TdR = VFMA(LDK(KP382683432), TdE, VMUL(LDK(KP923879532), Tdz));
cannam@95 2525 }
cannam@95 2526 }
cannam@95 2527 {
cannam@95 2528 V Tdj, TdG, TdT, TdU;
cannam@95 2529 Tdj = VADD(Tdb, Tdi);
cannam@95 2530 TdG = VADD(Tdu, TdF);
cannam@95 2531 TeZ = VSUB(Tdj, TdG);
cannam@95 2532 STM4(&(ro[44]), TeZ, ovs, &(ro[0]));
cannam@95 2533 Tf0 = VADD(Tdj, TdG);
cannam@95 2534 STM4(&(ro[12]), Tf0, ovs, &(ro[0]));
cannam@95 2535 TdT = VADD(TdJ, TdM);
cannam@95 2536 TdU = VADD(TdQ, TdR);
cannam@95 2537 Tf1 = VSUB(TdT, TdU);
cannam@95 2538 STM4(&(io[44]), Tf1, ovs, &(io[0]));
cannam@95 2539 Tf2 = VADD(TdT, TdU);
cannam@95 2540 STM4(&(io[12]), Tf2, ovs, &(io[0]));
cannam@95 2541 }
cannam@95 2542 {
cannam@95 2543 V TdN, TdO, TdP, TdS;
cannam@95 2544 TdN = VSUB(TdJ, TdM);
cannam@95 2545 TdO = VSUB(TdF, Tdu);
cannam@95 2546 Tf3 = VSUB(TdN, TdO);
cannam@95 2547 STM4(&(io[60]), Tf3, ovs, &(io[0]));
cannam@95 2548 Tf4 = VADD(TdN, TdO);
cannam@95 2549 STM4(&(io[28]), Tf4, ovs, &(io[0]));
cannam@95 2550 TdP = VSUB(Tdb, Tdi);
cannam@95 2551 TdS = VSUB(TdQ, TdR);
cannam@95 2552 Tf5 = VSUB(TdP, TdS);
cannam@95 2553 STM4(&(ro[60]), Tf5, ovs, &(ro[0]));
cannam@95 2554 Tf6 = VADD(TdP, TdS);
cannam@95 2555 STM4(&(ro[28]), Tf6, ovs, &(ro[0]));
cannam@95 2556 }
cannam@95 2557 {
cannam@95 2558 V TdX, Te4, Ted, Tee;
cannam@95 2559 TdX = VADD(TdV, TdW);
cannam@95 2560 Te4 = VADD(Te0, Te3);
cannam@95 2561 Tf7 = VSUB(TdX, Te4);
cannam@95 2562 STM4(&(ro[36]), Tf7, ovs, &(ro[0]));
cannam@95 2563 Tf8 = VADD(TdX, Te4);
cannam@95 2564 STM4(&(ro[4]), Tf8, ovs, &(ro[0]));
cannam@95 2565 Ted = VADD(Te5, Te6);
cannam@95 2566 Tee = VADD(Tea, Teb);
cannam@95 2567 Tf9 = VSUB(Ted, Tee);
cannam@95 2568 STM4(&(io[36]), Tf9, ovs, &(io[0]));
cannam@95 2569 Tfa = VADD(Ted, Tee);
cannam@95 2570 STM4(&(io[4]), Tfa, ovs, &(io[0]));
cannam@95 2571 }
cannam@95 2572 {
cannam@95 2573 V Te7, Te8, Te9, Tec;
cannam@95 2574 Te7 = VSUB(Te5, Te6);
cannam@95 2575 Te8 = VSUB(Te3, Te0);
cannam@95 2576 Tfb = VSUB(Te7, Te8);
cannam@95 2577 STM4(&(io[52]), Tfb, ovs, &(io[0]));
cannam@95 2578 Tfc = VADD(Te7, Te8);
cannam@95 2579 STM4(&(io[20]), Tfc, ovs, &(io[0]));
cannam@95 2580 Te9 = VSUB(TdV, TdW);
cannam@95 2581 Tec = VSUB(Tea, Teb);
cannam@95 2582 Tfd = VSUB(Te9, Tec);
cannam@95 2583 STM4(&(ro[52]), Tfd, ovs, &(ro[0]));
cannam@95 2584 Tfe = VADD(Te9, Tec);
cannam@95 2585 STM4(&(ro[20]), Tfe, ovs, &(ro[0]));
cannam@95 2586 }
cannam@95 2587 }
cannam@95 2588 {
cannam@95 2589 V Tcd, TcP, TcD, TcZ, Tck, Td0, TcX, Td5, Tcs, TcK, TcG, TcQ, TcU, Td4, Tcz;
cannam@95 2590 V TcL, Tcc, TcC;
cannam@95 2591 Tcc = VMUL(LDK(KP707106781), VADD(TbD, TbC));
cannam@95 2592 Tcd = VSUB(Tcb, Tcc);
cannam@95 2593 TcP = VADD(Tcb, Tcc);
cannam@95 2594 TcC = VMUL(LDK(KP707106781), VADD(Tak, Tan));
cannam@95 2595 TcD = VSUB(TcB, TcC);
cannam@95 2596 TcZ = VADD(TcB, TcC);
cannam@95 2597 {
cannam@95 2598 V Tcg, Tcj, TcV, TcW;
cannam@95 2599 Tcg = VFNMS(LDK(KP382683432), Tcf, VMUL(LDK(KP923879532), Tce));
cannam@95 2600 Tcj = VFMA(LDK(KP923879532), Tch, VMUL(LDK(KP382683432), Tci));
cannam@95 2601 Tck = VSUB(Tcg, Tcj);
cannam@95 2602 Td0 = VADD(Tcg, Tcj);
cannam@95 2603 TcV = VADD(Tct, Tcu);
cannam@95 2604 TcW = VADD(Tcw, Tcx);
cannam@95 2605 TcX = VFNMS(LDK(KP195090322), TcW, VMUL(LDK(KP980785280), TcV));
cannam@95 2606 Td5 = VFMA(LDK(KP195090322), TcV, VMUL(LDK(KP980785280), TcW));
cannam@95 2607 }
cannam@95 2608 {
cannam@95 2609 V Tco, Tcr, TcE, TcF;
cannam@95 2610 Tco = VSUB(Tcm, Tcn);
cannam@95 2611 Tcr = VSUB(Tcp, Tcq);
cannam@95 2612 Tcs = VFMA(LDK(KP555570233), Tco, VMUL(LDK(KP831469612), Tcr));
cannam@95 2613 TcK = VFNMS(LDK(KP831469612), Tco, VMUL(LDK(KP555570233), Tcr));
cannam@95 2614 TcE = VFNMS(LDK(KP382683432), Tch, VMUL(LDK(KP923879532), Tci));
cannam@95 2615 TcF = VFMA(LDK(KP382683432), Tce, VMUL(LDK(KP923879532), Tcf));
cannam@95 2616 TcG = VSUB(TcE, TcF);
cannam@95 2617 TcQ = VADD(TcF, TcE);
cannam@95 2618 }
cannam@95 2619 {
cannam@95 2620 V TcS, TcT, Tcv, Tcy;
cannam@95 2621 TcS = VADD(Tcm, Tcn);
cannam@95 2622 TcT = VADD(Tcp, Tcq);
cannam@95 2623 TcU = VFMA(LDK(KP980785280), TcS, VMUL(LDK(KP195090322), TcT));
cannam@95 2624 Td4 = VFNMS(LDK(KP195090322), TcS, VMUL(LDK(KP980785280), TcT));
cannam@95 2625 Tcv = VSUB(Tct, Tcu);
cannam@95 2626 Tcy = VSUB(Tcw, Tcx);
cannam@95 2627 Tcz = VFNMS(LDK(KP831469612), Tcy, VMUL(LDK(KP555570233), Tcv));
cannam@95 2628 TcL = VFMA(LDK(KP831469612), Tcv, VMUL(LDK(KP555570233), Tcy));
cannam@95 2629 }
cannam@95 2630 {
cannam@95 2631 V Tcl, TcA, TcN, TcO;
cannam@95 2632 Tcl = VADD(Tcd, Tck);
cannam@95 2633 TcA = VADD(Tcs, Tcz);
cannam@95 2634 Tff = VSUB(Tcl, TcA);
cannam@95 2635 STM4(&(ro[42]), Tff, ovs, &(ro[0]));
cannam@95 2636 Tfg = VADD(Tcl, TcA);
cannam@95 2637 STM4(&(ro[10]), Tfg, ovs, &(ro[0]));
cannam@95 2638 TcN = VADD(TcD, TcG);
cannam@95 2639 TcO = VADD(TcK, TcL);
cannam@95 2640 Tfh = VSUB(TcN, TcO);
cannam@95 2641 STM4(&(io[42]), Tfh, ovs, &(io[0]));
cannam@95 2642 Tfi = VADD(TcN, TcO);
cannam@95 2643 STM4(&(io[10]), Tfi, ovs, &(io[0]));
cannam@95 2644 }
cannam@95 2645 {
cannam@95 2646 V TcH, TcI, TcJ, TcM;
cannam@95 2647 TcH = VSUB(TcD, TcG);
cannam@95 2648 TcI = VSUB(Tcz, Tcs);
cannam@95 2649 Tfj = VSUB(TcH, TcI);
cannam@95 2650 STM4(&(io[58]), Tfj, ovs, &(io[0]));
cannam@95 2651 Tfk = VADD(TcH, TcI);
cannam@95 2652 STM4(&(io[26]), Tfk, ovs, &(io[0]));
cannam@95 2653 TcJ = VSUB(Tcd, Tck);
cannam@95 2654 TcM = VSUB(TcK, TcL);
cannam@95 2655 Tfl = VSUB(TcJ, TcM);
cannam@95 2656 STM4(&(ro[58]), Tfl, ovs, &(ro[0]));
cannam@95 2657 Tfm = VADD(TcJ, TcM);
cannam@95 2658 STM4(&(ro[26]), Tfm, ovs, &(ro[0]));
cannam@95 2659 }
cannam@95 2660 {
cannam@95 2661 V TcR, TcY, Td7, Td8;
cannam@95 2662 TcR = VADD(TcP, TcQ);
cannam@95 2663 TcY = VADD(TcU, TcX);
cannam@95 2664 Tfn = VSUB(TcR, TcY);
cannam@95 2665 STM4(&(ro[34]), Tfn, ovs, &(ro[0]));
cannam@95 2666 Tfo = VADD(TcR, TcY);
cannam@95 2667 STM4(&(ro[2]), Tfo, ovs, &(ro[0]));
cannam@95 2668 Td7 = VADD(TcZ, Td0);
cannam@95 2669 Td8 = VADD(Td4, Td5);
cannam@95 2670 Tfp = VSUB(Td7, Td8);
cannam@95 2671 STM4(&(io[34]), Tfp, ovs, &(io[0]));
cannam@95 2672 Tfq = VADD(Td7, Td8);
cannam@95 2673 STM4(&(io[2]), Tfq, ovs, &(io[0]));
cannam@95 2674 }
cannam@95 2675 {
cannam@95 2676 V Td1, Td2, Td3, Td6;
cannam@95 2677 Td1 = VSUB(TcZ, Td0);
cannam@95 2678 Td2 = VSUB(TcX, TcU);
cannam@95 2679 Tfr = VSUB(Td1, Td2);
cannam@95 2680 STM4(&(io[50]), Tfr, ovs, &(io[0]));
cannam@95 2681 Tfs = VADD(Td1, Td2);
cannam@95 2682 STM4(&(io[18]), Tfs, ovs, &(io[0]));
cannam@95 2683 Td3 = VSUB(TcP, TcQ);
cannam@95 2684 Td6 = VSUB(Td4, Td5);
cannam@95 2685 Tft = VSUB(Td3, Td6);
cannam@95 2686 STM4(&(ro[50]), Tft, ovs, &(ro[0]));
cannam@95 2687 Tfu = VADD(Td3, Td6);
cannam@95 2688 STM4(&(ro[18]), Tfu, ovs, &(ro[0]));
cannam@95 2689 }
cannam@95 2690 }
cannam@95 2691 {
cannam@95 2692 V Tfv, Tfw, Tfx, Tfy, Tfz, TfA, TfB, TfC, TfD, TfE, TfF, TfG, TfH, TfI, TfJ;
cannam@95 2693 V TfK, TfL, TfM, TfN, TfO, TfP, TfQ, TfR, TfS, TfT, TfU, TfV, TfW, TfX, TfY;
cannam@95 2694 V TfZ, Tg0;
cannam@95 2695 {
cannam@95 2696 V Tap, TbR, TbF, Tc1, TaE, Tc2, TbZ, Tc7, Tb6, TbM, TbI, TbS, TbW, Tc6, Tbx;
cannam@95 2697 V TbN, Tao, TbE;
cannam@95 2698 Tao = VMUL(LDK(KP707106781), VSUB(Tak, Tan));
cannam@95 2699 Tap = VSUB(Tah, Tao);
cannam@95 2700 TbR = VADD(Tah, Tao);
cannam@95 2701 TbE = VMUL(LDK(KP707106781), VSUB(TbC, TbD));
cannam@95 2702 TbF = VSUB(TbB, TbE);
cannam@95 2703 Tc1 = VADD(TbB, TbE);
cannam@95 2704 {
cannam@95 2705 V Taw, TaD, TbX, TbY;
cannam@95 2706 Taw = VFNMS(LDK(KP923879532), Tav, VMUL(LDK(KP382683432), Tas));
cannam@95 2707 TaD = VFMA(LDK(KP382683432), Taz, VMUL(LDK(KP923879532), TaC));
cannam@95 2708 TaE = VSUB(Taw, TaD);
cannam@95 2709 Tc2 = VADD(Taw, TaD);
cannam@95 2710 TbX = VADD(Tbb, Tbm);
cannam@95 2711 TbY = VADD(Tbs, Tbv);
cannam@95 2712 TbZ = VFNMS(LDK(KP555570233), TbY, VMUL(LDK(KP831469612), TbX));
cannam@95 2713 Tc7 = VFMA(LDK(KP831469612), TbY, VMUL(LDK(KP555570233), TbX));
cannam@95 2714 }
cannam@95 2715 {
cannam@95 2716 V TaW, Tb5, TbG, TbH;
cannam@95 2717 TaW = VSUB(TaK, TaV);
cannam@95 2718 Tb5 = VSUB(Tb1, Tb4);
cannam@95 2719 Tb6 = VFMA(LDK(KP980785280), TaW, VMUL(LDK(KP195090322), Tb5));
cannam@95 2720 TbM = VFNMS(LDK(KP980785280), Tb5, VMUL(LDK(KP195090322), TaW));
cannam@95 2721 TbG = VFNMS(LDK(KP923879532), Taz, VMUL(LDK(KP382683432), TaC));
cannam@95 2722 TbH = VFMA(LDK(KP923879532), Tas, VMUL(LDK(KP382683432), Tav));
cannam@95 2723 TbI = VSUB(TbG, TbH);
cannam@95 2724 TbS = VADD(TbH, TbG);
cannam@95 2725 }
cannam@95 2726 {
cannam@95 2727 V TbU, TbV, Tbn, Tbw;
cannam@95 2728 TbU = VADD(TaK, TaV);
cannam@95 2729 TbV = VADD(Tb1, Tb4);
cannam@95 2730 TbW = VFMA(LDK(KP555570233), TbU, VMUL(LDK(KP831469612), TbV));
cannam@95 2731 Tc6 = VFNMS(LDK(KP555570233), TbV, VMUL(LDK(KP831469612), TbU));
cannam@95 2732 Tbn = VSUB(Tbb, Tbm);
cannam@95 2733 Tbw = VSUB(Tbs, Tbv);
cannam@95 2734 Tbx = VFNMS(LDK(KP980785280), Tbw, VMUL(LDK(KP195090322), Tbn));
cannam@95 2735 TbN = VFMA(LDK(KP195090322), Tbw, VMUL(LDK(KP980785280), Tbn));
cannam@95 2736 }
cannam@95 2737 {
cannam@95 2738 V TaF, Tby, TbP, TbQ;
cannam@95 2739 TaF = VADD(Tap, TaE);
cannam@95 2740 Tby = VADD(Tb6, Tbx);
cannam@95 2741 Tfv = VSUB(TaF, Tby);
cannam@95 2742 STM4(&(ro[46]), Tfv, ovs, &(ro[0]));
cannam@95 2743 Tfw = VADD(TaF, Tby);
cannam@95 2744 STM4(&(ro[14]), Tfw, ovs, &(ro[0]));
cannam@95 2745 TbP = VADD(TbF, TbI);
cannam@95 2746 TbQ = VADD(TbM, TbN);
cannam@95 2747 Tfx = VSUB(TbP, TbQ);
cannam@95 2748 STM4(&(io[46]), Tfx, ovs, &(io[0]));
cannam@95 2749 Tfy = VADD(TbP, TbQ);
cannam@95 2750 STM4(&(io[14]), Tfy, ovs, &(io[0]));
cannam@95 2751 }
cannam@95 2752 {
cannam@95 2753 V TbJ, TbK, TbL, TbO;
cannam@95 2754 TbJ = VSUB(TbF, TbI);
cannam@95 2755 TbK = VSUB(Tbx, Tb6);
cannam@95 2756 Tfz = VSUB(TbJ, TbK);
cannam@95 2757 STM4(&(io[62]), Tfz, ovs, &(io[0]));
cannam@95 2758 TfA = VADD(TbJ, TbK);
cannam@95 2759 STM4(&(io[30]), TfA, ovs, &(io[0]));
cannam@95 2760 TbL = VSUB(Tap, TaE);
cannam@95 2761 TbO = VSUB(TbM, TbN);
cannam@95 2762 TfB = VSUB(TbL, TbO);
cannam@95 2763 STM4(&(ro[62]), TfB, ovs, &(ro[0]));
cannam@95 2764 TfC = VADD(TbL, TbO);
cannam@95 2765 STM4(&(ro[30]), TfC, ovs, &(ro[0]));
cannam@95 2766 }
cannam@95 2767 {
cannam@95 2768 V TbT, Tc0, Tc9, Tca;
cannam@95 2769 TbT = VADD(TbR, TbS);
cannam@95 2770 Tc0 = VADD(TbW, TbZ);
cannam@95 2771 TfD = VSUB(TbT, Tc0);
cannam@95 2772 STM4(&(ro[38]), TfD, ovs, &(ro[0]));
cannam@95 2773 TfE = VADD(TbT, Tc0);
cannam@95 2774 STM4(&(ro[6]), TfE, ovs, &(ro[0]));
cannam@95 2775 Tc9 = VADD(Tc1, Tc2);
cannam@95 2776 Tca = VADD(Tc6, Tc7);
cannam@95 2777 TfF = VSUB(Tc9, Tca);
cannam@95 2778 STM4(&(io[38]), TfF, ovs, &(io[0]));
cannam@95 2779 TfG = VADD(Tc9, Tca);
cannam@95 2780 STM4(&(io[6]), TfG, ovs, &(io[0]));
cannam@95 2781 }
cannam@95 2782 {
cannam@95 2783 V Tc3, Tc4, Tc5, Tc8;
cannam@95 2784 Tc3 = VSUB(Tc1, Tc2);
cannam@95 2785 Tc4 = VSUB(TbZ, TbW);
cannam@95 2786 TfH = VSUB(Tc3, Tc4);
cannam@95 2787 STM4(&(io[54]), TfH, ovs, &(io[0]));
cannam@95 2788 TfI = VADD(Tc3, Tc4);
cannam@95 2789 STM4(&(io[22]), TfI, ovs, &(io[0]));
cannam@95 2790 Tc5 = VSUB(TbR, TbS);
cannam@95 2791 Tc8 = VSUB(Tc6, Tc7);
cannam@95 2792 TfJ = VSUB(Tc5, Tc8);
cannam@95 2793 STM4(&(ro[54]), TfJ, ovs, &(ro[0]));
cannam@95 2794 TfK = VADD(Tc5, Tc8);
cannam@95 2795 STM4(&(ro[22]), TfK, ovs, &(ro[0]));
cannam@95 2796 }
cannam@95 2797 }
cannam@95 2798 {
cannam@95 2799 V T6F, T7h, T7m, T7w, T7p, T7x, T6M, T7s, T6U, T7c, T75, T7r, T78, T7i, T71;
cannam@95 2800 V T7d;
cannam@95 2801 {
cannam@95 2802 V T6D, T6E, T7k, T7l;
cannam@95 2803 T6D = VADD(T37, T3e);
cannam@95 2804 T6E = VADD(T65, T64);
cannam@95 2805 T6F = VSUB(T6D, T6E);
cannam@95 2806 T7h = VADD(T6D, T6E);
cannam@95 2807 T7k = VADD(T6O, T6P);
cannam@95 2808 T7l = VADD(T6R, T6S);
cannam@95 2809 T7m = VFMA(LDK(KP956940335), T7k, VMUL(LDK(KP290284677), T7l));
cannam@95 2810 T7w = VFNMS(LDK(KP290284677), T7k, VMUL(LDK(KP956940335), T7l));
cannam@95 2811 }
cannam@95 2812 {
cannam@95 2813 V T7n, T7o, T6I, T6L;
cannam@95 2814 T7n = VADD(T6V, T6W);
cannam@95 2815 T7o = VADD(T6Y, T6Z);
cannam@95 2816 T7p = VFNMS(LDK(KP290284677), T7o, VMUL(LDK(KP956940335), T7n));
cannam@95 2817 T7x = VFMA(LDK(KP290284677), T7n, VMUL(LDK(KP956940335), T7o));
cannam@95 2818 T6I = VFNMS(LDK(KP555570233), T6H, VMUL(LDK(KP831469612), T6G));
cannam@95 2819 T6L = VFMA(LDK(KP831469612), T6J, VMUL(LDK(KP555570233), T6K));
cannam@95 2820 T6M = VSUB(T6I, T6L);
cannam@95 2821 T7s = VADD(T6I, T6L);
cannam@95 2822 }
cannam@95 2823 {
cannam@95 2824 V T6Q, T6T, T73, T74;
cannam@95 2825 T6Q = VSUB(T6O, T6P);
cannam@95 2826 T6T = VSUB(T6R, T6S);
cannam@95 2827 T6U = VFMA(LDK(KP471396736), T6Q, VMUL(LDK(KP881921264), T6T));
cannam@95 2828 T7c = VFNMS(LDK(KP881921264), T6Q, VMUL(LDK(KP471396736), T6T));
cannam@95 2829 T73 = VADD(T5Z, T62);
cannam@95 2830 T74 = VADD(T3m, T3t);
cannam@95 2831 T75 = VSUB(T73, T74);
cannam@95 2832 T7r = VADD(T73, T74);
cannam@95 2833 }
cannam@95 2834 {
cannam@95 2835 V T76, T77, T6X, T70;
cannam@95 2836 T76 = VFNMS(LDK(KP555570233), T6J, VMUL(LDK(KP831469612), T6K));
cannam@95 2837 T77 = VFMA(LDK(KP555570233), T6G, VMUL(LDK(KP831469612), T6H));
cannam@95 2838 T78 = VSUB(T76, T77);
cannam@95 2839 T7i = VADD(T77, T76);
cannam@95 2840 T6X = VSUB(T6V, T6W);
cannam@95 2841 T70 = VSUB(T6Y, T6Z);
cannam@95 2842 T71 = VFNMS(LDK(KP881921264), T70, VMUL(LDK(KP471396736), T6X));
cannam@95 2843 T7d = VFMA(LDK(KP881921264), T6X, VMUL(LDK(KP471396736), T70));
cannam@95 2844 }
cannam@95 2845 {
cannam@95 2846 V T6N, T72, T7f, T7g;
cannam@95 2847 T6N = VADD(T6F, T6M);
cannam@95 2848 T72 = VADD(T6U, T71);
cannam@95 2849 TfL = VSUB(T6N, T72);
cannam@95 2850 STM4(&(ro[43]), TfL, ovs, &(ro[1]));
cannam@95 2851 TfM = VADD(T6N, T72);
cannam@95 2852 STM4(&(ro[11]), TfM, ovs, &(ro[1]));
cannam@95 2853 T7f = VADD(T75, T78);
cannam@95 2854 T7g = VADD(T7c, T7d);
cannam@95 2855 TfN = VSUB(T7f, T7g);
cannam@95 2856 STM4(&(io[43]), TfN, ovs, &(io[1]));
cannam@95 2857 TfO = VADD(T7f, T7g);
cannam@95 2858 STM4(&(io[11]), TfO, ovs, &(io[1]));
cannam@95 2859 }
cannam@95 2860 {
cannam@95 2861 V T79, T7a, T7b, T7e;
cannam@95 2862 T79 = VSUB(T75, T78);
cannam@95 2863 T7a = VSUB(T71, T6U);
cannam@95 2864 TfP = VSUB(T79, T7a);
cannam@95 2865 STM4(&(io[59]), TfP, ovs, &(io[1]));
cannam@95 2866 TfQ = VADD(T79, T7a);
cannam@95 2867 STM4(&(io[27]), TfQ, ovs, &(io[1]));
cannam@95 2868 T7b = VSUB(T6F, T6M);
cannam@95 2869 T7e = VSUB(T7c, T7d);
cannam@95 2870 TfR = VSUB(T7b, T7e);
cannam@95 2871 STM4(&(ro[59]), TfR, ovs, &(ro[1]));
cannam@95 2872 TfS = VADD(T7b, T7e);
cannam@95 2873 STM4(&(ro[27]), TfS, ovs, &(ro[1]));
cannam@95 2874 }
cannam@95 2875 {
cannam@95 2876 V T7j, T7q, T7z, T7A;
cannam@95 2877 T7j = VADD(T7h, T7i);
cannam@95 2878 T7q = VADD(T7m, T7p);
cannam@95 2879 TfT = VSUB(T7j, T7q);
cannam@95 2880 STM4(&(ro[35]), TfT, ovs, &(ro[1]));
cannam@95 2881 TfU = VADD(T7j, T7q);
cannam@95 2882 STM4(&(ro[3]), TfU, ovs, &(ro[1]));
cannam@95 2883 T7z = VADD(T7r, T7s);
cannam@95 2884 T7A = VADD(T7w, T7x);
cannam@95 2885 TfV = VSUB(T7z, T7A);
cannam@95 2886 STM4(&(io[35]), TfV, ovs, &(io[1]));
cannam@95 2887 TfW = VADD(T7z, T7A);
cannam@95 2888 STM4(&(io[3]), TfW, ovs, &(io[1]));
cannam@95 2889 }
cannam@95 2890 {
cannam@95 2891 V T7t, T7u, T7v, T7y;
cannam@95 2892 T7t = VSUB(T7r, T7s);
cannam@95 2893 T7u = VSUB(T7p, T7m);
cannam@95 2894 TfX = VSUB(T7t, T7u);
cannam@95 2895 STM4(&(io[51]), TfX, ovs, &(io[1]));
cannam@95 2896 TfY = VADD(T7t, T7u);
cannam@95 2897 STM4(&(io[19]), TfY, ovs, &(io[1]));
cannam@95 2898 T7v = VSUB(T7h, T7i);
cannam@95 2899 T7y = VSUB(T7w, T7x);
cannam@95 2900 TfZ = VSUB(T7v, T7y);
cannam@95 2901 STM4(&(ro[51]), TfZ, ovs, &(ro[1]));
cannam@95 2902 Tg0 = VADD(T7v, T7y);
cannam@95 2903 STM4(&(ro[19]), Tg0, ovs, &(ro[1]));
cannam@95 2904 }
cannam@95 2905 }
cannam@95 2906 {
cannam@95 2907 V T9j, T9V, Ta0, Taa, Ta3, Tab, T9q, Ta6, T9y, T9Q, T9J, Ta5, T9M, T9W, T9F;
cannam@95 2908 V T9R;
cannam@95 2909 {
cannam@95 2910 V T9h, T9i, T9Y, T9Z;
cannam@95 2911 T9h = VADD(T7B, T7C);
cannam@95 2912 T9i = VADD(T8J, T8I);
cannam@95 2913 T9j = VSUB(T9h, T9i);
cannam@95 2914 T9V = VADD(T9h, T9i);
cannam@95 2915 T9Y = VADD(T9s, T9t);
cannam@95 2916 T9Z = VADD(T9v, T9w);
cannam@95 2917 Ta0 = VFMA(LDK(KP995184726), T9Y, VMUL(LDK(KP098017140), T9Z));
cannam@95 2918 Taa = VFNMS(LDK(KP098017140), T9Y, VMUL(LDK(KP995184726), T9Z));
cannam@95 2919 }
cannam@95 2920 {
cannam@95 2921 V Ta1, Ta2, T9m, T9p;
cannam@95 2922 Ta1 = VADD(T9z, T9A);
cannam@95 2923 Ta2 = VADD(T9C, T9D);
cannam@95 2924 Ta3 = VFNMS(LDK(KP098017140), Ta2, VMUL(LDK(KP995184726), Ta1));
cannam@95 2925 Tab = VFMA(LDK(KP098017140), Ta1, VMUL(LDK(KP995184726), Ta2));
cannam@95 2926 T9m = VFNMS(LDK(KP195090322), T9l, VMUL(LDK(KP980785280), T9k));
cannam@95 2927 T9p = VFMA(LDK(KP195090322), T9n, VMUL(LDK(KP980785280), T9o));
cannam@95 2928 T9q = VSUB(T9m, T9p);
cannam@95 2929 Ta6 = VADD(T9m, T9p);
cannam@95 2930 }
cannam@95 2931 {
cannam@95 2932 V T9u, T9x, T9H, T9I;
cannam@95 2933 T9u = VSUB(T9s, T9t);
cannam@95 2934 T9x = VSUB(T9v, T9w);
cannam@95 2935 T9y = VFMA(LDK(KP634393284), T9u, VMUL(LDK(KP773010453), T9x));
cannam@95 2936 T9Q = VFNMS(LDK(KP773010453), T9u, VMUL(LDK(KP634393284), T9x));
cannam@95 2937 T9H = VADD(T8F, T8G);
cannam@95 2938 T9I = VADD(T7G, T7J);
cannam@95 2939 T9J = VSUB(T9H, T9I);
cannam@95 2940 Ta5 = VADD(T9H, T9I);
cannam@95 2941 }
cannam@95 2942 {
cannam@95 2943 V T9K, T9L, T9B, T9E;
cannam@95 2944 T9K = VFNMS(LDK(KP195090322), T9o, VMUL(LDK(KP980785280), T9n));
cannam@95 2945 T9L = VFMA(LDK(KP980785280), T9l, VMUL(LDK(KP195090322), T9k));
cannam@95 2946 T9M = VSUB(T9K, T9L);
cannam@95 2947 T9W = VADD(T9L, T9K);
cannam@95 2948 T9B = VSUB(T9z, T9A);
cannam@95 2949 T9E = VSUB(T9C, T9D);
cannam@95 2950 T9F = VFNMS(LDK(KP773010453), T9E, VMUL(LDK(KP634393284), T9B));
cannam@95 2951 T9R = VFMA(LDK(KP773010453), T9B, VMUL(LDK(KP634393284), T9E));
cannam@95 2952 }
cannam@95 2953 {
cannam@95 2954 V T9r, T9G, Tg1, Tg2;
cannam@95 2955 T9r = VADD(T9j, T9q);
cannam@95 2956 T9G = VADD(T9y, T9F);
cannam@95 2957 Tg1 = VSUB(T9r, T9G);
cannam@95 2958 STM4(&(ro[41]), Tg1, ovs, &(ro[1]));
cannam@95 2959 STN4(&(ro[40]), TeR, Tg1, Tff, TfL, ovs);
cannam@95 2960 Tg2 = VADD(T9r, T9G);
cannam@95 2961 STM4(&(ro[9]), Tg2, ovs, &(ro[1]));
cannam@95 2962 STN4(&(ro[8]), TeS, Tg2, Tfg, TfM, ovs);
cannam@95 2963 }
cannam@95 2964 {
cannam@95 2965 V T9T, T9U, Tg3, Tg4;
cannam@95 2966 T9T = VADD(T9J, T9M);
cannam@95 2967 T9U = VADD(T9Q, T9R);
cannam@95 2968 Tg3 = VSUB(T9T, T9U);
cannam@95 2969 STM4(&(io[41]), Tg3, ovs, &(io[1]));
cannam@95 2970 STN4(&(io[40]), TeT, Tg3, Tfh, TfN, ovs);
cannam@95 2971 Tg4 = VADD(T9T, T9U);
cannam@95 2972 STM4(&(io[9]), Tg4, ovs, &(io[1]));
cannam@95 2973 STN4(&(io[8]), TeU, Tg4, Tfi, TfO, ovs);
cannam@95 2974 }
cannam@95 2975 {
cannam@95 2976 V T9N, T9O, Tg5, Tg6;
cannam@95 2977 T9N = VSUB(T9J, T9M);
cannam@95 2978 T9O = VSUB(T9F, T9y);
cannam@95 2979 Tg5 = VSUB(T9N, T9O);
cannam@95 2980 STM4(&(io[57]), Tg5, ovs, &(io[1]));
cannam@95 2981 STN4(&(io[56]), TeV, Tg5, Tfj, TfP, ovs);
cannam@95 2982 Tg6 = VADD(T9N, T9O);
cannam@95 2983 STM4(&(io[25]), Tg6, ovs, &(io[1]));
cannam@95 2984 STN4(&(io[24]), TeW, Tg6, Tfk, TfQ, ovs);
cannam@95 2985 }
cannam@95 2986 {
cannam@95 2987 V T9P, T9S, Tg7, Tg8;
cannam@95 2988 T9P = VSUB(T9j, T9q);
cannam@95 2989 T9S = VSUB(T9Q, T9R);
cannam@95 2990 Tg7 = VSUB(T9P, T9S);
cannam@95 2991 STM4(&(ro[57]), Tg7, ovs, &(ro[1]));
cannam@95 2992 STN4(&(ro[56]), TeX, Tg7, Tfl, TfR, ovs);
cannam@95 2993 Tg8 = VADD(T9P, T9S);
cannam@95 2994 STM4(&(ro[25]), Tg8, ovs, &(ro[1]));
cannam@95 2995 STN4(&(ro[24]), TeY, Tg8, Tfm, TfS, ovs);
cannam@95 2996 }
cannam@95 2997 {
cannam@95 2998 V T9X, Ta4, Tg9, Tga;
cannam@95 2999 T9X = VADD(T9V, T9W);
cannam@95 3000 Ta4 = VADD(Ta0, Ta3);
cannam@95 3001 Tg9 = VSUB(T9X, Ta4);
cannam@95 3002 STM4(&(ro[33]), Tg9, ovs, &(ro[1]));
cannam@95 3003 STN4(&(ro[32]), TeJ, Tg9, Tfn, TfT, ovs);
cannam@95 3004 Tga = VADD(T9X, Ta4);
cannam@95 3005 STM4(&(ro[1]), Tga, ovs, &(ro[1]));
cannam@95 3006 STN4(&(ro[0]), TeL, Tga, Tfo, TfU, ovs);
cannam@95 3007 }
cannam@95 3008 {
cannam@95 3009 V Tad, Tae, Tgb, Tgc;
cannam@95 3010 Tad = VADD(Ta5, Ta6);
cannam@95 3011 Tae = VADD(Taa, Tab);
cannam@95 3012 Tgb = VSUB(Tad, Tae);
cannam@95 3013 STM4(&(io[33]), Tgb, ovs, &(io[1]));
cannam@95 3014 STN4(&(io[32]), TeK, Tgb, Tfp, TfV, ovs);
cannam@95 3015 Tgc = VADD(Tad, Tae);
cannam@95 3016 STM4(&(io[1]), Tgc, ovs, &(io[1]));
cannam@95 3017 STN4(&(io[0]), TeM, Tgc, Tfq, TfW, ovs);
cannam@95 3018 }
cannam@95 3019 {
cannam@95 3020 V Ta7, Ta8, Tgd, Tge;
cannam@95 3021 Ta7 = VSUB(Ta5, Ta6);
cannam@95 3022 Ta8 = VSUB(Ta3, Ta0);
cannam@95 3023 Tgd = VSUB(Ta7, Ta8);
cannam@95 3024 STM4(&(io[49]), Tgd, ovs, &(io[1]));
cannam@95 3025 STN4(&(io[48]), TeP, Tgd, Tfr, TfX, ovs);
cannam@95 3026 Tge = VADD(Ta7, Ta8);
cannam@95 3027 STM4(&(io[17]), Tge, ovs, &(io[1]));
cannam@95 3028 STN4(&(io[16]), TeN, Tge, Tfs, TfY, ovs);
cannam@95 3029 }
cannam@95 3030 {
cannam@95 3031 V Ta9, Tac, Tgf, Tgg;
cannam@95 3032 Ta9 = VSUB(T9V, T9W);
cannam@95 3033 Tac = VSUB(Taa, Tab);
cannam@95 3034 Tgf = VSUB(Ta9, Tac);
cannam@95 3035 STM4(&(ro[49]), Tgf, ovs, &(ro[1]));
cannam@95 3036 STN4(&(ro[48]), TeQ, Tgf, Tft, TfZ, ovs);
cannam@95 3037 Tgg = VADD(Ta9, Tac);
cannam@95 3038 STM4(&(ro[17]), Tgg, ovs, &(ro[1]));
cannam@95 3039 STN4(&(ro[16]), TeO, Tgg, Tfu, Tg0, ovs);
cannam@95 3040 }
cannam@95 3041 }
cannam@95 3042 {
cannam@95 3043 V Tgh, Tgi, Tgj, Tgk, Tgl, Tgm, Tgn, Tgo, Tgp, Tgq, Tgr, Tgs, Tgt, Tgu, Tgv;
cannam@95 3044 V Tgw;
cannam@95 3045 {
cannam@95 3046 V T3v, T6j, T6o, T6y, T6r, T6z, T48, T6u, T52, T6e, T67, T6t, T6a, T6k, T5V;
cannam@95 3047 V T6f;
cannam@95 3048 {
cannam@95 3049 V T3f, T3u, T6m, T6n;
cannam@95 3050 T3f = VSUB(T37, T3e);
cannam@95 3051 T3u = VSUB(T3m, T3t);
cannam@95 3052 T3v = VSUB(T3f, T3u);
cannam@95 3053 T6j = VADD(T3f, T3u);
cannam@95 3054 T6m = VADD(T4q, T4N);
cannam@95 3055 T6n = VADD(T4X, T50);
cannam@95 3056 T6o = VFMA(LDK(KP634393284), T6m, VMUL(LDK(KP773010453), T6n));
cannam@95 3057 T6y = VFNMS(LDK(KP634393284), T6n, VMUL(LDK(KP773010453), T6m));
cannam@95 3058 }
cannam@95 3059 {
cannam@95 3060 V T6p, T6q, T3O, T47;
cannam@95 3061 T6p = VADD(T5j, T5G);
cannam@95 3062 T6q = VADD(T5Q, T5T);
cannam@95 3063 T6r = VFNMS(LDK(KP634393284), T6q, VMUL(LDK(KP773010453), T6p));
cannam@95 3064 T6z = VFMA(LDK(KP773010453), T6q, VMUL(LDK(KP634393284), T6p));
cannam@95 3065 T3O = VFNMS(LDK(KP980785280), T3N, VMUL(LDK(KP195090322), T3G));
cannam@95 3066 T47 = VFMA(LDK(KP195090322), T3Z, VMUL(LDK(KP980785280), T46));
cannam@95 3067 T48 = VSUB(T3O, T47);
cannam@95 3068 T6u = VADD(T3O, T47);
cannam@95 3069 }
cannam@95 3070 {
cannam@95 3071 V T4O, T51, T63, T66;
cannam@95 3072 T4O = VSUB(T4q, T4N);
cannam@95 3073 T51 = VSUB(T4X, T50);
cannam@95 3074 T52 = VFMA(LDK(KP995184726), T4O, VMUL(LDK(KP098017140), T51));
cannam@95 3075 T6e = VFNMS(LDK(KP995184726), T51, VMUL(LDK(KP098017140), T4O));
cannam@95 3076 T63 = VSUB(T5Z, T62);
cannam@95 3077 T66 = VSUB(T64, T65);
cannam@95 3078 T67 = VSUB(T63, T66);
cannam@95 3079 T6t = VADD(T63, T66);
cannam@95 3080 }
cannam@95 3081 {
cannam@95 3082 V T68, T69, T5H, T5U;
cannam@95 3083 T68 = VFNMS(LDK(KP980785280), T3Z, VMUL(LDK(KP195090322), T46));
cannam@95 3084 T69 = VFMA(LDK(KP980785280), T3G, VMUL(LDK(KP195090322), T3N));
cannam@95 3085 T6a = VSUB(T68, T69);
cannam@95 3086 T6k = VADD(T69, T68);
cannam@95 3087 T5H = VSUB(T5j, T5G);
cannam@95 3088 T5U = VSUB(T5Q, T5T);
cannam@95 3089 T5V = VFNMS(LDK(KP995184726), T5U, VMUL(LDK(KP098017140), T5H));
cannam@95 3090 T6f = VFMA(LDK(KP098017140), T5U, VMUL(LDK(KP995184726), T5H));
cannam@95 3091 }
cannam@95 3092 {
cannam@95 3093 V T49, T5W, T6h, T6i;
cannam@95 3094 T49 = VADD(T3v, T48);
cannam@95 3095 T5W = VADD(T52, T5V);
cannam@95 3096 Tgh = VSUB(T49, T5W);
cannam@95 3097 STM4(&(ro[47]), Tgh, ovs, &(ro[1]));
cannam@95 3098 Tgi = VADD(T49, T5W);
cannam@95 3099 STM4(&(ro[15]), Tgi, ovs, &(ro[1]));
cannam@95 3100 T6h = VADD(T67, T6a);
cannam@95 3101 T6i = VADD(T6e, T6f);
cannam@95 3102 Tgj = VSUB(T6h, T6i);
cannam@95 3103 STM4(&(io[47]), Tgj, ovs, &(io[1]));
cannam@95 3104 Tgk = VADD(T6h, T6i);
cannam@95 3105 STM4(&(io[15]), Tgk, ovs, &(io[1]));
cannam@95 3106 }
cannam@95 3107 {
cannam@95 3108 V T6b, T6c, T6d, T6g;
cannam@95 3109 T6b = VSUB(T67, T6a);
cannam@95 3110 T6c = VSUB(T5V, T52);
cannam@95 3111 Tgl = VSUB(T6b, T6c);
cannam@95 3112 STM4(&(io[63]), Tgl, ovs, &(io[1]));
cannam@95 3113 Tgm = VADD(T6b, T6c);
cannam@95 3114 STM4(&(io[31]), Tgm, ovs, &(io[1]));
cannam@95 3115 T6d = VSUB(T3v, T48);
cannam@95 3116 T6g = VSUB(T6e, T6f);
cannam@95 3117 Tgn = VSUB(T6d, T6g);
cannam@95 3118 STM4(&(ro[63]), Tgn, ovs, &(ro[1]));
cannam@95 3119 Tgo = VADD(T6d, T6g);
cannam@95 3120 STM4(&(ro[31]), Tgo, ovs, &(ro[1]));
cannam@95 3121 }
cannam@95 3122 {
cannam@95 3123 V T6l, T6s, T6B, T6C;
cannam@95 3124 T6l = VADD(T6j, T6k);
cannam@95 3125 T6s = VADD(T6o, T6r);
cannam@95 3126 Tgp = VSUB(T6l, T6s);
cannam@95 3127 STM4(&(ro[39]), Tgp, ovs, &(ro[1]));
cannam@95 3128 Tgq = VADD(T6l, T6s);
cannam@95 3129 STM4(&(ro[7]), Tgq, ovs, &(ro[1]));
cannam@95 3130 T6B = VADD(T6t, T6u);
cannam@95 3131 T6C = VADD(T6y, T6z);
cannam@95 3132 Tgr = VSUB(T6B, T6C);
cannam@95 3133 STM4(&(io[39]), Tgr, ovs, &(io[1]));
cannam@95 3134 Tgs = VADD(T6B, T6C);
cannam@95 3135 STM4(&(io[7]), Tgs, ovs, &(io[1]));
cannam@95 3136 }
cannam@95 3137 {
cannam@95 3138 V T6v, T6w, T6x, T6A;
cannam@95 3139 T6v = VSUB(T6t, T6u);
cannam@95 3140 T6w = VSUB(T6r, T6o);
cannam@95 3141 Tgt = VSUB(T6v, T6w);
cannam@95 3142 STM4(&(io[55]), Tgt, ovs, &(io[1]));
cannam@95 3143 Tgu = VADD(T6v, T6w);
cannam@95 3144 STM4(&(io[23]), Tgu, ovs, &(io[1]));
cannam@95 3145 T6x = VSUB(T6j, T6k);
cannam@95 3146 T6A = VSUB(T6y, T6z);
cannam@95 3147 Tgv = VSUB(T6x, T6A);
cannam@95 3148 STM4(&(ro[55]), Tgv, ovs, &(ro[1]));
cannam@95 3149 Tgw = VADD(T6x, T6A);
cannam@95 3150 STM4(&(ro[23]), Tgw, ovs, &(ro[1]));
cannam@95 3151 }
cannam@95 3152 }
cannam@95 3153 {
cannam@95 3154 V T7L, T8X, T92, T9c, T95, T9d, T80, T98, T8k, T8S, T8L, T97, T8O, T8Y, T8D;
cannam@95 3155 V T8T;
cannam@95 3156 {
cannam@95 3157 V T7D, T7K, T90, T91;
cannam@95 3158 T7D = VSUB(T7B, T7C);
cannam@95 3159 T7K = VSUB(T7G, T7J);
cannam@95 3160 T7L = VSUB(T7D, T7K);
cannam@95 3161 T8X = VADD(T7D, T7K);
cannam@95 3162 T90 = VADD(T84, T8b);
cannam@95 3163 T91 = VADD(T8f, T8i);
cannam@95 3164 T92 = VFMA(LDK(KP471396736), T90, VMUL(LDK(KP881921264), T91));
cannam@95 3165 T9c = VFNMS(LDK(KP471396736), T91, VMUL(LDK(KP881921264), T90));
cannam@95 3166 }
cannam@95 3167 {
cannam@95 3168 V T93, T94, T7S, T7Z;
cannam@95 3169 T93 = VADD(T8n, T8u);
cannam@95 3170 T94 = VADD(T8y, T8B);
cannam@95 3171 T95 = VFNMS(LDK(KP471396736), T94, VMUL(LDK(KP881921264), T93));
cannam@95 3172 T9d = VFMA(LDK(KP881921264), T94, VMUL(LDK(KP471396736), T93));
cannam@95 3173 T7S = VFNMS(LDK(KP831469612), T7R, VMUL(LDK(KP555570233), T7O));
cannam@95 3174 T7Z = VFMA(LDK(KP831469612), T7V, VMUL(LDK(KP555570233), T7Y));
cannam@95 3175 T80 = VSUB(T7S, T7Z);
cannam@95 3176 T98 = VADD(T7S, T7Z);
cannam@95 3177 }
cannam@95 3178 {
cannam@95 3179 V T8c, T8j, T8H, T8K;
cannam@95 3180 T8c = VSUB(T84, T8b);
cannam@95 3181 T8j = VSUB(T8f, T8i);
cannam@95 3182 T8k = VFMA(LDK(KP956940335), T8c, VMUL(LDK(KP290284677), T8j));
cannam@95 3183 T8S = VFNMS(LDK(KP956940335), T8j, VMUL(LDK(KP290284677), T8c));
cannam@95 3184 T8H = VSUB(T8F, T8G);
cannam@95 3185 T8K = VSUB(T8I, T8J);
cannam@95 3186 T8L = VSUB(T8H, T8K);
cannam@95 3187 T97 = VADD(T8H, T8K);
cannam@95 3188 }
cannam@95 3189 {
cannam@95 3190 V T8M, T8N, T8v, T8C;
cannam@95 3191 T8M = VFNMS(LDK(KP831469612), T7Y, VMUL(LDK(KP555570233), T7V));
cannam@95 3192 T8N = VFMA(LDK(KP555570233), T7R, VMUL(LDK(KP831469612), T7O));
cannam@95 3193 T8O = VSUB(T8M, T8N);
cannam@95 3194 T8Y = VADD(T8N, T8M);
cannam@95 3195 T8v = VSUB(T8n, T8u);
cannam@95 3196 T8C = VSUB(T8y, T8B);
cannam@95 3197 T8D = VFNMS(LDK(KP956940335), T8C, VMUL(LDK(KP290284677), T8v));
cannam@95 3198 T8T = VFMA(LDK(KP290284677), T8C, VMUL(LDK(KP956940335), T8v));
cannam@95 3199 }
cannam@95 3200 {
cannam@95 3201 V T81, T8E, Tgx, Tgy;
cannam@95 3202 T81 = VADD(T7L, T80);
cannam@95 3203 T8E = VADD(T8k, T8D);
cannam@95 3204 Tgx = VSUB(T81, T8E);
cannam@95 3205 STM4(&(ro[45]), Tgx, ovs, &(ro[1]));
cannam@95 3206 STN4(&(ro[44]), TeZ, Tgx, Tfv, Tgh, ovs);
cannam@95 3207 Tgy = VADD(T81, T8E);
cannam@95 3208 STM4(&(ro[13]), Tgy, ovs, &(ro[1]));
cannam@95 3209 STN4(&(ro[12]), Tf0, Tgy, Tfw, Tgi, ovs);
cannam@95 3210 }
cannam@95 3211 {
cannam@95 3212 V T8V, T8W, Tgz, TgA;
cannam@95 3213 T8V = VADD(T8L, T8O);
cannam@95 3214 T8W = VADD(T8S, T8T);
cannam@95 3215 Tgz = VSUB(T8V, T8W);
cannam@95 3216 STM4(&(io[45]), Tgz, ovs, &(io[1]));
cannam@95 3217 STN4(&(io[44]), Tf1, Tgz, Tfx, Tgj, ovs);
cannam@95 3218 TgA = VADD(T8V, T8W);
cannam@95 3219 STM4(&(io[13]), TgA, ovs, &(io[1]));
cannam@95 3220 STN4(&(io[12]), Tf2, TgA, Tfy, Tgk, ovs);
cannam@95 3221 }
cannam@95 3222 {
cannam@95 3223 V T8P, T8Q, TgB, TgC;
cannam@95 3224 T8P = VSUB(T8L, T8O);
cannam@95 3225 T8Q = VSUB(T8D, T8k);
cannam@95 3226 TgB = VSUB(T8P, T8Q);
cannam@95 3227 STM4(&(io[61]), TgB, ovs, &(io[1]));
cannam@95 3228 STN4(&(io[60]), Tf3, TgB, Tfz, Tgl, ovs);
cannam@95 3229 TgC = VADD(T8P, T8Q);
cannam@95 3230 STM4(&(io[29]), TgC, ovs, &(io[1]));
cannam@95 3231 STN4(&(io[28]), Tf4, TgC, TfA, Tgm, ovs);
cannam@95 3232 }
cannam@95 3233 {
cannam@95 3234 V T8R, T8U, TgD, TgE;
cannam@95 3235 T8R = VSUB(T7L, T80);
cannam@95 3236 T8U = VSUB(T8S, T8T);
cannam@95 3237 TgD = VSUB(T8R, T8U);
cannam@95 3238 STM4(&(ro[61]), TgD, ovs, &(ro[1]));
cannam@95 3239 STN4(&(ro[60]), Tf5, TgD, TfB, Tgn, ovs);
cannam@95 3240 TgE = VADD(T8R, T8U);
cannam@95 3241 STM4(&(ro[29]), TgE, ovs, &(ro[1]));
cannam@95 3242 STN4(&(ro[28]), Tf6, TgE, TfC, Tgo, ovs);
cannam@95 3243 }
cannam@95 3244 {
cannam@95 3245 V T8Z, T96, TgF, TgG;
cannam@95 3246 T8Z = VADD(T8X, T8Y);
cannam@95 3247 T96 = VADD(T92, T95);
cannam@95 3248 TgF = VSUB(T8Z, T96);
cannam@95 3249 STM4(&(ro[37]), TgF, ovs, &(ro[1]));
cannam@95 3250 STN4(&(ro[36]), Tf7, TgF, TfD, Tgp, ovs);
cannam@95 3251 TgG = VADD(T8Z, T96);
cannam@95 3252 STM4(&(ro[5]), TgG, ovs, &(ro[1]));
cannam@95 3253 STN4(&(ro[4]), Tf8, TgG, TfE, Tgq, ovs);
cannam@95 3254 }
cannam@95 3255 {
cannam@95 3256 V T9f, T9g, TgH, TgI;
cannam@95 3257 T9f = VADD(T97, T98);
cannam@95 3258 T9g = VADD(T9c, T9d);
cannam@95 3259 TgH = VSUB(T9f, T9g);
cannam@95 3260 STM4(&(io[37]), TgH, ovs, &(io[1]));
cannam@95 3261 STN4(&(io[36]), Tf9, TgH, TfF, Tgr, ovs);
cannam@95 3262 TgI = VADD(T9f, T9g);
cannam@95 3263 STM4(&(io[5]), TgI, ovs, &(io[1]));
cannam@95 3264 STN4(&(io[4]), Tfa, TgI, TfG, Tgs, ovs);
cannam@95 3265 }
cannam@95 3266 {
cannam@95 3267 V T99, T9a, TgJ, TgK;
cannam@95 3268 T99 = VSUB(T97, T98);
cannam@95 3269 T9a = VSUB(T95, T92);
cannam@95 3270 TgJ = VSUB(T99, T9a);
cannam@95 3271 STM4(&(io[53]), TgJ, ovs, &(io[1]));
cannam@95 3272 STN4(&(io[52]), Tfb, TgJ, TfH, Tgt, ovs);
cannam@95 3273 TgK = VADD(T99, T9a);
cannam@95 3274 STM4(&(io[21]), TgK, ovs, &(io[1]));
cannam@95 3275 STN4(&(io[20]), Tfc, TgK, TfI, Tgu, ovs);
cannam@95 3276 }
cannam@95 3277 {
cannam@95 3278 V T9b, T9e, TgL, TgM;
cannam@95 3279 T9b = VSUB(T8X, T8Y);
cannam@95 3280 T9e = VSUB(T9c, T9d);
cannam@95 3281 TgL = VSUB(T9b, T9e);
cannam@95 3282 STM4(&(ro[53]), TgL, ovs, &(ro[1]));
cannam@95 3283 STN4(&(ro[52]), Tfd, TgL, TfJ, Tgv, ovs);
cannam@95 3284 TgM = VADD(T9b, T9e);
cannam@95 3285 STM4(&(ro[21]), TgM, ovs, &(ro[1]));
cannam@95 3286 STN4(&(ro[20]), Tfe, TgM, TfK, Tgw, ovs);
cannam@95 3287 }
cannam@95 3288 }
cannam@95 3289 }
cannam@95 3290 }
cannam@95 3291 }
cannam@95 3292 }
cannam@95 3293 }
cannam@95 3294 VLEAVE();
cannam@95 3295 }
cannam@95 3296
cannam@95 3297 static const kdft_desc desc = { 64, XSIMD_STRING("n2sv_64"), {808, 144, 104, 0}, &GENUS, 0, 1, 0, 0 };
cannam@95 3298
cannam@95 3299 void XSIMD(codelet_n2sv_64) (planner *p) {
cannam@95 3300 X(kdft_register) (p, n2sv_64, &desc);
cannam@95 3301 }
cannam@95 3302
cannam@95 3303 #endif /* HAVE_FMA */