[x264-devel] SIGBUS ("Bus error") on ARMv7 for video encoding with libx264
Maximilian Strauch
maxstrauch at googlemail.com
Wed Dec 30 17:09:29 CET 2015
Hello,
>> 0x008487ec <x264_mbtree_propagate_list_internal_neon+20>: vmov.i32 q11, #4 ; 0x00000004
>> 0x008487f0 <x264_mbtree_propagate_list_internal_neon+24>: vmov.i8 q3, #32 ; 0x20
>> 0x008487f4 <x264_mbtree_propagate_list_internal_neon+28>: vdup.16 q8, d5[0]
>> 0x008487f8 <x264_mbtree_propagate_list_internal_neon+32>: vzip.16 q0, q8
>> 0x008487fc <x264_mbtree_propagate_list_internal_neon+36>: ldr r12, [sp, #8]
>> 0x00848800 <x264_mbtree_propagate_list_internal_neon+40>: subs r12, r12, #8
>> 0x00848804 <x264_mbtree_propagate_list_internal_neon+44>: vld1.16 {d28-d29}, [r1 :128]!
>> 0x00848808 <x264_mbtree_propagate_list_internal_neon+48>: vld1.16 {d30-d31}, [r2 :128]!
>> => 0x0084880c <x264_mbtree_propagate_list_internal_neon+52>: vld1.16 {d16-d19}, [r0 :128]!
>
> indeed. that would have been enough. The bug is already fixed in in
> https://git.videolan.org/?p=x264/x264-sandbox.git;a=commitdiff;h=a2fe237af1b68f2bd53d64ed3faed62429d3ee5a
> and should be available in x264 main repository in the next days.
I’ve patched my source version of x264 with this fix and recompiled it together with ffmpeg and it works fine. Which difference two lines can make …
> That is the correct fix as you can see in above commit. Removing an
> alignment specifier won't change the algorithm or results. It only makes
> loads/store slower.
It would have taken me at least three to four days to get so deep into ARM assembly to understand it and come to this conclusion. So thank you for solving this issue.
Greetings,
Max
More information about the x264-devel
mailing list