Bug#870622: ffmpeg: autopkgtest SIGBUS on armhf with binutils 2.29

Jiong Wang jiong.wang at foss.arm.com
Fri Aug 4 13:58:43 UTC 2017


Change

   "adreq lr,X(ff_h264_idct_add_neon) +CONFIG_THUMB"

Into:

.eqv ff_h264_idct_add_neon_without_func_type, X(ff_h264_idct_add_neon)
adreq lr,ff_h264_idct_add_neon_without_func_type +CONFIG_THUMB

might be a solution.  The idea is we use .eqv to remove the function 
attribute, so the assembler won't set LSB in any case.


On 04/08/17 12:39, Jiong Wang wrote:
> Hi,
>
>   This issue is caused by a recent change in ARM assembler included 
> since Binutils 2.29.
>
>   The details of that change can be found at 
> https://sourceware.org/bugzilla/show_bug.cgi?id=21458
>
>   The semantics of ADR has changed.  In general, the address generated 
> by ADR will guarantee the LSB be set if it's a thumb function address.
>
>    I noticed h264idct_neon.S is using something like:
>
> adreq lr,X(ff_h264_idct_add_neon) +CONFIG_THUMB
>
>    As ADR now will set the LSB automatically, you don't need 
> CONFIG_THUMB any more.
>
>    I think h264idct_neon.S needs to be updated, and the modification 
> should make sure it works with both old Binutils and the new one.
>
> Regards,
> Jiong
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20170804/64a99e56/attachment.html>


More information about the pkg-multimedia-maintainers mailing list