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