⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hb2_32.c

📁 快速fft变换
💻 C
📖 第 1 页 / 共 4 页
字号:
	       }	       {		    E TN, T5O, TQ, T5Z, T20, T5P, T1X, T60, TX, T63, T27, T5W, TU, T62, T24;		    E T5T;		    {			 E TL, TM, T1V, T1W;			 TL = ci[0];			 TM = cr[WS(rs, 15)];			 TN = TL + TM;			 T5O = TL - TM;			 {			      E TO, TP, T1Y, T1Z;			      TO = cr[WS(rs, 7)];			      TP = ci[WS(rs, 8)];			      TQ = TO + TP;			      T5Z = TO - TP;			      T1Y = ci[WS(rs, 24)];			      T1Z = cr[WS(rs, 23)];			      T20 = T1Y - T1Z;			      T5P = T1Y + T1Z;			 }			 T1V = ci[WS(rs, 16)];			 T1W = cr[WS(rs, 31)];			 T1X = T1V - T1W;			 T60 = T1V + T1W;			 {			      E TV, TW, T5U, T25, T26, T5V;			      TV = ci[WS(rs, 4)];			      TW = cr[WS(rs, 11)];			      T5U = TV - TW;			      T25 = ci[WS(rs, 20)];			      T26 = cr[WS(rs, 27)];			      T5V = T25 + T26;			      TX = TV + TW;			      T63 = T5U + T5V;			      T27 = T25 - T26;			      T5W = T5U - T5V;			 }			 {			      E TS, TT, T5R, T22, T23, T5S;			      TS = cr[WS(rs, 3)];			      TT = ci[WS(rs, 12)];			      T5R = TS - TT;			      T22 = ci[WS(rs, 28)];			      T23 = cr[WS(rs, 19)];			      T5S = T22 + T23;			      TU = TS + TT;			      T62 = T5R + T5S;			      T24 = T22 - T23;			      T5T = T5R - T5S;			 }		    }		    {			 E TR, TY, T7m, T7n;			 TR = TN + TQ;			 TY = TU + TX;			 TZ = TR + TY;			 T1U = TR - TY;			 T7m = KP707106781 * (T5T - T5W);			 T7n = T5Z + T60;			 T7o = T7m - T7n;			 T89 = T7n + T7m;		    }		    {			 E T7p, T7q, T21, T28;			 T7p = T5O + T5P;			 T7q = KP707106781 * (T62 + T63);			 T7r = T7p - T7q;			 T88 = T7p + T7q;			 T21 = T1X + T20;			 T28 = T24 + T27;			 T29 = T21 - T28;			 T36 = T21 + T28;		    }		    {			 E T3F, T3G, T5Q, T5X;			 T3F = T1X - T20;			 T3G = TU - TX;			 T3H = T3F - T3G;			 T4z = T3G + T3F;			 T5Q = T5O - T5P;			 T5X = KP707106781 * (T5T + T5W);			 T5Y = T5Q - T5X;			 T6M = T5Q + T5X;		    }		    {			 E T61, T64, T3I, T3J;			 T61 = T5Z - T60;			 T64 = KP707106781 * (T62 - T63);			 T65 = T61 - T64;			 T6N = T61 + T64;			 T3I = TN - TQ;			 T3J = T27 - T24;			 T3K = T3I - T3J;			 T4A = T3I + T3J;		    }	       }	       {		    E Tv, T10, T30, T34, T37, T38;		    Tv = Tf + Tu;		    T10 = TK + TZ;		    T30 = Tv - T10;		    T34 = T32 + T33;		    T37 = T35 + T36;		    T38 = T34 - T37;		    cr[0] = Tv + T10;		    ci[0] = T34 + T37;		    cr[WS(rs, 16)] = FNMS(T31, T38, T2Z * T30);		    ci[WS(rs, 16)] = FMA(T31, T30, T2Z * T38);	       }	       {		    E T3e, T3o, T3k, T3s;		    {			 E T3c, T3d, T3i, T3j;			 T3c = Tf - Tu;			 T3d = T36 - T35;			 T3e = T3c - T3d;			 T3o = T3c + T3d;			 T3i = T32 - T33;			 T3j = TK - TZ;			 T3k = T3i - T3j;			 T3s = T3j + T3i;		    }		    cr[WS(rs, 24)] = FNMS(T3h, T3k, T3b * T3e);		    ci[WS(rs, 24)] = FMA(T3b, T3k, T3h * T3e);		    cr[WS(rs, 8)] = FNMS(T3r, T3s, T3n * T3o);		    ci[WS(rs, 8)] = FMA(T3n, T3s, T3r * T3o);	       }	       {		    E T1C, T2u, T2M, T2G, T2x, T2H, T2b, T2N;		    T1C = T1m + T1B;		    T2u = T2e + T2t;		    T2M = T2t - T2e;		    T2G = T1m - T1B;		    {			 E T2v, T2w, T1T, T2a;			 T2v = T1D + T1S;			 T2w = T29 - T1U;			 T2x = KP707106781 * (T2v + T2w);			 T2H = KP707106781 * (T2w - T2v);			 T1T = T1D - T1S;			 T2a = T1U + T29;			 T2b = KP707106781 * (T1T + T2a);			 T2N = KP707106781 * (T1T - T2a);		    }		    {			 E T2c, T2y, T2S, T2W;			 T2c = T1C - T2b;			 T2y = T2u - T2x;			 cr[WS(rs, 20)] = FNMS(T2d, T2y, T1l * T2c);			 ci[WS(rs, 20)] = FMA(T2d, T2c, T1l * T2y);			 T2S = T2G + T2H;			 T2W = T2M + T2N;			 cr[WS(rs, 12)] = FNMS(T2V, T2W, T2R * T2S);			 ci[WS(rs, 12)] = FMA(T2R, T2W, T2V * T2S);		    }		    {			 E T2A, T2C, T2I, T2O;			 T2A = T1C + T2b;			 T2C = T2u + T2x;			 cr[WS(rs, 4)] = FNMS(T2B, T2C, T2z * T2A);			 ci[WS(rs, 4)] = FMA(T2B, T2A, T2z * T2C);			 T2I = T2G - T2H;			 T2O = T2M - T2N;			 cr[WS(rs, 28)] = FNMS(T2L, T2O, T2F * T2I);			 ci[WS(rs, 28)] = FMA(T2F, T2O, T2L * T2I);		    }	       }	       {		    E T4y, T4U, T4K, T4Y, T4F, T4Z, T4N, T4V, T4x, T4J;		    T4x = KP707106781 * (T3Z + T40);		    T4y = T4w - T4x;		    T4U = T4w + T4x;		    T4J = KP707106781 * (T3C + T3z);		    T4K = T4I - T4J;		    T4Y = T4I + T4J;		    {			 E T4B, T4E, T4L, T4M;			 T4B = FNMS(KP382683432, T4A, KP923879532 * T4z);			 T4E = FMA(KP923879532, T4C, KP382683432 * T4D);			 T4F = T4B - T4E;			 T4Z = T4E + T4B;			 T4L = FNMS(KP382683432, T4C, KP923879532 * T4D);			 T4M = FMA(KP382683432, T4z, KP923879532 * T4A);			 T4N = T4L - T4M;			 T4V = T4L + T4M;		    }		    {			 E T4G, T4O, T51, T52;			 T4G = T4y - T4F;			 T4O = T4K - T4N;			 cr[WS(rs, 26)] = FNMS(T4H, T4O, T4v * T4G);			 ci[WS(rs, 26)] = FMA(T4H, T4G, T4v * T4O);			 T51 = T4U + T4V;			 T52 = T4Y + T4Z;			 cr[WS(rs, 2)] = FNMS(T1c, T52, T17 * T51);			 ci[WS(rs, 2)] = FMA(T17, T52, T1c * T51);		    }		    {			 E T4Q, T4S, T4W, T50;			 T4Q = T4y + T4F;			 T4S = T4K + T4N;			 cr[WS(rs, 10)] = FNMS(T4R, T4S, T4P * T4Q);			 ci[WS(rs, 10)] = FMA(T4R, T4Q, T4P * T4S);			 T4W = T4U - T4V;			 T50 = T4Y - T4Z;			 cr[WS(rs, 18)] = FNMS(T4X, T50, T4T * T4W);			 ci[WS(rs, 18)] = FMA(T4T, T50, T4X * T4W);		    }	       }	       {		    E T3E, T4k, T42, T4o, T3T, T4p, T45, T4l, T3D, T41;		    T3D = KP707106781 * (T3z - T3C);		    T3E = T3w - T3D;		    T4k = T3w + T3D;		    T41 = KP707106781 * (T3Z - T40);		    T42 = T3Y - T41;		    T4o = T3Y + T41;		    {			 E T3L, T3S, T43, T44;			 T3L = FNMS(KP923879532, T3K, KP382683432 * T3H);			 T3S = FMA(KP382683432, T3O, KP923879532 * T3R);			 T3T = T3L - T3S;			 T4p = T3S + T3L;			 T43 = FNMS(KP923879532, T3O, KP382683432 * T3R);			 T44 = FMA(KP923879532, T3H, KP382683432 * T3K);			 T45 = T43 - T44;			 T4l = T43 + T44;		    }		    {			 E T3U, T46, T4s, T4u;			 T3U = T3E - T3T;			 T46 = T42 - T45;			 cr[WS(rs, 30)] = FNMS(T3V, T46, T3t * T3U);			 ci[WS(rs, 30)] = FMA(T3V, T3U, T3t * T46);			 T4s = T4k + T4l;			 T4u = T4o + T4p;			 cr[WS(rs, 6)] = FNMS(T4t, T4u, T4r * T4s);			 ci[WS(rs, 6)] = FMA(T4r, T4u, T4t * T4s);		    }		    {			 E T4e, T4g, T4m, T4q;			 T4e = T3E + T3T;			 T4g = T42 + T45;			 cr[WS(rs, 14)] = FNMS(T4f, T4g, T4d * T4e);			 ci[WS(rs, 14)] = FMA(T4f, T4e, T4d * T4g);			 T4m = T4k - T4l;			 T4q = T4o - T4p;			 cr[WS(rs, 22)] = FNMS(T4n, T4q, T4j * T4m);			 ci[WS(rs, 22)] = FMA(T4j, T4q, T4n * T4m);		    }	       }	       {		    E T6I, T72, T6X, T73, T6P, T77, T6U, T76;		    {			 E T6G, T6H, T6V, T6W;			 T6G = T56 + T5d;			 T6H = T6h + T6i;			 T6I = T6G + T6H;			 T72 = T6G - T6H;			 T6V = FMA(KP195090322, T6J, KP980785280 * T6K);			 T6W = FNMS(KP195090322, T6M, KP980785280 * T6N);			 T6X = T6V + T6W;			 T73 = T6W - T6V;		    }		    {			 E T6L, T6O, T6S, T6T;			 T6L = FNMS(KP195090322, T6K, KP980785280 * T6J);			 T6O = FMA(KP980785280, T6M, KP195090322 * T6N);			 T6P = T6L + T6O;			 T77 = T6L - T6O;			 T6S = T6c + T6f;			 T6T = T5s + T5l;			 T6U = T6S + T6T;			 T76 = T6S - T6T;		    }		    {			 E T6Q, T6Y, T79, T7a;			 T6Q = T6I - T6P;			 T6Y = T6U - T6X;			 cr[WS(rs, 17)] = FNMS(T6R, T6Y, T6F * T6Q);			 ci[WS(rs, 17)] = FMA(T6R, T6Q, T6F * T6Y);			 T79 = T72 + T73;			 T7a = T76 + T77;			 cr[WS(rs, 9)] = FNMS(T1d, T7a, T18 * T79);			 ci[WS(rs, 9)] = FMA(T18, T7a, T1d * T79);		    }		    {			 E T6Z, T70, T74, T78;			 T6Z = T6I + T6P;			 T70 = T6U + T6X;			 cr[WS(rs, 1)] = FNMS(T14, T70, T11 * T6Z);			 ci[WS(rs, 1)] = FMA(T14, T6Z, T11 * T70);			 T74 = T72 - T73;			 T78 = T76 - T77;			 cr[WS(rs, 25)] = FNMS(T75, T78, T71 * T74);			 ci[WS(rs, 25)] = FMA(T71, T78, T75 * T74);		    }	       }	       {		    E T84, T8q, T8l, T8r, T8b, T8v, T8i, T8u;		    {			 E T82, T83, T8j, T8k;			 T82 = T7b + T7c;			 T83 = T7F + T7G;			 T84 = T82 - T83;			 T8q = T82 + T83;			 T8j = FMA(KP195090322, T86, KP980785280 * T85);			 T8k = FMA(KP195090322, T89, KP980785280 * T88);			 T8l = T8j - T8k;			 T8r = T8j + T8k;		    }		    {			 E T87, T8a, T8g, T8h;			 T87 = FNMS(KP980785280, T86, KP195090322 * T85);			 T8a = FNMS(KP980785280, T89, KP195090322 * T88);			 T8b = T87 + T8a;			 T8v = T87 - T8a;			 T8g = T7C - T7D;			 T8h = T7g - T7j;			 T8i = T8g + T8h;			 T8u = T8g - T8h;		    }		    {			 E T8c, T8m, T8y, T8A;			 T8c = T84 - T8b;			 T8m = T8i - T8l;			 cr[WS(rs, 23)] = FNMS(T8f, T8m, T81 * T8c);			 ci[WS(rs, 23)] = FMA(T8f, T8c, T81 * T8m);			 T8y = T8q + T8r;			 T8A = T8u - T8v;			 cr[WS(rs, 31)] = FNMS(T8z, T8A, T8x * T8y);			 ci[WS(rs, 31)] = FMA(T8x, T8A, T8z * T8y);		    }		    {			 E T8n, T8o, T8s, T8w;			 T8n = T84 + T8b;			 T8o = T8i + T8l;			 cr[WS(rs, 7)] = FNMS(T1j, T8o, T1f * T8n);			 ci[WS(rs, 7)] = FMA(T1j, T8n, T1f * T8o);			 T8s = T8q - T8r;			 T8w = T8u + T8v;			 cr[WS(rs, 15)] = FNMS(T8t, T8w, T8p * T8s);			 ci[WS(rs, 15)] = FMA(T8p, T8w, T8t * T8s);		    }	       }	       {		    E T5u, T6u, T6n, T6v, T67, T6B, T6k, T6A;		    {			 E T5e, T5t, T6l, T6m;			 T5e = T56 - T5d;			 T5t = T5l - T5s;			 T5u = T5e + T5t;			 T6u = T5e - T5t;			 T6l = FMA(KP831469612, T5F, KP555570233 * T5M);			 T6m = FNMS(KP831469612, T5Y, KP555570233 * T65);			 T6n = T6l + T6m;			 T6v = T6m - T6l;		    }		    {			 E T5N, T66, T6g, T6j;			 T5N = FNMS(KP831469612, T5M, KP555570233 * T5F);			 T66 = FMA(KP555570233, T5Y, KP831469612 * T65);			 T67 = T5N + T66;			 T6B = T5N - T66;			 T6g = T6c - T6f;			 T6j = T6h - T6i;			 T6k = T6g + T6j;			 T6A = T6g - T6j;		    }		    {			 E T68, T6o, T6D, T6E;			 T68 = T5u - T67;			 T6o = T6k - T6n;			 cr[WS(rs, 21)] = FNMS(T69, T6o, T53 * T68);			 ci[WS(rs, 21)] = FMA(T69, T68, T53 * T6o);			 T6D = T6u + T6v;			 T6E = T6A + T6B;			 cr[WS(rs, 13)] = FNMS(T4c, T6E, T49 * T6D);			 ci[WS(rs, 13)] = FMA(T49, T6E, T4c * T6D);		    }		    {			 E T6p, T6q, T6w, T6C;			 T6p = T5u + T67;			 T6q = T6k + T6n;			 cr[WS(rs, 5)] = FNMS(T4i, T6q, T4h * T6p);			 ci[WS(rs, 5)] = FMA(T4i, T6p, T4h * T6q);			 T6w = T6u - T6v;			 T6C = T6A - T6B;			 cr[WS(rs, 29)] = FNMS(T6z, T6C, T6t * T6w);			 ci[WS(rs, 29)] = FMA(T6t, T6C, T6z * T6w);		    }	       }	       {		    E T7l, T7Q, T7L, T7R, T7A, T7V, T7I, T7U;		    {			 E T7d, T7k, T7J, T7K;			 T7d = T7b - T7c;			 T7k = T7g + T7j;			 T7l = T7d - T7k;			 T7Q = T7d + T7k;			 T7J = FNMS(KP555570233, T7v, KP831469612 * T7y);			 T7K = FMA(KP555570233, T7o, KP831469612 * T7r);			 T7L = T7J - T7K;			 T7R = T7J + T7K;		    }		    {			 E T7s, T7z, T7E, T7H;			 T7s = FNMS(KP555570233, T7r, KP831469612 * T7o);			 T7z = FMA(KP831469612, T7v, KP555570233 * T7y);			 T7A = T7s - T7z;			 T7V = T7z + T7s;			 T7E = T7C + T7D;			 T7H = T7F - T7G;			 T7I = T7E - T7H;			 T7U = T7E + T7H;		    }		    {			 E T7B, T7M, T7X, T7Y;			 T7B = T7l - T7A;			 T7M = T7I - T7L;			 cr[WS(rs, 27)] = FNMS(T1k, T7M, T1g * T7B);			 ci[WS(rs, 27)] = FMA(T1k, T7B, T1g * T7M);			 T7X = T7Q + T7R;			 T7Y = T7U + T7V;			 cr[WS(rs, 3)] = FNMS(T15, T7Y, T12 * T7X);			 ci[WS(rs, 3)] = FMA(T12, T7Y, T15 * T7X);		    }		    {			 E T7N, T7O, T7S, T7W;			 T7N = T7l + T7A;			 T7O = T7I + T7L;			 cr[WS(rs, 11)] = FNMS(T2Y, T7O, T2X * T7N);			 ci[WS(rs, 11)] = FMA(T2Y, T7N, T2X * T7O);			 T7S = T7Q - T7R;			 T7W = T7U - T7V;			 cr[WS(rs, 19)] = FNMS(T7T, T7W, T7P * T7S);			 ci[WS(rs, 19)] = FMA(T7P, T7W, T7T * T7S);		    }	       }	  }     }}static const tw_instr twinstr[] = {     {TW_CEXP, 1, 1},     {TW_CEXP, 1, 3},     {TW_CEXP, 1, 9},     {TW_CEXP, 1, 27},     {TW_NEXT, 1, 0}};static const hc2hc_desc desc = { 32, "hb2_32", twinstr, &GENUS, {376, 168, 112, 0} };void X(codelet_hb2_32) (planner *p) {     X(khc2hc_register) (p, hb2_32, &desc);}#endif				/* HAVE_FMA */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -