Gavin Kinsey <[email protected]> writes:

> On Wednesday 25 May 2011 18:45:37 Mans Rullgard wrote:
>> Signed-off-by: Mans Rullgard <[email protected]>
>> ---
>>  libavutil/arm/intmath.h |    9 +++++++++
>>  1 files changed, 9 insertions(+), 0 deletions(-)
>> 
>> diff --git a/libavutil/arm/intmath.h b/libavutil/arm/intmath.h
>> index 5f85bfa..cc3de90 100644
>> --- a/libavutil/arm/intmath.h
>> +++ b/libavutil/arm/intmath.h
>> @@ -74,6 +74,15 @@ static av_always_inline av_const int16_t
>> av_clip_int16_arm(int a) return x;
>>  }
>> 
>> +#define av_clip_uintp2 av_clip_uintp2_arm
>> +static av_always_inline av_const unsigned av_clip_uintp2_arm(int a, int p)
>> +{
>> +    unsigned x;
>> +    __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
>> +    return x;
>> +}
>> +
>> +
>>  #else /* HAVE_ARMV6 */
>> 
>>  #define FASTDIV FASTDIV
>
> This patch breaks my Android build for ARMv7.  The error message I get is:
>
> libavutil/arm/intmath.h: In function 'av_clip_uintp2_arm':
> libavutil/arm/intmath.h:81: warning: asm operand 2 probably doesn't match 
> constraints
> libavutil/arm/intmath.h:81: error: impossible constraint in 'asm'

The compiler isn't inlining the function properly.  Get a better compiler.

> This is using the Android NDK cross-compiler with the following ffmpeg
> configure flags:
> --disable-static --enable-shared --disable-ffmpeg --disable-ffprobe --disable-
> ffserver --disable-avdevice --disable-avfilter --enable-cross-compile --
> sysroot=/home/gkinsey/src-ext/android-ndk/platforms/android-8/arch-arm --
> target-os=linux --cross-prefix=/home/gkinsey/src-ext/android-
> ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-
> androideabi- --disable-symver --arch=arm-v7a --extra-cflags='-march=armv7-a -
> mfloat-abi=softfp' --extra-ldflags='-Wl,--fix-cortex-a8' --enable-debug

Where did you get the idea for all those flags?

-- 
Måns Rullgård
[email protected]
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to