/*
* Copyright (c) 2003, 2007-11 Matteo Frigo
* Copyright (c) 2003, 2007-11 Massachusetts Institute of Technology
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
/* This file was automatically generated --- DO NOT EDIT */
/* Generated on Wed Jul 27 06:13:45 EDT 2011 */
#include "codelet-dft.h"
#ifdef HAVE_FMA
/* Generated by: ../../../genfft/gen_notw_c.native -fma -reorder-insns -schedule-for-pipeline -simd -compact -variables 4 -pipeline-latency 8 -sign 1 -n 128 -name n1bv_128 -include n1b.h */
/*
* This function contains 1082 FP additions, 642 FP multiplications,
* (or, 440 additions, 0 multiplications, 642 fused multiply/add),
* 295 stack variables, 31 constants, and 256 memory accesses
*/
#include "n1b.h"
static void n1bv_128(const R *ri, const R *ii, R *ro, R *io, stride is, stride os, INT v, INT ivs, INT ovs)
{
DVK(KP903989293, +0.903989293123443331586200297230537048710132025);
DVK(KP941544065, +0.941544065183020778412509402599502357185589796);
DVK(KP357805721, +0.357805721314524104672487743774474392487532769);
DVK(KP472964775, +0.472964775891319928124438237972992463904131113);
DVK(KP857728610, +0.857728610000272069902269984284770137042490799);
DVK(KP970031253, +0.970031253194543992603984207286100251456865962);
DVK(KP250486960, +0.250486960191305461595702160124721208578685568);
DVK(KP998795456, +0.998795456205172392714771604759100694443203615);
DVK(KP740951125, +0.740951125354959091175616897495162729728955309);
DVK(KP599376933, +0.599376933681923766271389869014404232837890546);
DVK(KP906347169, +0.906347169019147157946142717268914412664134293);
DVK(KP049126849, +0.049126849769467254105343321271313617079695752);
DVK(KP989176509, +0.989176509964780973451673738016243063983689533);
DVK(KP803207531, +0.803207531480644909806676512963141923879569427);
DVK(KP741650546, +0.741650546272035369581266691172079863842265220);
DVK(KP956940335, +0.956940335732208864935797886980269969482849206);
DVK(KP148335987, +0.148335987538347428753676511486911367000625355);
DVK(KP881921264, +0.881921264348355029712756863660388349508442621);
DVK(KP303346683, +0.303346683607342391675883946941299872384187453);
DVK(KP534511135, +0.534511135950791641089685961295362908582039528);
DVK(KP773010453, +0.773010453362736960810906609758469800971041293);
DVK(KP995184726, +0.995184726672196886244836953109479921575474869);
DVK(KP820678790, +0.820678790828660330972281985331011598767386482);
DVK(KP098491403, +0.098491403357164253077197521291327432293052451);
DVK(KP831469612, +0.831469612302545237078788377617905756738560812);
DVK(KP980785280, +0.980785280403230449126182236134239036973933731);
DVK(KP198912367, +0.198912367379658006911597622644676228597850501);
DVK(KP668178637, +0.668178637919298919997757686523080761552472251);
DVK(KP923879532, +0.923879532511286756128183189396788286822416626);
DVK(KP414213562, +0.414213562373095048801688724209698078569671875);
DVK(KP707106781, +0.707106781186547524400844362104849039284835938);
{
INT i;
const R *xi;
R *xo;
xi = ii;
xo = io;
for (i = v; i > 0; i = i - VL, xi = xi + (VL * ivs), xo = xo + (VL * ovs), MAKE_VOLATILE_STRIDE(is), MAKE_VOLATILE_STRIDE(os)) {
V T6a, T5J, T6b, T5K, T6B, T6C, T6J, T6A, T6o, T6j, T6r, T68, T6d, T5O, T5R;
V T6e, T6D, T6K;
{
V Tad, TcZ, T6Z, T8T, T4U, Tr, Tfq, TgG, Ted, Tgf, Td0, Tcc, T9k, T84, Tb6;
V Tbt, Td8, TdK, TeK, Tgq, TeV, Tgt, T7q, T94, T3p, T5X, T7B, T97, T2G, T5U;
V TbD, Tc0, Tdf, TdN, Tf5, Tgx, Tfg, TgA, T7J, T9b, T4E, T64, T7U, T9e, T3V;
V T61, Td2, Td3, T85, T72, T4V, TI, Tcd, Tas, TgH, Tek, Tgg, Tft, T86, T75;
V T4W, TZ, TaI, Tcf, Tdo, TdG, Tgi, Tet, Tgj, Teq, T8X, T7a, T5M, T1B, T8W;
V T7d, T5N, T1s, TaX, Tcg, Tdr, TdH, Tgl, TeC, Tgm, Tez, T90, T7h, T5P, T2c;
V T8Z, T7k, T5Q, T23, T3Y, T49, TdL, Tdb, Tbu, Tbl, Tgu, TeR, Tgr, TeY, Tf6;
V TbG, T5V, T3s, T5Y, T3f, T95, T7E, T98, T7x, T4g, T4f, T4q, TbH, T41, TbI;
V T44, T4h, T4j, T4k, Tf9, TbN;
{
V Tu, TF, Ty, TL, TW, Tah, Tx, Tag, Tee, Tz, TM, TN, Teh, Tan, TP;
V TQ;
{
V TeG, T2A, Tbq, TeT, Tbp, TeH, T3m, T2x, Td6, T7o, T2q, T3l, T7z, Tbr, T2D;
V T82, T83;
{
V Ta7, T3, Ta8, T4O, Taa, Tab, Ta, T4P, Te, Tc6, Th, Tc7, Tl, Tc9, Tca;
V To;
{
V T1, T2, T4M, T4N;
T1 = LD(&(xi[0]), ivs, &(xi[0]));
T2 = LD(&(xi[WS(is, 64)]), ivs, &(xi[0]));
T4M = LD(&(xi[WS(is, 32)]), ivs, &(xi[0]));
T4N = LD(&(xi[WS(is, 96)]), ivs, &(xi[0]));
{
V T4, T5, T7, T8;
T4 = LD(&(xi[WS(is, 16)]), ivs, &(xi[0]));
T5 = LD(&(xi[WS(is, 80)]), ivs, &(xi[0]));
T7 = LD(&(xi[WS(is, 112)]), ivs, &(xi[0]));
T8 = LD(&(xi[WS(is, 48)]), ivs, &(xi[0]));
{
V Tc, T6, T9, Td, Tf, Tg;
Tc = LD(&(xi[WS(is, 8)]), ivs, &(xi[0]));
Ta7 = VADD(T1, T2);
T3 = VSUB(T1, T2);
Ta8 = VADD(T4M, T4N);
T4O = VSUB(T4M, T4N);
Taa = VADD(T4, T5);
T6 = VSUB(T4, T5);
Tab = VADD(T7, T8);
T9 = VSUB(T7, T8);
Td = LD(&(xi[WS(is, 72)]), ivs, &(xi[0]));
Tf = LD(&(xi[WS(is, 40)]), ivs, &(xi[0]));
Tg = LD(&(xi[WS(is, 104)]), ivs, &(xi[0]));
{
V Tj, Tk, Tm, Tn;
Tj = LD(&(xi[WS(is, 120)]), ivs, &(xi[0]));
Tk = LD(&(xi[WS(is, 56)]), ivs, &(xi[0]));
Tm = LD(&(xi[WS(is, 88)]), ivs, &(xi[0]));
Tn = LD(&(xi[WS(is, 24)]), ivs, &(xi[0]));
Ta = VADD(T6, T9);
T4P = VSUB(T6, T9);
Te = VSUB(Tc, Td);
Tc6 = VADD(Tc, Td);
Th = VSUB(Tf, Tg);
Tc7 = VADD(Tf, Tg);
Tl = VSUB(Tj, Tk);
Tc9 = VADD(Tj, Tk);
Tca = VADD(Tn, Tm);
To = VSUB(Tm, Tn);
}
}
}
}
{
V T6X, Tb, Te9, Ta9, Tc8, Tea, T4R, Ti, Tfo, Tac, Tp, T4S, Tcb, Teb, T4Q;
T6X = VFNMS(LDK(KP707106781), Ta, T3);
Tb = VFMA(LDK(KP707106781), Ta, T3);
Te9 = VSUB(Ta7, Ta8);
Ta9 = VADD(Ta7, Ta8);
Tc8 = VADD(Tc6, Tc7);
Tea = VSUB(Tc6, Tc7);
T4R = VFMA(LDK(KP414213562), Te, Th);
Ti = VFNMS(LDK(KP414213562), Th, Te);
Tfo = VSUB(Taa, Tab);
Tac = VADD(Taa, Tab);
Tp = VFNMS(LDK(KP414213562), To, Tl);
T4S = VFMA(LDK(KP414213562), Tl, To);
Tcb = VADD(Tc9, Tca);
Teb = VSUB(Tc9, Tca);
T4Q = VFMA(LDK(KP707106781), T4P, T4O);
T82 = VFNMS(LDK(KP707106781), T4P, T4O);
{
V T4T, T6Y, Tq, Tfp, Tec;
T4T = VSUB(T4R, T4S);
T6Y = VADD(T4R, T4S);
T83 = VSUB(Ti, Tp);
Tq = VADD(Ti, Tp);
Tfp = VSUB(Tea, Teb);
Tec = VADD(Tea, Teb);
Tad = VSUB(Ta9, Tac);
TcZ = VADD(Ta9, Tac);
T6Z = VFMA(LDK(KP923879532), T6Y, T6X);
T8T = VFNMS(LDK(KP923879532), T6Y, T6X);
T4U = VFMA(LDK(KP923879532), T4T, T4Q);
T6a = VFNMS(LDK(KP923879532), T4T, T4Q);
Tr = VFMA(LDK(KP923879532), Tq, Tb);
T5J = VFNMS(LDK(KP923879532), Tq, Tb);
Tfq = VFMA(LDK(KP707106781), Tfp, Tfo);
TgG = VFNMS(LDK(KP70710
没有合适的资源?快使用搜索试试~ 我知道了~
fftw-3.3.8 软件
需积分: 5 0 下载量 12 浏览量
2023-09-03
21:24:02
上传
评论 1
收藏 3.21MB GZ 举报
温馨提示
共1714个文件
c:1275个
html:117个
h:74个
Linux系统下安装分子动力学软件(如lammps、gromacs、namd等等)时,需要进行环境设置。此时就需要安装fftw软件做好环境设置准备。
资源推荐
资源详情
资源评论
收起资源包目录
fftw-3.3.8 软件 (1714个子文件)
fftwf-wisdom.1 7KB
fftw-wisdom.1 7KB
fftw-wisdom-to-conf.1 3KB
configure.ac 20KB
Makefile.am 5KB
Makefile.am 5KB
Makefile.am 5KB
Makefile.am 4KB
Makefile.am 4KB
Makefile.am 4KB
Makefile.am 3KB
Makefile.am 3KB
Makefile.am 2KB
Makefile.am 1KB
Makefile.am 1KB
Makefile.am 1KB
Makefile.am 997B
Makefile.am 938B
Makefile.am 781B
Makefile.am 613B
Makefile.am 597B
Makefile.am 578B
Makefile.am 510B
Makefile.am 502B
Makefile.am 484B
Makefile.am 383B
Makefile.am 300B
Makefile.am 296B
Makefile.am 287B
Makefile.am 282B
Makefile.am 281B
Makefile.am 276B
Makefile.am 243B
Makefile.am 165B
Makefile.am 165B
Makefile.am 96B
Makefile.am 84B
AUTHORS 470B
fftw-faq.bfnn 30KB
n1bv_128.c 128KB
n1fv_128.c 128KB
t2_64.c 119KB
n2sv_64.c 114KB
hb_64.c 107KB
hf_64.c 106KB
t1_64.c 106KB
r2cb_128.c 95KB
r2cf_128.c 93KB
n1_64.c 82KB
q1_8.c 66KB
t2sv_32.c 64KB
t2fv_64.c 63KB
t1fv_64.c 63KB
t2bv_64.c 63KB
t1bv_64.c 63KB
n2bv_64.c 61KB
n2fv_64.c 61KB
t1sv_32.c 59KB
hc2cfdft2_32.c 58KB
n1bv_64.c 56KB
n1fv_64.c 56KB
hb2_25.c 54KB
hf2_25.c 54KB
t2_25.c 53KB
hf2_32.c 52KB
t2_32.c 52KB
hc2cf2_32.c 52KB
hc2cfdft_32.c 52KB
hb2_32.c 52KB
hc2cb2_32.c 52KB
hc2cbdft2_32.c 50KB
hc2cbdft_32.c 50KB
hb_25.c 50KB
n2sv_32.c 49KB
hf_25.c 49KB
t1_25.c 49KB
r2cbIII_64.c 48KB
r2cfII_64.c 47KB
hb_32.c 46KB
hc2cb_32.c 46KB
hc2cf_32.c 45KB
t1_32.c 45KB
hf_32.c 45KB
r2cb_64.c 41KB
t3bv_25.c 40KB
t3fv_25.c 40KB
n1_25.c 39KB
r2cf_64.c 39KB
q1fv_8.c 39KB
q1bv_8.c 39KB
t1bv_25.c 38KB
t2bv_25.c 38KB
t2fv_25.c 38KB
t1fv_25.c 38KB
q1_6.c 37KB
n1bv_25.c 36KB
n1fv_25.c 36KB
n1_32.c 35KB
hc2cfdftv_32.c 34KB
hc2cfdft2_20.c 34KB
共 1714 条
- 1
- 2
- 3
- 4
- 5
- 6
- 18
资源评论
weixin_54081566
- 粉丝: 6
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功