summaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorZdenek Kabelac <kabi@informatics.muni.cz>2002-01-28 18:06:28 +0000
committerZdenek Kabelac <kabi@informatics.muni.cz>2002-01-28 18:06:28 +0000
commit320680d42006bac4f2cbe3cfbc254036e983210e (patch)
tree2b28a887746107e01852d64f3a56c7def2768f08 /libavcodec
parent2f349de2861fdbc957f12c925ce5146c045ba834 (diff)
downloadffmpeg-streaming-320680d42006bac4f2cbe3cfbc254036e983210e.zip
ffmpeg-streaming-320680d42006bac4f2cbe3cfbc254036e983210e.tar.gz
* temporal solution for shared lib compilation
* using ALPHA code optimalization for non ARCH_I386 Originally committed as revision 282 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/msmpeg4.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/libavcodec/msmpeg4.c b/libavcodec/msmpeg4.c
index c5bd55b..b43db88 100644
--- a/libavcodec/msmpeg4.c
+++ b/libavcodec/msmpeg4.c
@@ -437,7 +437,7 @@ static int msmpeg4_pred_dc(MpegEncContext * s, int n,
necessitate to modify mpegvideo.c. The problem comes from the
fact they decided to store the quantized DC (which would lead
to problems if Q could vary !) */
-#ifdef ARCH_X86
+#if defined ARCH_X86 && !defined PIC
/* using 16bit divisions as they are large enough and 2x as fast */
asm volatile(
"movl %3, %%eax \n\t"
@@ -460,9 +460,11 @@ static int msmpeg4_pred_dc(MpegEncContext * s, int n,
: "r" (scale)
: "%eax", "%edx"
);
-#elif defined (ARCH_ALPHA)
+#else
+ /* #elif defined (ARCH_ALPHA) */
/* Divisions are extremely costly on Alpha; optimize the most
- common case. */
+ common case. But they are costly everywhere...
+ */
if (scale == 8) {
a = (a + (8 >> 1)) / 8;
b = (b + (8 >> 1)) / 8;
@@ -472,10 +474,6 @@ static int msmpeg4_pred_dc(MpegEncContext * s, int n,
b = (b + (scale >> 1)) / scale;
c = (c + (scale >> 1)) / scale;
}
-#else
- a = (a + (scale >> 1)) / scale;
- b = (b + (scale >> 1)) / scale;
- c = (c + (scale >> 1)) / scale;
#endif
/* XXX: WARNING: they did not choose the same test as MPEG4. This
is very important ! */
OpenPOWER on IntegriCloud