aboutsummaryrefslogtreecommitdiffstats
path: root/libavutil/file.c
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2017-08-31 12:06:44 +0300
committerMartin Storsjö <martin@martin.st>2017-09-02 22:18:20 +0300
commit9dde6ab06c48f9447cd16f39bee33569cddb7be4 (patch)
tree14b743294fbd5085849f3b1765ae7f92fc7e86cb /libavutil/file.c
parent547db1eaecd597031165a2bf637acaaacde52788 (diff)
downloadffmpeg-9dde6ab06c48f9447cd16f39bee33569cddb7be4.tar.gz
arm: Fix SIGBUS on ARM when compiled with binutils 2.29
In binutils 2.29, the behavior of the ADR instruction changed so that 1 is added to the address of a Thumb function (previously nothing was added). This allows the loaded address to be passed to a BLX instruction and the correct mode change will occur. See: https://sourceware.org/bugzilla/show_bug.cgi?id=21458 By using adr with a label that isn't annotated as a thumb function, we avoid the new behaviour in binutils 2.29 and get the same behaviour as in prior releases, and as in other assemblers (ms armasm.exe, clang's built in assembler) - an idea that Janne Grunau came up with. Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavutil/file.c')
0 files changed, 0 insertions, 0 deletions