diff options
author | Mike Melanson <mike@multimedia.cx> | 2003-01-01 19:32:28 +0000 |
---|---|---|
committer | Mike Melanson <mike@multimedia.cx> | 2003-01-01 19:32:28 +0000 |
commit | e9a665eae94e4384e59705044d5e2d1cefa11f48 (patch) | |
tree | 0e16e4a4762359a91e0b93302586c93666d60bef /src | |
parent | 148e59d48e0eaa46bfa6279e5f71c94642d1206c (diff) | |
download | xine-lib-e9a665eae94e4384e59705044d5e2d1cefa11f48.tar.gz xine-lib-e9a665eae94e4384e59705044d5e2d1cefa11f48.tar.bz2 |
revert to old (and apparently much more reliable) transfer method
CVS patchset: 3744
CVS date: 2003/01/01 19:32:28
Diffstat (limited to 'src')
-rw-r--r-- | src/xine-utils/color.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/xine-utils/color.c b/src/xine-utils/color.c index 0802bdec3..bd38fe193 100644 --- a/src/xine-utils/color.c +++ b/src/xine-utils/color.c @@ -61,7 +61,7 @@ * instructions), these macros will automatically map to those special * instructions. * - * $Id: color.c,v 1.12 2002/12/22 23:20:21 tmmm Exp $ + * $Id: color.c,v 1.13 2003/01/01 19:32:28 tmmm Exp $ */ #include "xine_internal.h" @@ -314,6 +314,7 @@ void yuv444_to_yuy2_mmx(yuv_planes_t *yuv_planes, unsigned char *yuy2_map, 0x01, 0x00 }; unsigned char shifter[] = {0, 0, 0, 0, 0, 0, 0, 0}; + unsigned char vector[8]; int block_loops = yuv_planes->row_width / 6; int filter_loops; int residual_filter_loops; @@ -410,6 +411,7 @@ void yuv444_to_yuy2_mmx(yuv_planes_t *yuv_planes, unsigned char *yuy2_map, paddd_r2r(mm3, mm2); /* mm2 += mm3 */ psrlq_i2r(3, mm2); /* divide by 8 */ +#if 0 /* load the destination address into ebx */ __asm__ __volatile__ ("mov %0, %%ebx" : /* nothing */ @@ -427,6 +429,11 @@ void yuv444_to_yuy2_mmx(yuv_planes_t *yuv_planes, unsigned char *yuy2_map, : /* nothing */ : /* nothing */ ); +#else + movq_r2m(mm2, *vector); + dest_plane[0] = vector[0]; +#endif + dest_plane += 4; psrlq_i2r(16, mm1); /* toss out 2 C samples and loop again */ |