atl_smm10x1x120_sse.c

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

C
1,411
字号
	movaps	224-128(pB0), rB0	movaps	224-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	224-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	224-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	224-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	224-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	224-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	224-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	224-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	224-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	224-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 60	MY_ALIGN	movaps	240-128(pB0), rB0	movaps	240-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	240-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	240-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	240-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	240-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	240-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	240-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	240-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	240-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	240-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 64	MY_ALIGN	movaps	256-128(pB0), rB0	movaps	256-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	256-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	256-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	256-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	256-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	256-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	256-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	256-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	256-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	256-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 68	MY_ALIGN	movaps	272-128(pB0), rB0	movaps	272-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	272-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	272-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	272-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	272-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	272-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	272-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	272-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	272-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	272-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 72	MY_ALIGN	movaps	288-128(pB0), rB0	movaps	288-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	288-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	288-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	288-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	288-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	288-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	288-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	288-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	288-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	288-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 76	MY_ALIGN	movaps	304-128(pB0), rB0	movaps	304-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	304-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	304-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	304-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	304-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	304-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	304-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	304-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	304-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	304-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 80	MY_ALIGN	movaps	320-128(pB0), rB0	movaps	320-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	320-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	320-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	320-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	320-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	320-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	320-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	320-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	320-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	320-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 84	MY_ALIGN	movaps	336-128(pB0), rB0	movaps	336-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	336-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	336-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	336-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	336-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	336-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	336-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	336-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	336-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	336-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 88	MY_ALIGN	movaps	352-128(pB0), rB0	movaps	352-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	352-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	352-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	352-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	352-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	352-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	352-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	352-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	352-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	352-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 92	MY_ALIGN	movaps	368-128(pB0), rB0	movaps	368-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	368-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	368-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	368-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	368-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	368-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	368-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	368-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	368-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	368-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 96	MY_ALIGN	movaps	384-128(pB0), rB0	movaps	384-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	384-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	384-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	384-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	384-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	384-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	384-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	384-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	384-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	384-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 100	MY_ALIGN	movaps	400-128(pB0), rB0	movaps	400-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	400-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	400-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	400-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	400-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	400-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	400-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	400-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	400-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	400-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 104	MY_ALIGN	movaps	416-128(pB0), rB0	movaps	416-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	416-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	416-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	416-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	416-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	416-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	416-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	416-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	416-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	416-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 108	MY_ALIGN	movaps	432-128(pB0), rB0	movaps	432-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	432-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	432-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	432-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	432-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	432-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	432-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	432-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	432-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	432-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 112	MY_ALIGN	movaps	448-128(pB0), rB0	movaps	448-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	448-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	448-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	448-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	448-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	448-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	448-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	448-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	448-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	448-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 116	MY_ALIGN	movaps	464-128(pB0), rB0	movaps	464-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	464-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	464-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	464-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	464-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	464-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	464-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	464-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	464-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	464-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 120	MY_ALIGN	movaps	480-128(pB0), rB0	movaps	480-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	480-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	480-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	480-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	480-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	480-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	480-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	480-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	480-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	480-128(pA7,lda,2), rB0	addps	rB0,rC9#endif#if KB > 124	MY_ALIGN	movaps	496-128(pB0), rB0	movaps	496-128(pA2,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC0	movaps	496-128(pA2,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC1	movaps	496-128(pA2), rA0	mulps	rB0,rA0	addps	rA0,rC2	movaps	496-128(pA2,lda), rA0	mulps	rB0,rA0	addps	rA0,rC3	movaps	496-128(pA2,lda,2), rA0	mulps	rB0,rA0	addps	rA0,rC4	movaps	496-128(pA7,nlda,2), rA0	mulps	rB0,rA0	addps	rA0,rC5	movaps	496-128(pA7,nlda), rA0	mulps	rB0,rA0	addps	rA0,rC6	movaps	496-128(pA7), rA0	mulps	rB0,rA0	addps	rA0,rC7	movaps	496-128(pA7,lda), rA0	mulps	rB0,rA0	addps	rA0,rC8	mulps	496-128(pA7,lda,2), rB0	addps	rB0,rC9#endif/* * End KLOOP */                                        /* rCa = XX c1 XX c0 */                                        /* rCc = XX c3 XX c2 */                                        /* rCb = XX c5 XX c4 */#if defined(SCPLX) && !defined(BETA0)        movups  48(pC0), rCc            /* rCc = XX c7 XX c6 */#endif        haddps  rC1, rC0                /* rC0 = c1cd   c1ab   c0cd   c0ab */#ifdef BETAX        mulps   rBETA, rCa#endif#if defined(SCPLX) && !defined(BETA0)        shufps  $0x88, rCc, rCb   	/* rCb = c7 c6 c5 c4 */#endif#if defined(SCPLX) && !defined(BETA0)        movups  64(pC0), rCc            /* rCc = XX c9 XX c8 */#endif        haddps  rC3, rC2                /* rC2 = c3cd   c3ab   c2cd   c2ab */#if defined(SCPLX) && !defined(BETA0)        shufps  $0x88, rCc, rCc   	/* rCc = c9 c8 c9 c8 */#endif#ifdef BETAX        mulps   rBETA, rCb#endif#ifdef BETAX        mulps   rBETA, rCc#endif        haddps  rC5, rC4                /* rC4 = c5cd   c5ab   c4cd   c4ab */        haddps  rC7, rC6                /* rC6 = c7cd   c7ab   c6cd   c6ab */        haddps  rC9, rC8                /* rC8 = c9cd   c9ab   c8cd   c8ab */        haddps  rC2, rC0                /* rC0 = c3abcd c2abcd c1abcd c0abcd */   #ifndef BETA0        addps   rCa, rC0   #endif        haddps  rC6, rC4                /* rC4 = c7abcd c6abcd c5abcd c4abcd */   #ifndef BETA0        addps   rCb, rC4   #endif        haddps  rC8, rC8                /* rC8 = c9abcd c8abcd c9abcd c8abcd */   #ifndef BETA0        addps   rCc, rC8   #endif#ifdef SCPLX/*      pshufd  $0b0111 0001 */        pshufd  $0x71, rC0, rCa         /* rCa = c1 c3 c0 c1 */        movss   rC0, (pC0)        pshufd  $0x71, rC4, rCb         /* rCb = c5 c7 c4 c5 */        movss   rC4, 4*8(pC0)        pshufd  $0x71, rC8, rCc         /* rCc = c9 c9 c8 c9 */        movss   rC8, 8*8(pC0)        movhlps rC0, rC0                /* rC0 = c3 c2 c3 c2 */        movss   rCa, 1*8(pC0)        movhlps rC4, rC4                /* rC4 = c7 c6 c7 c6 */        movss   rCb, 5*8(pC0)        movhlps rCa, rCa                /* rCa = c1 c3 c1 c3 */        movss   rCc, 9*8(pC0)        movhlps rCb, rCb                /* rCb = c5 c7 c5 c7 */        movss   rC0, 2*8(pC0)        movss   rC4, 6*8(pC0)        movss   rCa, 3*8(pC0)        movss   rCb, 7*8(pC0)#else        movups  rC0, (pC0)        movups  rC4, 16(pC0)	pshufd	$0xE5, rC8, rC9/*        pshufd  $0b11100101, rC8, rC9 */        movss   rC8, 32(pC0)        movss   rC9, 36(pC0)#endif        add     incAm, pA2        add     incAm, pA7        addq    $10*CMUL(4), pC0        subq    $10, II        jnz     MLOOP        sub     incAn, pA2        sub     incAn, pA7        add     incCn, pC0        add     ldb, pB0        sub     $1, JJ        jnz     NLOOP/* *      Restore regs & return (DONE) */        movq    -8(%rsp), %rbp        movq    -16(%rsp), %rbx        movq    -24(%rsp), %r12        movq    -32(%rsp), %r13        movq    -40(%rsp), %r14/*        movq    -48(%rsp), %r15 */        ret

⌨️ 快捷键说明

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