atl_dmm_julian_gas_30.c

来自「基于Blas CLapck的.用过的人知道是干啥的」· C语言 代码 · 共 1,904 行 · 第 1/5 页

C
1,904
字号
  ASM ("faddp  %%st,%%st(3)"::);  ASM ("repz"::);  ASM (MUL  " 14*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM ("fxch   %%st(5)"::);#if defined(BETA1) && defined(USE_PREFETCH)  ASM ("mov    %%ecx,0x14(%%esp,1)"::);  ASM ("add    0xc(%%esp,1),%%ecx"::);  ASM (Mstr(PREFETCHW) " (-2*64)(%%ecx)"::);  ASM (Mstr(PREFETCHW) " (-64)(%%ecx)"::);  ASM (Mstr(PREFETCHW) " (%%ecx)"::);  ASM (Mstr(PREFETCHW) " (64)(%%ecx)"::);  ASM ("nop    "::);  ASM (Mstr(PREFETCHW) " (2*64-8)(%%ecx)"::);  ASM ("mov    0x14(%%esp,1),%%ecx"::);#endif  ASM (STO CPTR6 "(%%ecx)"::);  ASM ("fxch   %%st(3)"::);  ASM (STO CPTR7 "(%%ecx)"::);  ASM ("fxch   %%st(1)"::);  ASM (STO CPTR8 "(%%ecx)"::);  ASM (STO CPTR9 "(%%ecx)"::);  ASM (STO CPTR10 "(%%ecx)"::);  ASM (STO CPTR11 "(%%ecx)"::);  ASM ("add    %%edx,%%eax"::);#ifdef DCPLX    ASM ("add    $24*" DS ",%%ecx"::);    ASM (".align 8"::);#endif#ifdef BETA0  ASM (LOAD " -15*" DS "(%%eax,%%ebp,1)"::);  ASM (MUL  " -15*" DS "(%%ebx)"::);  ASM ("nop    "::);  ASM (LOAD " -15*" DS "(%%eax,%%edi,4)"::);  ASM (MUL  " -15*" DS "(%%ebx)"::);  ASM ("nop    "::);  ASM (LOAD " -15*" DS "(%%eax,%%esi,1)"::);  ASM (MUL  " -15*" DS "(%%ebx)"::);  ASM ("nop    "::);  ASM (LOAD " -14*" DS "(%%ebx)"::);  ASM (LOAD " -15*" DS "(%%eax,%%edi,1)"::);  ASM ("nop    "::);  ASM (MUL  " -15*" DS "(%%ebx)"::);  ASM (LOAD " -15*" DS "(%%eax)"::);  ASM ("mov    %%edx,%%edx"::);  ASM (MUL  " -15*" DS "(%%ebx)"::);  ASM (LOAD " -15*" DS "(%%eax,%%edi,2)"::);  ASM ("nop    "::);  ASM ("repz"::);  ASM (MUL  " -15*" DS "(%%ebx)"::);  ASM ("fxch   %%st(3)"::);  ASM ("mov    %%edx,%%edx"::);#elif defined(BETA1)  ASM (LOAD " -15*" DS "(%%ebx)"::);  ASM (LOAD " (%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM (ADD CPTR13 "(%%ecx)"::);  ASM (LOAD " (%%eax,%%esi,1)"::);  ASM ("fmul   %%st(2),%%st"::);  ASM (ADD CPTR14 "(%%ecx)"::);  ASM (LOAD " (%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(3),%%st"::);  ASM (ADD CPTR12 "(%%ecx)"::);  ASM ("fxch   %%st(3)"::);  ASM (LOAD " (%%eax,%%edi,1)"::);  ASM ("repz"::);  ASM ("fmul %%st(1),%%st"::);  ASM (ADD CPTR16 "(%%ecx)"::);  ASM (LOAD " (%%eax)"::);  ASM ("fmul   %%st(2),%%st"::);  ASM (ADD CPTR17 "(%%ecx)"::);  ASM (LOAD " (%%eax,%%edi,2)"::);  ASM ("repz"::);  ASM ("fmulp %%st,%%st(3)"::);#ifndef DCPLX  ASM ("repz"::);#endif  ASM (LOAD CPTR15 "(%%ecx)"::); /* CPTR15 is usually 0 */  ASM ("faddp  %%st,%%st(3)"::);  ASM (LOAD " -14*" DS "(%%ebx)"::);  ASM ("add    $15*" DS ",%%eax"::);  ASM ("mov    %%edx,%%edx"::);#else  ASM (LOAD CPTR12 "(%%ecx)"::);  ASM (LOAD CPTR13 "(%%ecx)"::);  ASM ("mov    %%edx,%%edx"::);  ASM (LOAD " %0"::"m" (((locbeta))));  ASM ("fmul   %%st,%%st(2)"::);  ASM ("fmul   %%st,%%st(1)"::);  ASM (LOAD " -15*" DS "(%%ebx)"::);  ASM (LOAD CPTR16 "(%%ecx)"::);  ASM ("repz"::);  ASM ("fmul %%st(2),%%st"::);  ASM (LOAD CPTR17 "(%%ecx)"::);  ASM ("fmul   %%st(3),%%st"::);#ifndef DCPLX  ASM ("repz"::);#endif  ASM (LOAD CPTR15 "(%%ecx)"::);  /* CPTR15 is usually 0 */  ASM ("fmul   %%st(4),%%st"::);  ASM (LOAD CPTR14 "(%%ecx)"::);  ASM ("repz"::);  ASM ("fmulp %%st,%%st(5)"::);  ASM ("repz"::);  ASM ("fxch %%st(3)"::);  ASM ("mov    %%edx,%%edx"::);  ASM (LOAD " -15*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -15*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -15*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -15*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -15*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -15*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -14*" DS "(%%ebx)"::);#endif  ASM (LOAD " -14*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -14*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -14*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -14*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -14*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -14*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -13*" DS "(%%ebx)"::);  ASM (LOAD " -13*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -13*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -13*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -13*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -13*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -13*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -12*" DS "(%%ebx)"::);  ASM (LOAD " -12*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -12*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -12*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -12*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -12*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -12*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -11*" DS "(%%ebx)"::);  ASM (LOAD " -11*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -11*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -11*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -11*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -11*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -11*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -10*" DS "(%%ebx)"::);  ASM (LOAD " -10*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -10*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -10*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -10*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -10*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -10*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -9*" DS "(%%ebx)"::);  ASM (LOAD " -9*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -9*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -9*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -9*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -9*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -9*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -8*" DS "(%%ebx)"::);  ASM (LOAD " -8*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -8*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -8*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -8*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -8*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -8*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -7*" DS "(%%ebx)"::);  ASM (LOAD " -7*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -7*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -7*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -7*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -7*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -7*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -6*" DS "(%%ebx)"::);  ASM (LOAD " -6*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -6*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -6*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -6*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -6*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -6*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -5*" DS "(%%ebx)"::);  ASM (LOAD " -5*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -5*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -5*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -5*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -5*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -5*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -4*" DS "(%%ebx)"::);  ASM (LOAD " -4*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -4*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -4*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -4*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -4*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -4*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -3*" DS "(%%ebx)"::);  ASM (LOAD " -3*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -3*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -3*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -3*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -3*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -3*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -2*" DS "(%%ebx)"::);  ASM (LOAD " -2*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -2*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -2*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -2*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -2*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -2*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM (LOAD " -1*" DS "(%%ebx)"::);  ASM (LOAD " -1*" DS "(%%eax,%%ebp,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(7)"::);  ASM (LOAD " -1*" DS "(%%eax,%%edi,4)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(6)"::);  ASM (LOAD " -1*" DS "(%%eax,%%esi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(5)"::);  ASM (LOAD " -1*" DS "(%%eax,%%edi,2)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(4)"::);  ASM (LOAD " -1*" DS "(%%eax,%%edi,1)"::);  ASM ("fmul   %%st(1),%%st"::);  ASM ("faddp  %%st,%%st(3)"::);  ASM (MUL  " -1*" DS "(%%eax)"::);  ASM ("faddp  %%st,%%st(1)"::);  ASM ("repz"::);  ASM (LOAD " (%%ebx)"::);  ASM ("repz"::);  ASM (

⌨️ 快捷键说明

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