From 50965e067371a905dca04f5f867d5dd497d85871 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 20 May 2015 13:38:01 +0200 Subject: [PATCH] avcodec: add mathops test Signed-off-by: Michael Niedermayer --- libavcodec/Makefile | 1 + libavcodec/mathops.c | 26 ++++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 libavcodec/mathops.c diff --git a/libavcodec/Makefile b/libavcodec/Makefile index e1fd83bb3a..cb88fd165a 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -883,6 +883,7 @@ SKIPHEADERS-$(CONFIG_VDA) += vda.h vda_internal.h SKIPHEADERS-$(CONFIG_VDPAU) += vdpau.h vdpau_internal.h TESTPROGS = imgconvert \ + mathops \ options \ avfft \ diff --git a/libavcodec/mathops.c b/libavcodec/mathops.c new file mode 100644 index 0000000000..31c8e69e61 --- /dev/null +++ b/libavcodec/mathops.c @@ -0,0 +1,26 @@ +#include "mathops.h" + +#ifdef TEST + +#include + +int main(void) +{ + unsigned u; + + for(u=0; u<65536; u++) { + unsigned s = u*u; + unsigned root = ff_sqrt(s); + unsigned root_m1 = ff_sqrt(s-1); + if (s && root != u) { + fprintf(stderr, "ff_sqrt failed at %u with %u\n", s, root); + return 1; + } + if (u && root_m1 != u - 1) { + fprintf(stderr, "ff_sqrt failed at %u with %u\n", s, root); + return 1; + } + } + return 0; +} +#endif /* TEST */