diff -ur rss_glx-0.7.4-orig/reallyslick/c_src/rsMath.c rss_glx-0.7.4/reallyslick/c_src/rsMath.c --- rss_glx-0.7.4-orig/reallyslick/c_src/rsMath.c 2004-02-11 01:49:07 +0300 +++ rss_glx-0.7.4/reallyslick/c_src/rsMath.c 2004-02-11 23:04:55 +0300 @@ -37,36 +37,34 @@ void rsCPUDetect() { #ifdef DETECT_X86_EXTS __asm__ ( - " - xor %%eax, %%eax +" xor %%eax, %%eax\n" - cpuid +" cpuid\n" - cmp $0x68747541, %%ebx - jne not_amd +" cmp $0x68747541, %%ebx\n" +" jne not_amd\n" - mov $0x80000001, %%eax - cpuid +" mov $0x80000001, %%eax\n" +" cpuid\n" - shr $31, %%edx - jmp done +" shr $31, %%edx\n" +" jmp done\n" -not_amd: - xor %%edx, %%edx - cmp $1, %%eax - jl no_exts +"not_amd:\n" +" xor %%edx, %%edx\n" +" cmp $1, %%eax\n" +" jl no_exts\n" - xor %%eax, %%eax - inc %%eax +" xor %%eax, %%eax\n" +" inc %%eax\n" - cpuid +" cpuid\n" - shr $24, %%edx - and $2, %%edx +" shr $24, %%edx\n" +" and $2, %%edx\n" -no_exts: -done: - " +"no_exts:\n" +"done:\n" : "=d" (cpuid) : : "%eax", "%ebx", "%ecx" @@ -86,48 +84,46 @@ #ifdef USE_3DNOW if (cpuid & FLAG_3DNOW) { __asm__ ( - " - femms +" femms\n" - movq (%1), %%mm0 - movq 8(%1), %%mm1 +" movq (%1), %%mm0\n" +" movq 8(%1), %%mm1\n" - movq %%mm0, %%mm2 - movq %%mm1, %%mm3 +" movq %%mm0, %%mm2\n" +" movq %%mm1, %%mm3\n" - pfmul %%mm0, %%mm0 - pfmul %%mm1, %%mm1 +" pfmul %%mm0, %%mm0\n" +" pfmul %%mm1, %%mm1\n" - movq %%mm0, %%mm7 - punpckhdq %%mm7, %%mm7 +" movq %%mm0, %%mm7\n" +" punpckhdq %%mm7, %%mm7\n" - pfadd %%mm1, %%mm0 - pfadd %%mm7, %%mm0 +" pfadd %%mm1, %%mm0\n" +" pfadd %%mm7, %%mm0\n" - pfrsqrt %%mm0, %%mm1 - movq %%mm1, %%mm4 - pfmul %%mm1, %%mm1 - punpckldq %%mm0, %%mm0 - pfrsqit1 %%mm0, %%mm1 - pfrcpit2 %%mm4, %%mm1 - pfmul %%mm1, %%mm0 +" pfrsqrt %%mm0, %%mm1\n" +" movq %%mm1, %%mm4\n" +" pfmul %%mm1, %%mm1\n" +" punpckldq %%mm0, %%mm0\n" +" pfrsqit1 %%mm0, %%mm1\n" +" pfrcpit2 %%mm4, %%mm1\n" +" pfmul %%mm1, %%mm0\n" - movd %%mm0, %0 +" movd %%mm0, %0\n" - pfrcp %%mm0, %%mm1 - movq %%mm0, %%mm4 - punpckldq %%mm4, %%mm4 - pfrcpit1 %%mm1, %%mm4 - pfrcpit2 %%mm1, %%mm4 +" pfrcp %%mm0, %%mm1\n" +" movq %%mm0, %%mm4\n" +" punpckldq %%mm4, %%mm4\n" +" pfrcpit1 %%mm1, %%mm4\n" +" pfrcpit2 %%mm1, %%mm4\n" - pfmul %%mm4, %%mm2 - pfmul %%mm4, %%mm3 +" pfmul %%mm4, %%mm2\n" +" pfmul %%mm4, %%mm3\n" - movq %%mm2, (%1) - movq %%mm3, 8(%1) +" movq %%mm2, (%1)\n" +" movq %%mm3, 8(%1)\n" - femms - " +" femms\n" : "=m" (length) : "d" (v) ); @@ -139,27 +135,25 @@ #ifdef USE_SSE if (cpuid & FLAG_SSE) { __asm__ ( - " - movups (%1), %%xmm0 - movups %%xmm0, %%xmm1 - - mulps %%xmm0, %%xmm0 - movups %%xmm0, %%xmm2 - - shufps $9, %%xmm2, %%xmm2 - addss %%xmm2, %%xmm0 - shufps $1, %%xmm2, %%xmm2 - addss %%xmm2, %%xmm0 - - sqrtss %%xmm0, %%xmm0 - movss %%xmm0, %0 - - unpcklps %%xmm0, %%xmm0 - unpcklps %%xmm0, %%xmm0 - divps %%xmm0, %%xmm1 +" movups (%1), %%xmm0\n" +" movups %%xmm0, %%xmm1\n" - movups %%xmm1, (%1) - " +" mulps %%xmm0, %%xmm0\n" +" movups %%xmm0, %%xmm2\n" + +" shufps $9, %%xmm2, %%xmm2\n" +" addss %%xmm2, %%xmm0\n" +" shufps $1, %%xmm2, %%xmm2\n" +" addss %%xmm2, %%xmm0\n" + +" sqrtss %%xmm0, %%xmm0\n" +" movss %%xmm0, %0\n" + +" unpcklps %%xmm0, %%xmm0\n" +" unpcklps %%xmm0, %%xmm0\n" +" divps %%xmm0, %%xmm1\n" + +" movups %%xmm1, (%1)\n" : "=m" (length) : "d" (v) ); @@ -187,41 +181,39 @@ #ifdef USE_3DNOW if (cpuid & FLAG_3DNOW) { __asm__ ( - " - femms +" femms\n" - movq (%0), %%mm0 - movq 8(%0), %%mm1 +" movq (%0), %%mm0\n" +" movq 8(%0), %%mm1\n" - movq (%1), %%mm2 - movq 8(%1), %%mm3 +" movq (%1), %%mm2\n" +" movq 8(%1), %%mm3\n" - movq %%mm0, %%mm4 - punpckhdq %%mm4, %%mm4 - punpckldq %%mm1, %%mm4 +" movq %%mm0, %%mm4\n" +" punpckhdq %%mm4, %%mm4\n" +" punpckldq %%mm1, %%mm4\n" - movq %%mm2, %%mm5 - punpckhdq %%mm2, %%mm5 - punpckldq %%mm3, %%mm5 +" movq %%mm2, %%mm5\n" +" punpckhdq %%mm2, %%mm5\n" +" punpckldq %%mm3, %%mm5\n" - pfmul %%mm2, %%mm4 - pfmul %%mm0, %%mm5 +" pfmul %%mm2, %%mm4\n" +" pfmul %%mm0, %%mm5\n" - pfmul %%mm0, %%mm3 - pfmul %%mm2, %%mm1 +" pfmul %%mm0, %%mm3\n" +" pfmul %%mm2, %%mm1\n" - pfsub %%mm4, %%mm5 - pfsub %%mm3, %%mm1 +" pfsub %%mm4, %%mm5\n" +" pfsub %%mm3, %%mm1\n" - movq %%mm5, %%mm6 - punpckldq %%mm1, %%mm1 - punpckhdq %%mm1, %%mm6 +" movq %%mm5, %%mm6\n" +" punpckldq %%mm1, %%mm1\n" +" punpckhdq %%mm1, %%mm6\n" - movq %%mm6, (%2) - movq %%mm5, 8(%2) +" movq %%mm6, (%2)\n" +" movq %%mm5, 8(%2)\n" - femms - " +" femms\n" : : "a" (vec1), "b" (vec2), "d" (v) ); @@ -233,24 +225,22 @@ #ifdef USE_SSE if (cpuid & FLAG_SSE) { __asm__ ( - " - movups (%0), %%xmm0 - movups (%1), %%xmm1 +" movups (%0), %%xmm0\n" +" movups (%1), %%xmm1\n" - movups %%xmm0, %%xmm2 - shufps $201, %%xmm2, %%xmm2 - movups %%xmm1, %%xmm3 - shufps $201, %%xmm3, %%xmm3 +" movups %%xmm0, %%xmm2\n" +" shufps $201, %%xmm2, %%xmm2\n" +" movups %%xmm1, %%xmm3\n" +" shufps $201, %%xmm3, %%xmm3\n" - mulps %%xmm1, %%xmm2 - mulps %%xmm0, %%xmm3 +" mulps %%xmm1, %%xmm2\n" +" mulps %%xmm0, %%xmm3\n" - subps %%xmm2, %%xmm3 +" subps %%xmm2, %%xmm3\n" - shufps $201, %%xmm3, %%xmm3 +" shufps $201, %%xmm3, %%xmm3\n" - movups %%xmm3, (%2) - " +" movups %%xmm3, (%2)\n" : : "a" (vec1), "c" (vec2), "d" (v) );