[FFmpeg-cvslog] put_bits: remove ALT_BITSTREAM_WRITER

Mans Rullgard git at videolan.org
Sun Jul 3 03:20:24 CEST 2011


ffmpeg | branch: master | Mans Rullgard <mans at mansr.com> | Sat Jul  2 11:50:24 2011 +0100| [0d5c349ac45a22da4944f5e7447d98c154590d24] | committer: Mans Rullgard

put_bits: remove ALT_BITSTREAM_WRITER

The code for this variant does not compile.

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

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

 libavcodec/bitstream.c     |    4 --
 libavcodec/mpegvideo_enc.c |    2 -
 libavcodec/put_bits.h      |  102 +-------------------------------------------
 3 files changed, 1 insertions(+), 107 deletions(-)

diff --git a/libavcodec/bitstream.c b/libavcodec/bitstream.c
index 17b1c69..7071788 100644
--- a/libavcodec/bitstream.c
+++ b/libavcodec/bitstream.c
@@ -43,11 +43,7 @@ const uint8_t ff_log2_run[41]={
 
 void align_put_bits(PutBitContext *s)
 {
-#ifdef ALT_BITSTREAM_WRITER
-    put_bits(s,(  - s->index) & 7,0);
-#else
     put_bits(s,s->bit_left & 7,0);
-#endif
 }
 
 void ff_put_string(PutBitContext *pb, const char *string, int terminate_string)
diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c
index f388562..cd13a5c 100644
--- a/libavcodec/mpegvideo_enc.c
+++ b/libavcodec/mpegvideo_enc.c
@@ -2170,9 +2170,7 @@ static int encode_thread(AVCodecContext *c, void *arg){
                         int d= 100 / s->avctx->error_rate;
                         if(r % d == 0){
                             current_packet_size=0;
-#ifndef ALT_BITSTREAM_WRITER
                             s->pb.buf_ptr= s->ptr_lastgob;
-#endif
                             assert(put_bits_ptr(&s->pb) == s->ptr_lastgob);
                         }
                     }
diff --git a/libavcodec/put_bits.h b/libavcodec/put_bits.h
index b91e0f8..c10dd81 100644
--- a/libavcodec/put_bits.h
+++ b/libavcodec/put_bits.h
@@ -36,19 +36,10 @@
 #include "mathops.h"
 #include "config.h"
 
-//#define ALT_BITSTREAM_WRITER
-//#define ALIGNED_BITSTREAM_WRITER
-
-/* buf and buf_end must be present and used by every alternative writer. */
 typedef struct PutBitContext {
-#ifdef ALT_BITSTREAM_WRITER
-    uint8_t *buf, *buf_end;
-    int index;
-#else
     uint32_t bit_buf;
     int bit_left;
     uint8_t *buf, *buf_ptr, *buf_end;
-#endif
     int size_in_bits;
 } PutBitContext;
 
@@ -68,14 +59,9 @@ static inline void init_put_bits(PutBitContext *s, uint8_t *buffer, int buffer_s
     s->size_in_bits= 8*buffer_size;
     s->buf = buffer;
     s->buf_end = s->buf + buffer_size;
-#ifdef ALT_BITSTREAM_WRITER
-    s->index=0;
-    AV_ZERO32(s->buf);
-#else
     s->buf_ptr = s->buf;
     s->bit_left=32;
     s->bit_buf=0;
-#endif
 }
 
 /**
@@ -83,11 +69,7 @@ static inline void init_put_bits(PutBitContext *s, uint8_t *buffer, int buffer_s
  */
 static inline int put_bits_count(PutBitContext *s)
 {
-#ifdef ALT_BITSTREAM_WRITER
-    return s->index;
-#else
     return (s->buf_ptr - s->buf) * 8 + 32 - s->bit_left;
-#endif
 }
 
 /**
@@ -95,9 +77,6 @@ static inline int put_bits_count(PutBitContext *s)
  */
 static inline void flush_put_bits(PutBitContext *s)
 {
-#ifdef ALT_BITSTREAM_WRITER
-    align_put_bits(s);
-#else
 #ifndef BITSTREAM_WRITER_LE
     s->bit_buf<<= s->bit_left;
 #endif
@@ -114,10 +93,9 @@ static inline void flush_put_bits(PutBitContext *s)
     }
     s->bit_left=32;
     s->bit_buf=0;
-#endif
 }
 
-#if defined(ALT_BITSTREAM_WRITER) || defined(BITSTREAM_WRITER_LE)
+#ifdef BITSTREAM_WRITER_LE
 #define align_put_bits align_put_bits_unsupported_here
 #define ff_put_string ff_put_string_unsupported_here
 #define ff_copy_bits ff_copy_bits_unsupported_here
@@ -147,7 +125,6 @@ void ff_copy_bits(PutBitContext *pb, const uint8_t *src, int length);
  * Use put_bits32 to write 32 bits.
  */
 static inline void put_bits(PutBitContext *s, int n, unsigned int value)
-#ifndef ALT_BITSTREAM_WRITER
 {
     unsigned int bit_buf;
     int bit_left;
@@ -187,70 +164,6 @@ static inline void put_bits(PutBitContext *s, int n, unsigned int value)
     s->bit_buf = bit_buf;
     s->bit_left = bit_left;
 }
-#else  /* ALT_BITSTREAM_WRITER defined */
-{
-#    ifdef ALIGNED_BITSTREAM_WRITER
-#        if ARCH_X86
-    __asm__ volatile(
-        "movl %0, %%ecx                 \n\t"
-        "xorl %%eax, %%eax              \n\t"
-        "shrdl %%cl, %1, %%eax          \n\t"
-        "shrl %%cl, %1                  \n\t"
-        "movl %0, %%ecx                 \n\t"
-        "shrl $3, %%ecx                 \n\t"
-        "andl $0xFFFFFFFC, %%ecx        \n\t"
-        "bswapl %1                      \n\t"
-        "orl %1, (%2, %%ecx)            \n\t"
-        "bswapl %%eax                   \n\t"
-        "addl %3, %0                    \n\t"
-        "movl %%eax, 4(%2, %%ecx)       \n\t"
-        : "=&r" (s->index), "=&r" (value)
-        : "r" (s->buf), "r" (n), "0" (s->index), "1" (value<<(-n))
-        : "%eax", "%ecx"
-    );
-#        else
-    int index= s->index;
-    uint32_t *ptr= ((uint32_t *)s->buf)+(index>>5);
-
-    value<<= 32-n;
-
-    ptr[0] |= av_be2ne32(value>>(index&31));
-    ptr[1]  = av_be2ne32(value<<(32-(index&31)));
-//if(n>24) printf("%d %d\n", n, value);
-    index+= n;
-    s->index= index;
-#        endif
-#    else //ALIGNED_BITSTREAM_WRITER
-#        if ARCH_X86
-    __asm__ volatile(
-        "movl $7, %%ecx                 \n\t"
-        "andl %0, %%ecx                 \n\t"
-        "addl %3, %%ecx                 \n\t"
-        "negl %%ecx                     \n\t"
-        "shll %%cl, %1                  \n\t"
-        "bswapl %1                      \n\t"
-        "movl %0, %%ecx                 \n\t"
-        "shrl $3, %%ecx                 \n\t"
-        "orl %1, (%%ecx, %2)            \n\t"
-        "addl %3, %0                    \n\t"
-        "movl $0, 4(%%ecx, %2)          \n\t"
-        : "=&r" (s->index), "=&r" (value)
-        : "r" (s->buf), "r" (n), "0" (s->index), "1" (value)
-        : "%ecx"
-    );
-#        else
-    int index= s->index;
-    uint32_t *ptr= (uint32_t*)(((uint8_t *)s->buf)+(index>>3));
-
-    ptr[0] |= av_be2ne32(value<<(32-n-(index&7) ));
-    ptr[1] = 0;
-//if(n>24) printf("%d %d\n", n, value);
-    index+= n;
-    s->index= index;
-#        endif
-#    endif //!ALIGNED_BITSTREAM_WRITER
-}
-#endif
 
 static inline void put_sbits(PutBitContext *pb, int n, int32_t value)
 {
@@ -281,11 +194,7 @@ static void av_unused put_bits32(PutBitContext *s, uint32_t value)
  */
 static inline uint8_t* put_bits_ptr(PutBitContext *s)
 {
-#ifdef ALT_BITSTREAM_WRITER
-        return s->buf + (s->index>>3);
-#else
         return s->buf_ptr;
-#endif
 }
 
 /**
@@ -295,13 +204,8 @@ static inline uint8_t* put_bits_ptr(PutBitContext *s)
 static inline void skip_put_bytes(PutBitContext *s, int n)
 {
         assert((put_bits_count(s)&7)==0);
-#ifdef ALT_BITSTREAM_WRITER
-        FIXME may need some cleaning of the buffer
-        s->index += n<<3;
-#else
         assert(s->bit_left==32);
         s->buf_ptr += n;
-#endif
 }
 
 /**
@@ -311,13 +215,9 @@ static inline void skip_put_bytes(PutBitContext *s, int n)
  */
 static inline void skip_put_bits(PutBitContext *s, int n)
 {
-#ifdef ALT_BITSTREAM_WRITER
-    s->index += n;
-#else
     s->bit_left -= n;
     s->buf_ptr-= 4*(s->bit_left>>5);
     s->bit_left &= 31;
-#endif
 }
 
 /**



More information about the ffmpeg-cvslog mailing list