[FFmpeg-devel] compile for arm cortex A8 with iOS SDK 5
neve_capricorn at gmx.de
neve_capricorn at gmx.de
Fri Jan 20 13:37:32 CET 2012
only a small update...i downgrade to iOS 4.2 with GCC under SnowLeopard,
and i was able to compile the lib with NEON support.
i tested then a vp6 movie in 640x360 and with neon support i got 40 fps,
without only 6 fps. tested with an a iphone 4s.
i can disablet the NEON/ASM but the performance seems really poor.
what is the differnet between the inline ASM from the GCC to llvm-gcc?
i know this i not a fix, but i only want to share some infos about the
performance boost we have with neon and ARM A8.
iam interested in a fix and i dont know if this is the right place but i
would donate any help for fix that we can bring to the main git.
gary
Am 19.01.12 17:36, schrieb Michael Niedermayer:
> On Tue, Jan 17, 2012 at 08:59:34AM +0100, Gerhard Roethlin wrote:
>> I had similar problems
>>
>> On 2012.01.09, at 21:08, gary wrote:
>>
>>> iam using ffmpeg-HEAD-f247f4c with llvm-gcc.4.2 compiler.
>>>
>>> when i activate the ASM neon support iam hanging right now at some instructions.
>>>
>>> i tried a first fix in the libavutil.h
>>>
>>> intmath.h
>>>
>>> #define av_clipl_int32 av_clipl_int32_arm
>>> static av_always_inline av_const int32_t av_clipl_int32_arm(int64_t a)
>>> {
>>> int x, y;
>>> __asm__ (//"adds %1, %R2, %Q2, lsr #31 \n\t"
>>> "itet ne \n\t"
>>> "mvnne %1, #1<<31 \n\t"
>>> //"moveq %0, %Q2 \n\t"
>>> //"eorne %0, %1, %R2, asr #31 \n\t"
>>> : "=r"(x), "=&r"(y) : "r"(a):"cc");
>>> return x;
>>> }
>> My solution for that was to make the av_clip macro only get used with gcc 4.4 or newer
>>
>>> now i have another problem in
>>> CC libavformat/asf.o
>>> CC libavformat/asfcrypt.o
>>> error: invalid operand in inline asm: 'ldr ${0:Q}, $1
>>> ldr ${0:R}, $2
>>> '
>> Maybe AV_RN64. I fixed both problems in the patch I submitted a month ago:
>> http://ffmpeg.org/pipermail/ffmpeg-devel/2011-December/117848.html
>>
>> But it's not much of a fix, more just ignoring the problem.
> If someone finds a fix i would be very interrested to have that in
> main git.
> simply disabling for gcc before 4.4 is of course ok too when versions
> prior to that really cant handle it.
>
> [...]
>
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
More information about the ffmpeg-devel
mailing list