diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2010-02-15 04:04:07 +0300 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2010-02-15 04:04:07 +0300 |
commit | 64dd1b0a1d2621f8670efcbc9f12b00bf0e3d307 (patch) | |
tree | f4e35c87911e4687057ae6ca2cb225eb9d44a749 /libavcodec/h264_cabac.c | |
parent | 8b38d10761264992ea8324db0a39d7590010fce3 (diff) |
Merge the single line function decode_cabac_mb_transform_size()
into the calling code.
8 cpu cycles faster
Originally committed as revision 21828 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/h264_cabac.c')
-rw-r--r-- | libavcodec/h264_cabac.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/libavcodec/h264_cabac.c b/libavcodec/h264_cabac.c index da5ec147d6..6346fc4da6 100644 --- a/libavcodec/h264_cabac.c +++ b/libavcodec/h264_cabac.c @@ -925,10 +925,6 @@ static int decode_cabac_b_mb_sub_type( H264Context *h ) { return type; } -static inline int decode_cabac_mb_transform_size( H264Context *h ) { - return get_cabac_noinline( &h->cabac, &h->cabac_state[399 + h->neighbor_transform_size] ); -} - static int decode_cabac_mb_ref( H264Context *h, int list, int n ) { int refa = h->ref_cache[list][scan8[n] - 1]; int refb = h->ref_cache[list][scan8[n] - 8]; @@ -1387,7 +1383,7 @@ decode_intra_mb: if( IS_INTRA( mb_type ) ) { int i, pred_mode; if( IS_INTRA4x4( mb_type ) ) { - if( dct8x8_allowed && decode_cabac_mb_transform_size( h ) ) { + if( dct8x8_allowed && get_cabac_noinline( &h->cabac, &h->cabac_state[399 + h->neighbor_transform_size] ) ) { mb_type |= MB_TYPE_8x8DCT; for( i = 0; i < 16; i+=4 ) { int pred = pred_intra_mode( h, i ); @@ -1649,8 +1645,7 @@ decode_intra_mb: h->cbp_table[mb_xy] = h->cbp = cbp; if( dct8x8_allowed && (cbp&15) && !IS_INTRA( mb_type ) ) { - if( decode_cabac_mb_transform_size( h ) ) - mb_type |= MB_TYPE_8x8DCT; + mb_type |= MB_TYPE_8x8DCT * get_cabac_noinline( &h->cabac, &h->cabac_state[399 + h->neighbor_transform_size] ); } s->current_picture.mb_type[mb_xy]= mb_type; |