avutil/arm/intmath: return int for uint8 / uint16 clip
authorMichael Niedermayer <michael@niedermayer.cc>
Mon, 20 Jul 2015 15:16:20 +0000 (17:16 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Mon, 20 Jul 2015 15:20:16 +0000 (17:20 +0200)
The C functions return uint8/16_t but that is effectively int not unsigned int
Fixes fate-filter-tblend

We do not return uint8/16_t as that would require the compiler to truncate the
values, slowing it down.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavutil/arm/intmath.h

index 3216af0..65e42c5 100644 (file)
@@ -31,9 +31,9 @@
 #if HAVE_ARMV6_INLINE
 
 #define av_clip_uint8 av_clip_uint8_arm
-static av_always_inline av_const unsigned av_clip_uint8_arm(int a)
+static av_always_inline av_const int av_clip_uint8_arm(int a)
 {
-    unsigned x;
+    int x;
     __asm__ ("usat %0, #8,  %1" : "=r"(x) : "r"(a));
     return x;
 }
@@ -47,9 +47,9 @@ static av_always_inline av_const int av_clip_int8_arm(int a)
 }
 
 #define av_clip_uint16 av_clip_uint16_arm
-static av_always_inline av_const unsigned av_clip_uint16_arm(int a)
+static av_always_inline av_const int av_clip_uint16_arm(int a)
 {
-    unsigned x;
+    int x;
     __asm__ ("usat %0, #16, %1" : "=r"(x) : "r"(a));
     return x;
 }