summaryrefslogtreecommitdiff
path: root/libavcodec/arm
diff options
context:
space:
mode:
authorMans Rullgard <mans@mansr.com>2012-01-13 18:56:36 +0000
committerMans Rullgard <mans@mansr.com>2012-01-13 19:09:59 +0000
commit5c5e1ea3cdccc5af0b2d3de15a9c3739c30ec88c (patch)
treedd4db8a9c0d06ef6e2cd9f2d28f6f094e2593d79 /libavcodec/arm
parent0cc1a86dc34b020d857f946e47edf9e425274330 (diff)
ARM: 4-byte align start of all asm functions
Due to apprent bugs in the GNU assembler and/or linker, relocations can be incorrectly processed if the alignment of a Thumb instruction is changed in the output file compared to the input object. This fixes crashes in h264 decoding with Thumb enabled. No effect in ARM mode since everything is 4-byte aligned there. Signed-off-by: Mans Rullgard <mans@mansr.com>
Diffstat (limited to 'libavcodec/arm')
-rw-r--r--libavcodec/arm/asm.S1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/arm/asm.S b/libavcodec/arm/asm.S
index aaf497e8c2..3b495a279f 100644
--- a/libavcodec/arm/asm.S
+++ b/libavcodec/arm/asm.S
@@ -68,6 +68,7 @@ ELF .size \name, . - \name
.purgem endfunc
.endm
.text
+ .align 2
.if \export
.global EXTERN_ASM\name
EXTERN_ASM\name: