diff options
author | Vignesh Venkatasubramanian <vigneshv@google.com> | 2015-08-25 11:05:01 -0700 |
---|---|---|
committer | Vignesh Venkatasubramanian <vigneshv@google.com> | 2015-08-25 15:00:46 -0700 |
commit | da49e34c1fb5e99681f4ad99c21d9cfd83eddb96 (patch) | |
tree | e3d2732c50ac27950841cef26da31b0dbf1fadf2 /libvpx/vp9/common/vp9_tile_common.c | |
parent | 4a3c6e360a394e1297eeaaecf7a8853de2c65761 (diff) | |
download | libvpx-da49e34c1fb5e99681f4ad99c21d9cfd83eddb96.tar.gz |
libvpx: Pull from upstream
Current HEAD: 7105df53d7dc13d5e575bc8df714ec8d1da36b06
Includes security fixes and performance improvements. Also removed the VP10
related code from the upstream repository.
BUG=23452792
Change-Id: I97452dff5b1f0756e19d621111797363cc533d46
Diffstat (limited to 'libvpx/vp9/common/vp9_tile_common.c')
-rw-r--r-- | libvpx/vp9/common/vp9_tile_common.c | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/libvpx/vp9/common/vp9_tile_common.c b/libvpx/vp9/common/vp9_tile_common.c index 8c4a30353..7a20e0a9e 100644 --- a/libvpx/vp9/common/vp9_tile_common.c +++ b/libvpx/vp9/common/vp9_tile_common.c @@ -36,24 +36,24 @@ void vp9_tile_init(TileInfo *tile, const VP9_COMMON *cm, int row, int col) { vp9_tile_set_col(tile, cm, col); } -void vp9_get_tile_n_bits(int mi_cols, - int *min_log2_tile_cols, int *max_log2_tile_cols) { - const int sb_cols = mi_cols_aligned_to_sb(mi_cols) >> MI_BLOCK_SIZE_LOG2; - int min_log2 = 0, max_log2 = 0; - - // max - while ((sb_cols >> max_log2) >= MIN_TILE_WIDTH_B64) - ++max_log2; - --max_log2; - if (max_log2 < 0) - max_log2 = 0; - - // min - while ((MAX_TILE_WIDTH_B64 << min_log2) < sb_cols) +static int get_min_log2_tile_cols(const int sb64_cols) { + int min_log2 = 0; + while ((MAX_TILE_WIDTH_B64 << min_log2) < sb64_cols) ++min_log2; + return min_log2; +} - assert(min_log2 <= max_log2); +static int get_max_log2_tile_cols(const int sb64_cols) { + int max_log2 = 1; + while ((sb64_cols >> max_log2) >= MIN_TILE_WIDTH_B64) + ++max_log2; + return max_log2 - 1; +} - *min_log2_tile_cols = min_log2; - *max_log2_tile_cols = max_log2; +void vp9_get_tile_n_bits(int mi_cols, + int *min_log2_tile_cols, int *max_log2_tile_cols) { + const int sb64_cols = mi_cols_aligned_to_sb(mi_cols) >> MI_BLOCK_SIZE_LOG2; + *min_log2_tile_cols = get_min_log2_tile_cols(sb64_cols); + *max_log2_tile_cols = get_max_log2_tile_cols(sb64_cols); + assert(*min_log2_tile_cols <= *max_log2_tile_cols); } |