diff options
Diffstat (limited to 'media/libtheora/lib/x86_vc')
-rw-r--r-- | media/libtheora/lib/x86_vc/mmxfrag.c | 2 | ||||
-rw-r--r-- | media/libtheora/lib/x86_vc/mmxidct.c | 45 | ||||
-rw-r--r-- | media/libtheora/lib/x86_vc/mmxstate.c | 2 | ||||
-rw-r--r-- | media/libtheora/lib/x86_vc/x86cpu.c | 2 | ||||
-rw-r--r-- | media/libtheora/lib/x86_vc/x86cpu.h | 2 | ||||
-rw-r--r-- | media/libtheora/lib/x86_vc/x86int.h | 2 | ||||
-rw-r--r-- | media/libtheora/lib/x86_vc/x86state.c | 2 |
7 files changed, 31 insertions, 26 deletions
diff --git a/media/libtheora/lib/x86_vc/mmxfrag.c b/media/libtheora/lib/x86_vc/mmxfrag.c index 248312ff90..c16b026ffc 100644 --- a/media/libtheora/lib/x86_vc/mmxfrag.c +++ b/media/libtheora/lib/x86_vc/mmxfrag.c @@ -11,7 +11,7 @@ ******************************************************************** function: - last mod: $Id$ + last mod: $Id: mmxfrag.c 17446 2010-09-23 20:06:20Z tterribe $ ********************************************************************/ diff --git a/media/libtheora/lib/x86_vc/mmxidct.c b/media/libtheora/lib/x86_vc/mmxidct.c index 55e00aedcf..53a9ac7f38 100644 --- a/media/libtheora/lib/x86_vc/mmxidct.c +++ b/media/libtheora/lib/x86_vc/mmxidct.c @@ -11,7 +11,7 @@ ******************************************************************** function: - last mod: $Id$ + last mod: $Id: mmxidct.c 17446 2010-09-23 20:06:20Z tterribe $ ********************************************************************/ @@ -339,19 +339,22 @@ static void oc_idct8x8_slow(ogg_int16_t _y[64],ogg_int16_t _x[64]){ #undef Y #undef X } - __asm pxor mm0,mm0; - for(i=0;i<4;i++){ - ogg_int16_t *x; - x=_x+16*i; + if(_x!=_y){ + int i; + __asm pxor mm0,mm0; + for(i=0;i<4;i++){ + ogg_int16_t *x; + x=_x+16*i; #define X ecx - __asm{ - mov X,x - movq [X+0x00],mm0 - movq [X+0x08],mm0 - movq [X+0x10],mm0 - movq [X+0x18],mm0 - } + __asm{ + mov X,x + movq [X+0x00],mm0 + movq [X+0x08],mm0 + movq [X+0x10],mm0 + movq [X+0x18],mm0 + } #undef X + } } } @@ -544,16 +547,18 @@ static void oc_idct8x8_10(ogg_int16_t _y[64],ogg_int16_t _x[64]){ #undef Y #undef X } + if(_x!=_y){ #define X ecx - __asm{ - pxor mm0,mm0; - mov X,_x - movq [X+0x00],mm0 - movq [X+0x10],mm0 - movq [X+0x20],mm0 - movq [X+0x30],mm0 - } + __asm{ + pxor mm0,mm0; + mov X,_x + movq [X+0x00],mm0 + movq [X+0x10],mm0 + movq [X+0x20],mm0 + movq [X+0x30],mm0 + } #undef X + } } /*Performs an inverse 8x8 Type-II DCT transform. diff --git a/media/libtheora/lib/x86_vc/mmxstate.c b/media/libtheora/lib/x86_vc/mmxstate.c index f532ee1b6f..d3d468d5f2 100644 --- a/media/libtheora/lib/x86_vc/mmxstate.c +++ b/media/libtheora/lib/x86_vc/mmxstate.c @@ -11,7 +11,7 @@ ******************************************************************** function: - last mod: $Id$ + last mod: $Id: mmxstate.c 17563 2010-10-25 17:40:54Z tterribe $ ********************************************************************/ diff --git a/media/libtheora/lib/x86_vc/x86cpu.c b/media/libtheora/lib/x86_vc/x86cpu.c index 6a1d8d850c..41f4bcba9d 100644 --- a/media/libtheora/lib/x86_vc/x86cpu.c +++ b/media/libtheora/lib/x86_vc/x86cpu.c @@ -14,7 +14,7 @@ Originally written by Rudolf Marek. function: - last mod: $Id$ + last mod: $Id: x86cpu.c 17410 2010-09-21 21:53:48Z tterribe $ ********************************************************************/ diff --git a/media/libtheora/lib/x86_vc/x86cpu.h b/media/libtheora/lib/x86_vc/x86cpu.h index eea261d448..327d932467 100644 --- a/media/libtheora/lib/x86_vc/x86cpu.h +++ b/media/libtheora/lib/x86_vc/x86cpu.h @@ -10,7 +10,7 @@ * * ******************************************************************** function: - last mod: $Id$ + last mod: $Id: x86cpu.h 17410 2010-09-21 21:53:48Z tterribe $ ********************************************************************/ diff --git a/media/libtheora/lib/x86_vc/x86int.h b/media/libtheora/lib/x86_vc/x86int.h index 318a09dca0..bc4c54a2f6 100644 --- a/media/libtheora/lib/x86_vc/x86int.h +++ b/media/libtheora/lib/x86_vc/x86int.h @@ -11,7 +11,7 @@ ******************************************************************** function: - last mod: $Id$ + last mod: $Id: x86int.h 17410 2010-09-21 21:53:48Z tterribe $ ********************************************************************/ diff --git a/media/libtheora/lib/x86_vc/x86state.c b/media/libtheora/lib/x86_vc/x86state.c index fa3a0d42fc..7aa73deae4 100644 --- a/media/libtheora/lib/x86_vc/x86state.c +++ b/media/libtheora/lib/x86_vc/x86state.c @@ -11,7 +11,7 @@ ******************************************************************** function: - last mod: $Id$ + last mod: $Id: x86state.c 17410 2010-09-21 21:53:48Z tterribe $ ********************************************************************/ |