ARM: intmath: use native-size return types for clipping functions

This avoids having the compiler redundantly mask the values to
the smaller size.

Signed-off-by: Mans Rullgard <mans@mansr.com>
pull/28/head
Mans Rullgard 12 years ago
parent 69665bd6f4
commit 87fa05a0da
  1. 10
      libavutil/arm/intmath.h

@ -44,7 +44,7 @@ static av_always_inline av_const int FASTDIV(int a, int b)
}
#define av_clip_uint8 av_clip_uint8_arm
static av_always_inline av_const uint8_t av_clip_uint8_arm(int a)
static av_always_inline av_const unsigned av_clip_uint8_arm(int a)
{
unsigned x;
__asm__ ("usat %0, #8, %1" : "=r"(x) : "r"(a));
@ -52,15 +52,15 @@ static av_always_inline av_const uint8_t av_clip_uint8_arm(int a)
}
#define av_clip_int8 av_clip_int8_arm
static av_always_inline av_const uint8_t av_clip_int8_arm(int a)
static av_always_inline av_const int av_clip_int8_arm(int a)
{
unsigned x;
int x;
__asm__ ("ssat %0, #8, %1" : "=r"(x) : "r"(a));
return x;
}
#define av_clip_uint16 av_clip_uint16_arm
static av_always_inline av_const uint16_t av_clip_uint16_arm(int a)
static av_always_inline av_const unsigned av_clip_uint16_arm(int a)
{
unsigned x;
__asm__ ("usat %0, #16, %1" : "=r"(x) : "r"(a));
@ -68,7 +68,7 @@ static av_always_inline av_const uint16_t av_clip_uint16_arm(int a)
}
#define av_clip_int16 av_clip_int16_arm
static av_always_inline av_const int16_t av_clip_int16_arm(int a)
static av_always_inline av_const int av_clip_int16_arm(int a)
{
int x;
__asm__ ("ssat %0, #16, %1" : "=r"(x) : "r"(a));

Loading…
Cancel
Save