[FFmpeg-cvslog] simple_idct: remove code for DCTELEM != int16

Mans Rullgard git at videolan.org
Tue Jul 19 18:50:20 CEST 2011


ffmpeg | branch: master | Mans Rullgard <mans at mansr.com> | Mon Jul 18 15:23:22 2011 +0100| [dbb5ee8ea78e6fa22407523f4ecedfebe3db302f] | committer: Mans Rullgard

simple_idct: remove code for DCTELEM != int16

DCTELEM can never be changed to anything else, too much code
depends on it.

Signed-off-by: Mans Rullgard <mans at mansr.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=dbb5ee8ea78e6fa22407523f4ecedfebe3db302f
---

 libavcodec/simple_idct.c |   45 +++++++++++++++------------------------------
 1 files changed, 15 insertions(+), 30 deletions(-)

diff --git a/libavcodec/simple_idct.c b/libavcodec/simple_idct.c
index d21e5ed..c82f092 100644
--- a/libavcodec/simple_idct.c
+++ b/libavcodec/simple_idct.c
@@ -59,39 +59,24 @@ static inline void idctRowCondDC (DCTELEM * row)
 #else
 #define ROW0_MASK 0xffffLL
 #endif
-        if(sizeof(DCTELEM)==2){
-            if ( ((((uint64_t *)row)[0] & ~ROW0_MASK) |
-                  ((uint64_t *)row)[1]) == 0) {
-                temp = (row[0] << 3) & 0xffff;
-                temp += temp << 16;
-                temp += temp << 32;
-                ((uint64_t *)row)[0] = temp;
-                ((uint64_t *)row)[1] = temp;
-                return;
-            }
-        }else{
-            if (!(row[1]|row[2]|row[3]|row[4]|row[5]|row[6]|row[7])) {
-                row[0]=row[1]=row[2]=row[3]=row[4]=row[5]=row[6]=row[7]= row[0] << 3;
-                return;
-            }
+        if (((((uint64_t *)row)[0] & ~ROW0_MASK) | ((uint64_t *)row)[1]) == 0) {
+            temp = (row[0] << 3) & 0xffff;
+            temp += temp << 16;
+            temp += temp << 32;
+            ((uint64_t *)row)[0] = temp;
+            ((uint64_t *)row)[1] = temp;
+            return;
         }
 #else
-        if(sizeof(DCTELEM)==2){
-            if (!(((uint32_t*)row)[1] |
-                  ((uint32_t*)row)[2] |
-                  ((uint32_t*)row)[3] |
-                  row[1])) {
-                temp = (row[0] << 3) & 0xffff;
-                temp += temp << 16;
-                ((uint32_t*)row)[0]=((uint32_t*)row)[1] =
+        if (!(((uint32_t*)row)[1] |
+              ((uint32_t*)row)[2] |
+              ((uint32_t*)row)[3] |
+              row[1])) {
+            temp = (row[0] << 3) & 0xffff;
+            temp += temp << 16;
+            ((uint32_t*)row)[0]=((uint32_t*)row)[1] =
                 ((uint32_t*)row)[2]=((uint32_t*)row)[3] = temp;
-                return;
-            }
-        }else{
-            if (!(row[1]|row[2]|row[3]|row[4]|row[5]|row[6]|row[7])) {
-                row[0]=row[1]=row[2]=row[3]=row[4]=row[5]=row[6]=row[7]= row[0] << 3;
-                return;
-            }
+            return;
         }
 #endif
 



More information about the ffmpeg-cvslog mailing list