[FFmpeg-cvslog] r21433 - trunk/libavcodec/get_bits.h

michael subversion
Sun Jan 24 20:19:09 CET 2010


Author: michael
Date: Sun Jan 24 20:19:09 2010
New Revision: 21433

Log:
Mark index as unsigend so gcc knows it doesnt need a sign extension on x86_64.
Any tips on how i can convince gcc that it doesnt need a
mov     %eax, %eax
in every get_bits() ?

Modified:
   trunk/libavcodec/get_bits.h

Modified: trunk/libavcodec/get_bits.h
==============================================================================
--- trunk/libavcodec/get_bits.h	Sun Jan 24 19:42:22 2010	(r21432)
+++ trunk/libavcodec/get_bits.h	Sun Jan 24 20:19:09 2010	(r21433)
@@ -152,7 +152,7 @@ for examples see get_bits, show_bits, sk
 #   define MIN_CACHE_BITS 25
 
 #   define OPEN_READER(name, gb)\
-        int name##_index= (gb)->index;\
+        unsigned int name##_index= (gb)->index;\
         int name##_cache= 0;\
 
 #   define CLOSE_READER(name, gb)\
@@ -413,7 +413,7 @@ static inline void skip_bits(GetBitConte
 
 static inline unsigned int get_bits1(GetBitContext *s){
 #ifdef ALT_BITSTREAM_READER
-    int index= s->index;
+    unsigned int index= s->index;
     uint8_t result= s->buffer[ index>>3 ];
 #ifdef ALT_BITSTREAM_READER_LE
     result>>= (index&0x07);
@@ -557,7 +557,8 @@ void free_vlc(VLC *vlc);
  */
 #define GET_VLC(code, name, gb, table, bits, max_depth)\
 {\
-    int n, index, nb_bits;\
+    int n, nb_bits;\
+    unsigned int index;\
 \
     index= SHOW_UBITS(name, gb, bits);\
     code = table[index][0];\
@@ -588,7 +589,8 @@ void free_vlc(VLC *vlc);
 
 #define GET_RL_VLC(level, run, name, gb, table, bits, max_depth, need_update)\
 {\
-    int n, index, nb_bits;\
+    int n, nb_bits;\
+    unsigned int index;\
 \
     index= SHOW_UBITS(name, gb, bits);\
     level = table[index].level;\



More information about the ffmpeg-cvslog mailing list