[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