atl_smm_sse2_112.c
来自「基于Blas CLapck的.用过的人知道是干啥的」· C语言 代码 · 共 509 行 · 第 1/2 页
C
509 行
vec_add_rr(reg6,reg1); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg2); vec_mov_mr_a(pA0+40+3*KB,reg5); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg3); vec_mov_mr_a(pB0+44,reg7); vec_mov_mr_a(pA0+44,reg6); vec_mul_rr(reg7,reg6); vec_mov_mr_a(pA0+44+KB,reg4); vec_mov_mr_a(pA0+44+2*KB,reg5); vec_add_rr(reg6,reg0); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg1); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg2); vec_mov_mr_a(pA0+44+3*KB,reg6); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg3); vec_mov_mr_a(pB0+48,reg7); vec_mov_mr_a(pA0+48,reg4); vec_mul_rr(reg7,reg4); vec_mov_mr_a(pA0+48+KB,reg5); vec_mov_mr_a(pA0+48+2*KB,reg6); vec_add_rr(reg4,reg0); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg1); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg2); vec_mov_mr_a(pA0+48+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3); vec_mov_mr_a(pB0+52,reg7); vec_mov_mr_a(pA0+52,reg5); vec_mul_rr(reg7,reg5); vec_mov_mr_a(pA0+52+KB,reg6); vec_mov_mr_a(pA0+52+2*KB,reg4); vec_add_rr(reg5,reg0); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg1); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg2); vec_mov_mr_a(pA0+52+3*KB,reg5); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg3); vec_mov_mr_a(pB0+56,reg7); vec_mov_mr_a(pA0+56,reg6); vec_mul_rr(reg7,reg6); vec_mov_mr_a(pA0+56+KB,reg4); vec_mov_mr_a(pA0+56+2*KB,reg5); vec_add_rr(reg6,reg0); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg1); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg2); vec_mov_mr_a(pA0+56+3*KB,reg6); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg3); vec_mov_mr_a(pB0+60,reg7); vec_mov_mr_a(pA0+60,reg4); vec_mul_rr(reg7,reg4); vec_mov_mr_a(pA0+60+KB,reg5); vec_mov_mr_a(pA0+60+2*KB,reg6); vec_add_rr(reg4,reg0); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg1); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg2); vec_mov_mr_a(pA0+60+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3); vec_mov_mr_a(pB0+64,reg7); vec_mov_mr_a(pA0+64,reg5); vec_mul_rr(reg7,reg5); vec_mov_mr_a(pA0+64+KB,reg6); vec_mov_mr_a(pA0+64+2*KB,reg4); vec_add_rr(reg5,reg0); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg1); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg2); vec_mov_mr_a(pA0+64+3*KB,reg5); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg3); vec_mov_mr_a(pB0+68,reg7); vec_mov_mr_a(pA0+68,reg6); vec_mul_rr(reg7,reg6); vec_mov_mr_a(pA0+68+KB,reg4); vec_mov_mr_a(pA0+68+2*KB,reg5); vec_add_rr(reg6,reg0); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg1); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg2); vec_mov_mr_a(pA0+68+3*KB,reg6); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg3); vec_mov_mr_a(pB0+72,reg7); vec_mov_mr_a(pA0+72,reg4); vec_mul_rr(reg7,reg4); vec_mov_mr_a(pA0+72+KB,reg5); vec_mov_mr_a(pA0+72+2*KB,reg6); vec_add_rr(reg4,reg0); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg1); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg2); vec_mov_mr_a(pA0+72+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3); vec_mov_mr_a(pB0+76,reg7); vec_mov_mr_a(pA0+76,reg5); vec_mul_rr(reg7,reg5); vec_mov_mr_a(pA0+76+KB,reg6); vec_mov_mr_a(pA0+76+2*KB,reg4); vec_add_rr(reg5,reg0); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg1); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg2); vec_mov_mr_a(pA0+76+3*KB,reg5); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg3); vec_mov_mr_a(pB0+80,reg7); vec_mov_mr_a(pA0+80,reg6); vec_mul_rr(reg7,reg6); vec_mov_mr_a(pA0+80+KB,reg4); vec_mov_mr_a(pA0+80+2*KB,reg5); vec_add_rr(reg6,reg0); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg1); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg2); vec_mov_mr_a(pA0+80+3*KB,reg6); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg3); vec_mov_mr_a(pB0+84,reg7); vec_mov_mr_a(pA0+84,reg4); vec_mul_rr(reg7,reg4); vec_mov_mr_a(pA0+84+KB,reg5); vec_mov_mr_a(pA0+84+2*KB,reg6); vec_add_rr(reg4,reg0); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg1); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg2); vec_mov_mr_a(pA0+84+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3); vec_mov_mr_a(pB0+88,reg7); vec_mov_mr_a(pA0+88,reg5); vec_mul_rr(reg7,reg5); vec_mov_mr_a(pA0+88+KB,reg6); vec_mov_mr_a(pA0+88+2*KB,reg4); vec_add_rr(reg5,reg0); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg1); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg2); vec_mov_mr_a(pA0+88+3*KB,reg5); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg3); vec_mov_mr_a(pB0+92,reg7); vec_mov_mr_a(pA0+92,reg6); vec_mul_rr(reg7,reg6); vec_mov_mr_a(pA0+92+KB,reg4); vec_mov_mr_a(pA0+92+2*KB,reg5); vec_add_rr(reg6,reg0); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg1); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg2); vec_mov_mr_a(pA0+92+3*KB,reg6); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg3); vec_mov_mr_a(pB0+96,reg7); vec_mov_mr_a(pA0+96,reg4); vec_mul_rr(reg7,reg4); vec_mov_mr_a(pA0+96+KB,reg5); vec_mov_mr_a(pA0+96+2*KB,reg6); vec_add_rr(reg4,reg0); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg1); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg2); vec_mov_mr_a(pA0+96+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3); vec_mov_mr_a(pB0+100,reg7); vec_mov_mr_a(pA0+100,reg5); vec_mul_rr(reg7,reg5); vec_mov_mr_a(pA0+100+KB,reg6); vec_mov_mr_a(pA0+100+2*KB,reg4); vec_add_rr(reg5,reg0); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg1); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg2); vec_mov_mr_a(pA0+100+3*KB,reg5); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg3); vec_mov_mr_a(pB0+104,reg7); vec_mov_mr_a(pA0+104,reg6); vec_mul_rr(reg7,reg6); vec_mov_mr_a(pA0+104+KB,reg4); vec_mov_mr_a(pA0+104+2*KB,reg5); vec_add_rr(reg6,reg0); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg1); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg2); vec_mov_mr_a(pA0+104+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3); vec_mov_mr_a(pB0+108,reg7); vec_mov_mr_a(pA0+108,reg4); vec_mul_rr(reg7,reg4); vec_mov_mr_a(pA0+108+KB,reg5); vec_mov_mr_a(pA0+108+2*KB,reg6); vec_add_rr(reg4,reg0); vec_mul_rr(reg7,reg5); vec_add_rr(reg5,reg1); vec_mul_rr(reg7,reg6); vec_add_rr(reg6,reg2); vec_mov_mr_a(pA0+108+3*KB,reg4); vec_mul_rr(reg7,reg4); vec_add_rr(reg4,reg3);#ifndef TCPLX vec_sum_full(reg0,reg1,reg2,reg3,reg5,reg6,reg7); vec_mov_rm(reg5,pC0);#else vec_sum(reg0); vec_sum(reg1); vec_sum(reg2); vec_sum(reg3); vec_mov_rm_1(reg0,pC0); vec_mov_rm_1(reg1,pC0+(1 SHIFT)); vec_mov_rm_1(reg2,pC0+(2 SHIFT)); vec_mov_rm_1(reg3,pC0+(3 SHIFT));#endif pA0 += incAm; pB0 += incBm; pC0 += incCm; } while(pA0 != stM); pA0 += incAn; pB0 += incBn; pC0 += incCn; } while(pB0 != stN); }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?