[xiph-commits] r11676 - in branches/theora-playtime: lib/x86_32_vs win32/VS2005/dump_video win32/VS2005/libtheora

illiminable at svn.xiph.org illiminable at svn.xiph.org
Thu Jun 29 15:21:14 PDT 2006


Author: illiminable
Date: 2006-06-29 15:21:05 -0700 (Thu, 29 Jun 2006)
New Revision: 11676

Modified:
   branches/theora-playtime/lib/x86_32_vs/dsp_mmx.c
   branches/theora-playtime/lib/x86_32_vs/dsp_sse2.c
   branches/theora-playtime/win32/VS2005/dump_video/
   branches/theora-playtime/win32/VS2005/libtheora/
Log:
* Ignore some .user
* sub8x8_128 sse2 faster than mmx : best case 53 vs 63 cycles

Modified: branches/theora-playtime/lib/x86_32_vs/dsp_mmx.c
===================================================================
--- branches/theora-playtime/lib/x86_32_vs/dsp_mmx.c	2006-06-29 22:08:27 UTC (rev 11675)
+++ branches/theora-playtime/lib/x86_32_vs/dsp_mmx.c	2006-06-29 22:21:05 UTC (rev 11676)
@@ -33,6 +33,7 @@
 
 
 static perf_info sub8x8_mmx_perf;
+static perf_info sub8x8_128_mmx_perf;
 
 static void sub8x8__mmx (unsigned char *FiltPtr, unsigned char *ReconPtr,
                   ogg_int16_t *DctInputPtr, ogg_uint32_t PixelsPerLine,
@@ -60,7 +61,7 @@
     DctInputPtr += 8;
   }
 #else
-	PERF_BLOCK_START();
+	//PERF_BLOCK_START();
     __asm {
         align 16
 
@@ -245,7 +246,7 @@
 
     };
 
-	PERF_BLOCK_END("sub8x8 mmx", sub8x8_mmx_perf, 10000);
+	//PERF_BLOCK_END("sub8x8 mmx", sub8x8_mmx_perf, 10000);
  
 #endif
 }
@@ -277,6 +278,7 @@
   }
 
 #else
+	PERF_BLOCK_START();
     __asm {
         align 16
 
@@ -415,6 +417,8 @@
         add		eax, PixelsPerLine	
 
     };
+
+	PERF_BLOCK_END("sub8x8_128 mmx", sub8x8_128_mmx_perf, 10000);
  
 #endif
 }
@@ -1613,6 +1617,7 @@
   funcs->inter8x8_err_xy2 = inter8x8_err_xy2__mmx;
 
   ClearPerfData(&sub8x8_mmx_perf);
+  ClearPerfData(&sub8x8_128_mmx_perf);
 }
 
 

Modified: branches/theora-playtime/lib/x86_32_vs/dsp_sse2.c
===================================================================
--- branches/theora-playtime/lib/x86_32_vs/dsp_sse2.c	2006-06-29 22:08:27 UTC (rev 11675)
+++ branches/theora-playtime/lib/x86_32_vs/dsp_sse2.c	2006-06-29 22:21:05 UTC (rev 11676)
@@ -27,9 +27,9 @@
 
 
 static perf_info sub8x8_sse2_perf;
+static perf_info sub8x8_128_sse2_perf;
 
 
-
 //static const ogg_int64_t V128 = 0x0080008000800080LL;
 
 static __declspec(align(16)) const unsigned int V128_8x16bits[4] = { 0x00800080, 0x00800080, 0x00800080, 0x00800080 };
@@ -61,7 +61,7 @@
     DctInputPtr += 8;
   }
 #else
-	PERF_BLOCK_START();
+	//PERF_BLOCK_START();
     __asm {
         align 16
 
@@ -192,7 +192,7 @@
 
     };
 
-	PERF_BLOCK_END("sub8x8 sse2", sub8x8_sse2_perf, 10000);
+	//PERF_BLOCK_END("sub8x8 sse2", sub8x8_sse2_perf, 10000);
 
 
 #endif
@@ -225,6 +225,7 @@
   }
 
 #else
+	PERF_BLOCK_START();
     __asm {
         align 16
         
@@ -296,6 +297,8 @@
 
     };
 
+	PERF_BLOCK_END("sub8x8_128 sse2", sub8x8_128_sse2_perf, 10000);
+
  
 #endif
 }
@@ -1637,7 +1640,7 @@
 {
   TH_DEBUG("enabling accelerated x86_32 sse2 dsp functions.\n");
   funcs->sub8x8 = sub8x8__sse2;
-  //funcs->sub8x8_128 = sub8x8_128__sse2;
+  funcs->sub8x8_128 = sub8x8_128__sse2;
   //funcs->sub8x8avg2 = sub8x8avg2__sse2;
   //funcs->row_sad8 = row_sad8__sse2;
   //funcs->col_sad8x8 = col_sad8x8__sse2;
@@ -1655,6 +1658,7 @@
   //funcs->inter8x8_err_xy2 = inter8x8_err_xy2__sse2;
 
   ClearPerfData(&sub8x8_sse2_perf);
+  ClearPerfData(&sub8x8_128_sse2_perf);
 
 
 


Property changes on: branches/theora-playtime/win32/VS2005/dump_video
___________________________________________________________________
Name: svn:ignore
   - Debug
Release

   + Debug
Release
*.user



Property changes on: branches/theora-playtime/win32/VS2005/libtheora
___________________________________________________________________
Name: svn:ignore
   - Debug
Release

   + Debug
Release
*.user




More information about the commits mailing list