dct64_k7.c

来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· C语言 代码 · 共 767 行 · 第 1/2 页

C
767
字号
"	movq	%%mm0, 40(%%edx)\n\t""	movq	%%mm2, 72(%%edx)\n\t""	movd   48(%%ecx), %%mm3\n\t""	movd   60(%%ecx), %%mm2\n\t""	pfsub  52(%%ecx), %%mm3\n\t""	pfsub  56(%%ecx), %%mm2\n\t""	pfmul 120(%%ebx), %%mm3\n\t""	pfmul 120(%%ebx), %%mm2\n\t""	movq	%%mm2, %%mm1\n\t""	pfadd  56(%%ecx), %%mm1\n\t""	pfadd  60(%%ecx), %%mm1\n\t""	movq	%%mm1, %%mm0\n\t""	pfadd  48(%%ecx), %%mm0\n\t""	pfadd  52(%%ecx), %%mm0\n\t""	pfadd	%%mm3, %%mm1\n\t""	punpckldq %%mm2, %%mm1\n\t""	pfadd	%%mm3, %%mm2\n\t""	punpckldq %%mm2, %%mm0\n\t""	movq	%%mm1, 56(%%edx)\n\t""	movq	%%mm0, 48(%%edx)\n\t"/*---*/"	movd   92(%%ecx), %%mm1\n\t""	pfsub  88(%%ecx), %%mm1\n\t""	pfmul 120(%%ebx), %%mm1\n\t""	movd   %%mm1, 92(%%edx)\n\t""	pfadd  92(%%ecx), %%mm1\n\t""	pfadd  88(%%ecx), %%mm1\n\t""	movq   %%mm1, %%mm0\n\t""	pfadd  80(%%ecx), %%mm0\n\t""	pfadd  84(%%ecx), %%mm0\n\t""	movd   %%mm0, 80(%%edx)\n\t""	movd   80(%%ecx), %%mm0\n\t""	pfsub  84(%%ecx), %%mm0\n\t""	pfmul 120(%%ebx), %%mm0\n\t""	pfadd  %%mm0, %%mm1\n\t""	pfadd  92(%%edx), %%mm0\n\t""	punpckldq %%mm1, %%mm0\n\t""	movq   %%mm0, 84(%%edx)\n\t""	movq	96(%%ecx), %%mm0\n\t""	movq	%%mm0, %%mm1\n\t""	pxor	%%mm7, %%mm1\n\t""	pfacc	%%mm1, %%mm0\n\t""	pfmul	%%mm6, %%mm0\n\t""	movq	%%mm0, 96(%%edx)\n\t""	movd  108(%%ecx), %%mm0\n\t""	pfsub 104(%%ecx), %%mm0\n\t""	pfmul 120(%%ebx), %%mm0\n\t""	movd  %%mm0, 108(%%edx)\n\t""	pfadd 104(%%ecx), %%mm0\n\t""	pfadd 108(%%ecx), %%mm0\n\t""	movd  %%mm0, 104(%%edx)\n\t""	movd  124(%%ecx), %%mm1\n\t""	pfsub 120(%%ecx), %%mm1\n\t""	pfmul 120(%%ebx), %%mm1\n\t""	movd  %%mm1, 124(%%edx)\n\t""	pfadd 120(%%ecx), %%mm1\n\t""	pfadd 124(%%ecx), %%mm1\n\t""	movq  %%mm1, %%mm0\n\t""	pfadd 112(%%ecx), %%mm0\n\t""	pfadd 116(%%ecx), %%mm0\n\t""	movd  %%mm0, 112(%%edx)\n\t""	movd  112(%%ecx), %%mm0\n\t""	pfsub 116(%%ecx), %%mm0\n\t""	pfmul 120(%%ebx), %%mm0\n\t""	pfadd %%mm0,%%mm1\n\t""	pfadd 124(%%edx), %%mm0\n\t""	punpckldq %%mm1, %%mm0\n\t""	movq  %%mm0, 116(%%edx)\n\t"// this code is broken, there is nothing modifying the z flag above.#if 0"	jnz .L01\n\t"/* Phase 7*//* Code below is coded in scalar mode. Should be optimized */"	movd      (%%ecx), %%mm0\n\t""	pfadd    4(%%ecx), %%mm0\n\t""	movd     %%mm0, 1024(%%esi)\n\t""	movd      (%%ecx), %%mm0\n\t""	pfsub    4(%%ecx), %%mm0\n\t""	pfmul  120(%%ebx), %%mm0\n\t""	movd      %%mm0, (%%esi)\n\t""	movd      %%mm0, (%%edi)\n\t""	movd   12(%%ecx), %%mm0\n\t""	pfsub   8(%%ecx), %%mm0\n\t""	pfmul 120(%%ebx), %%mm0\n\t""	movd    %%mm0, 512(%%edi)\n\t""	pfadd   12(%%ecx), %%mm0\n\t""	pfadd   8(%%ecx), %%mm0\n\t""	movd    %%mm0, 512(%%esi)\n\t""	movd   16(%%ecx), %%mm0\n\t""	pfsub  20(%%ecx), %%mm0\n\t""	pfmul 120(%%ebx), %%mm0\n\t""	movq	%%mm0, %%mm3\n\t""	movd   28(%%ecx), %%mm0\n\t""	pfsub  24(%%ecx), %%mm0\n\t""	pfmul 120(%%ebx), %%mm0\n\t""	movd    %%mm0, 768(%%edi)\n\t""	movq	%%mm0, %%mm2\n\t""	pfadd  24(%%ecx), %%mm0\n\t""	pfadd  28(%%ecx), %%mm0\n\t""	movq	%%mm0, %%mm1\n\t""	pfadd  16(%%ecx), %%mm0\n\t""	pfadd  20(%%ecx), %%mm0\n\t""	movd   %%mm0, 768(%%esi)\n\t""	pfadd  %%mm3, %%mm1\n\t""	movd   %%mm1, 256(%%esi)\n\t""	pfadd  %%mm3, %%mm2\n\t""	movd   %%mm2, 256(%%edi)\n\t"/* Phase 8*/"	movq   32(%%edx), %%mm0\n\t""	movq   48(%%edx), %%mm1\n\t""	pfadd  48(%%edx), %%mm0\n\t""	pfadd  40(%%edx), %%mm1\n\t""	movd   %%mm0, 896(%%esi)\n\t""	movd   %%mm1, 640(%%esi)\n\t""	psrlq  $32, %%mm0\n\t""	psrlq  $32, %%mm1\n\t""	movd   %%mm0, 128(%%edi)\n\t""	movd   %%mm1, 384(%%edi)\n\t""	movd   40(%%edx), %%mm0\n\t""	pfadd  56(%%edx), %%mm0\n\t""	movd   %%mm0, 384(%%esi)\n\t""	movd   56(%%edx), %%mm0\n\t""	pfadd  36(%%edx), %%mm0\n\t""	movd   %%mm0, 128(%%esi)\n\t""	movd   60(%%edx), %%mm0\n\t""	movd   %%mm0, 896(%%edi)\n\t""	pfadd  44(%%edx), %%mm0\n\t""	movd   %%mm0, 640(%%edi)\n\t""	movq   96(%%edx), %%mm0\n\t""	movq   112(%%edx), %%mm2\n\t""	movq   104(%%edx), %%mm4\n\t""	pfadd  112(%%edx), %%mm0\n\t""	pfadd  104(%%edx), %%mm2\n\t""	pfadd  120(%%edx), %%mm4\n\t""	movq   %%mm0, %%mm1\n\t""	movq   %%mm2, %%mm3\n\t""	movq   %%mm4, %%mm5\n\t""	pfadd  64(%%edx), %%mm0\n\t""	pfadd  80(%%edx), %%mm2\n\t""	pfadd  72(%%edx), %%mm4\n\t""	movd   %%mm0, 960(%%esi)\n\t""	movd   %%mm2, 704(%%esi)\n\t""	movd   %%mm4, 448(%%esi)\n\t""	psrlq  $32, %%mm0\n\t""	psrlq  $32, %%mm2\n\t""	psrlq  $32, %%mm4\n\t""	movd   %%mm0, 64(%%edi)\n\t""	movd   %%mm2, 320(%%edi)\n\t""	movd   %%mm4, 576(%%edi)\n\t""	pfadd  80(%%edx), %%mm1\n\t""	pfadd  72(%%edx), %%mm3\n\t""	pfadd  88(%%edx), %%mm5\n\t""	movd   %%mm1, 832(%%esi)\n\t""	movd   %%mm3, 576(%%esi)\n\t""	movd   %%mm5, 320(%%esi)\n\t""	psrlq  $32, %%mm1\n\t""	psrlq  $32, %%mm3\n\t""	psrlq  $32, %%mm5\n\t""	movd   %%mm1, 192(%%edi)\n\t""	movd   %%mm3, 448(%%edi)\n\t""	movd   %%mm5, 704(%%edi)\n\t""	movd   120(%%edx), %%mm0\n\t""	pfadd  100(%%edx), %%mm0\n\t""	movq   %%mm0, %%mm1\n\t""	pfadd  88(%%edx), %%mm0\n\t""	movd   %%mm0, 192(%%esi)\n\t""	pfadd  68(%%edx), %%mm1\n\t""	movd   %%mm1, 64(%%esi)\n\t""	movd  124(%%edx), %%mm0\n\t""	movd  %%mm0, 960(%%edi)\n\t""	pfadd  92(%%edx), %%mm0\n\t""	movd  %%mm0, 832(%%edi)\n\t""	jmp	.L_bye\n\t"".L01:	\n\t"#endif/* Phase 9*/"	movq	(%%ecx), %%mm0\n\t""	movq	%%mm0, %%mm1\n\t""	pxor    %%mm7, %%mm1\n\t""	pfacc	%%mm1, %%mm0\n\t""	pfmul	%%mm6, %%mm0\n\t""	pf2iw	%%mm0, %%mm0\n\t""	movd	%%mm0, %%eax\n\t""	movw    %%ax, 512(%%esi)\n\t""	psrlq	$32, %%mm0\n\t""	movd	%%mm0, %%eax\n\t""	movw    %%ax, (%%esi)\n\t""	movd    12(%%ecx), %%mm0\n\t""	pfsub    8(%%ecx), %%mm0\n\t""	pfmul  120(%%ebx), %%mm0\n\t""	pf2iw    %%mm0, %%mm7\n\t""	movd	 %%mm7, %%eax\n\t""	movw     %%ax, 256(%%edi)\n\t""	pfadd   12(%%ecx), %%mm0\n\t""	pfadd    8(%%ecx), %%mm0\n\t""	pf2iw    %%mm0, %%mm0\n\t""	movd	 %%mm0, %%eax\n\t""	movw     %%ax, 256(%%esi)\n\t""	movd   16(%%ecx), %%mm3\n\t""	pfsub  20(%%ecx), %%mm3\n\t""	pfmul  120(%%ebx), %%mm3\n\t""	movq   %%mm3, %%mm2\n\t""	movd   28(%%ecx), %%mm2\n\t""	pfsub  24(%%ecx), %%mm2\n\t""	pfmul 120(%%ebx), %%mm2\n\t""	movq   %%mm2, %%mm1\n\t""	pf2iw  %%mm2, %%mm7\n\t""	movd   %%mm7, %%eax\n\t""	movw   %%ax, 384(%%edi)\n\t""	pfadd  24(%%ecx), %%mm1\n\t""	pfadd  28(%%ecx), %%mm1\n\t""	movq   %%mm1, %%mm0\n\t""	pfadd  16(%%ecx), %%mm0\n\t""	pfadd  20(%%ecx), %%mm0\n\t""	pf2iw  %%mm0, %%mm0\n\t""	movd   %%mm0, %%eax\n\t""	movw   %%ax, 384(%%esi)\n\t""	pfadd  %%mm3, %%mm1\n\t""	pf2iw  %%mm1, %%mm1\n\t""	movd   %%mm1, %%eax\n\t""	movw   %%ax, 128(%%esi)\n\t""	pfadd  %%mm3, %%mm2\n\t""	pf2iw  %%mm2, %%mm2\n\t""	movd   %%mm2, %%eax\n\t""	movw   %%ax, 128(%%edi)\n\t"/* Phase 10*/"	movq    32(%%edx), %%mm0\n\t""	movq    48(%%edx), %%mm1\n\t""	pfadd   48(%%edx), %%mm0\n\t""	pfadd   40(%%edx), %%mm1\n\t""	pf2iw   %%mm0, %%mm0\n\t""	pf2iw   %%mm1, %%mm1\n\t""	movd	%%mm0, %%eax\n\t""	movd	%%mm1, %%ecx\n\t""	movw    %%ax, 448(%%esi)\n\t""	movw    %%cx, 320(%%esi)\n\t""	psrlq   $32, %%mm0\n\t""	psrlq   $32, %%mm1\n\t""	movd	%%mm0, %%eax\n\t""	movd	%%mm1, %%ecx\n\t""	movw    %%ax, 64(%%edi)\n\t""	movw    %%cx, 192(%%edi)\n\t""	movd   40(%%edx), %%mm3\n\t""	movd   56(%%edx), %%mm4\n\t""	movd   60(%%edx), %%mm0\n\t""	movd   44(%%edx), %%mm2\n\t""	movd  120(%%edx), %%mm5\n\t""	punpckldq %%mm4, %%mm3\n\t""	punpckldq 124(%%edx), %%mm0\n\t""	pfadd 100(%%edx), %%mm5\n\t""	punpckldq 36(%%edx), %%mm4\n\t""	punpckldq 92(%%edx), %%mm2\n\t""	movq  %%mm5, %%mm6\n\t""	pfadd  %%mm4, %%mm3\n\t""	pf2iw  %%mm0, %%mm1\n\t""	pf2iw  %%mm3, %%mm3\n\t""	pfadd  88(%%edx), %%mm5\n\t""	movd   %%mm1, %%eax\n\t""	movd   %%mm3, %%ecx\n\t""	movw   %%ax, 448(%%edi)\n\t""	movw   %%cx, 192(%%esi)\n\t""	pf2iw  %%mm5, %%mm5\n\t""	psrlq  $32, %%mm1\n\t""       psrlq  $32, %%mm3\n\t""	movd   %%mm5, %%ebx\n\t""	movd   %%mm1, %%eax\n\t""	movd   %%mm3, %%ecx\n\t""	movw   %%bx, 96(%%esi)\n\t""	movw   %%ax, 480(%%edi)\n\t""	movw   %%cx, 64(%%esi)\n\t""	pfadd  %%mm2, %%mm0\n\t""	pf2iw  %%mm0, %%mm0\n\t""	movd   %%mm0, %%eax\n\t""	pfadd  68(%%edx), %%mm6\n\t""	movw   %%ax, 320(%%edi)\n\t""	psrlq  $32, %%mm0\n\t""	pf2iw  %%mm6, %%mm6\n\t""	movd   %%mm0, %%eax\n\t""	movd   %%mm6, %%ebx\n\t""	movw   %%ax, 416(%%edi)\n\t""	movw   %%bx, 32(%%esi)\n\t""	movq   96(%%edx), %%mm0\n\t""	movq  112(%%edx), %%mm2\n\t""	movq  104(%%edx), %%mm4\n\t""	pfadd %%mm2, %%mm0\n\t""	pfadd %%mm4, %%mm2\n\t""	pfadd 120(%%edx), %%mm4\n\t""	movq  %%mm0, %%mm1\n\t""	movq  %%mm2, %%mm3\n\t""	movq  %%mm4, %%mm5\n\t""	pfadd  64(%%edx), %%mm0\n\t""	pfadd  80(%%edx), %%mm2\n\t""	pfadd  72(%%edx), %%mm4\n\t""	pf2iw  %%mm0, %%mm0\n\t""	pf2iw  %%mm2, %%mm2\n\t""	pf2iw  %%mm4, %%mm4\n\t""	movd   %%mm0, %%eax\n\t""	movd   %%mm2, %%ecx\n\t""	movd   %%mm4, %%ebx\n\t""	movw   %%ax, 480(%%esi)\n\t""	movw   %%cx, 352(%%esi)\n\t""	movw   %%bx, 224(%%esi)\n\t""	psrlq  $32, %%mm0\n\t""	psrlq  $32, %%mm2\n\t""	psrlq  $32, %%mm4\n\t""	movd   %%mm0, %%eax\n\t""	movd   %%mm2, %%ecx\n\t""	movd   %%mm4, %%ebx\n\t""	movw   %%ax, 32(%%edi)\n\t""	movw   %%cx, 160(%%edi)\n\t""	movw   %%bx, 288(%%edi)\n\t""	pfadd  80(%%edx), %%mm1\n\t""	pfadd  72(%%edx), %%mm3\n\t""	pfadd  88(%%edx), %%mm5\n\t""	pf2iw  %%mm1, %%mm1\n\t""	pf2iw  %%mm3, %%mm3\n\t""	pf2iw  %%mm5, %%mm5\n\t""	movd   %%mm1, %%eax\n\t""	movd   %%mm3, %%ecx\n\t""	movd   %%mm5, %%ebx\n\t""	movw   %%ax, 416(%%esi)\n\t""	movw   %%cx, 288(%%esi)\n\t""	movw   %%bx, 160(%%esi)\n\t""	psrlq  $32, %%mm1\n\t""	psrlq  $32, %%mm3\n\t""	psrlq  $32, %%mm5\n\t""	movd   %%mm1, %%eax\n\t""	movd   %%mm3, %%ecx\n\t""	movd   %%mm5, %%ebx\n\t""	movw   %%ax, 96(%%edi)\n\t""	movw   %%cx, 224(%%edi)\n\t""	movw   %%bx, 352(%%edi)\n\t""	movsw\n\t"".L_bye:\n\t""	femms\n\t"	:	:"m"(a),"m"(b),"m"(c),"m"(tmp[0])	:"memory","%eax","%ebx","%ecx","%edx","%esi","%edi");}

⌨️ 快捷键说明

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