On Thu, Mar 23, 2017 at 02:18:53AM -0700, Thomas Turner wrote: > Signed-off-by: Thomas Turner <thomas...@googlemail.com> > --- > libavcodec/Makefile | 1 + > libavcodec/tests/celp_math.c | 22 ++++++++++++++++++++++ > tests/fate/libavcodec.mak | 5 +++++ > 3 files changed, 28 insertions(+) > create mode 100644 libavcodec/tests/celp_math.c > > diff --git a/libavcodec/Makefile b/libavcodec/Makefile > index b8d7a00..eae7b8e 100644 > --- a/libavcodec/Makefile > +++ b/libavcodec/Makefile > @@ -1023,6 +1023,7 @@ SKIPHEADERS-$(CONFIG_VDPAU) += vdpau.h > vdpau_internal.h > SKIPHEADERS-$(CONFIG_VIDEOTOOLBOX) += videotoolbox.h vda_vt_internal.h > > TESTPROGS = avpacket \ > + celp_math \ > imgconvert \ > jpeg2000dwt \ > mathops \ > diff --git a/libavcodec/tests/celp_math.c b/libavcodec/tests/celp_math.c > new file mode 100644 > index 0000000..24cfced > --- /dev/null > +++ b/libavcodec/tests/celp_math.c > @@ -0,0 +1,22 @@ > +#include "libavutil/libm.h" > +#include "libavcodec/celp_math.c" > + > +int main(void) > +{ > + int i; > + const float f1[3] = {0.0, 1.1, 2.2}; > + const float f2[3] = {3.3, 4.4, 5.5}; > + const int16_t i1[3] = {6, 7, 8}; > + const int16_t i2[3] = {9, 10, 11}; > + > + float r = ff_dot_productf(f1, f2, FF_ARRAY_ELEMS(f1)); > + int64_t d = ff_dot_product(i1, i2, FF_ARRAY_ELEMS(i1)); > +
> + av_assert0(16.94f == r); floats should not be checked for equality, that is (as seen on x86-32) unreliable easiest is probably to check fabs(16.94f - r) < something [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Many things microsoft did are stupid, but not doing something just because microsoft did it is even more stupid. If everything ms did were stupid they would be bankrupt already.
signature.asc
Description: Digital signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel