From 1a918c08e453a106c6737bca96757e26aade2964 Mon Sep 17 00:00:00 2001 From: Loren Merritt Date: Mon, 21 Sep 2009 03:01:57 +0000 Subject: [PATCH] extend ff_inverse[], and fix its documentation Originally committed as revision 19942 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/dsputil.c | 6 ++++-- libavutil/internal.h | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/libavcodec/dsputil.c b/libavcodec/dsputil.c index e1f2eda76..773d47f80 100644 --- a/libavcodec/dsputil.c +++ b/libavcodec/dsputil.c @@ -110,8 +110,9 @@ const uint8_t ff_alternate_vertical_scan[64] = { 38, 46, 54, 62, 39, 47, 55, 63, }; -/* a*inverse[b]>>32 == a/b for all 0<=a<=65536 && 2<=b<=255 */ -const uint32_t ff_inverse[256]={ +/* a*inverse[b]>>32 == a/b for all 0<=a<=16909558 && 2<=b<=256 + * for a>16909558, is an overestimate by less than 1 part in 1<<24 */ +const uint32_t ff_inverse[257]={ 0, 4294967295U,2147483648U,1431655766, 1073741824, 858993460, 715827883, 613566757, 536870912, 477218589, 429496730, 390451573, 357913942, 330382100, 306783379, 286331154, 268435456, 252645136, 238609295, 226050911, 214748365, 204522253, 195225787, 186737709, @@ -144,6 +145,7 @@ const uint32_t ff_inverse[256]={ 18512791, 18433337, 18354562, 18276457, 18199014, 18122225, 18046082, 17970575, 17895698, 17821442, 17747799, 17674763, 17602325, 17530479, 17459217, 17388532, 17318417, 17248865, 17179870, 17111424, 17043522, 16976156, 16909321, 16843010, + 16777216 }; /* Input permutation for the simple_idct_mmx */ diff --git a/libavutil/internal.h b/libavutil/internal.h index a129bfb35..141186bb5 100644 --- a/libavutil/internal.h +++ b/libavutil/internal.h @@ -124,7 +124,7 @@ /* math */ -extern const uint32_t ff_inverse[256]; +extern const uint32_t ff_inverse[257]; #if ARCH_X86 # define FASTDIV(a,b) \ -- 2.11.0