From 11623217e3c9b859daee544e31acdd0821b61039 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Thu, 10 Nov 2016 13:25:36 +0200 Subject: [PATCH] arm: vp9mc: Use a different helper register for PIC loads MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This fixes crashes since 557c1675cf in linux PIC builds. Previously, movrelx silently used r12 as helper register, which doesn't work when r12 is the destination register. Signed-off-by: Martin Storsjö --- libavcodec/arm/vp9mc_neon.S | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/arm/vp9mc_neon.S b/libavcodec/arm/vp9mc_neon.S index 9deb6562a5..d3d2c7f96b 100644 --- a/libavcodec/arm/vp9mc_neon.S +++ b/libavcodec/arm/vp9mc_neon.S @@ -404,7 +404,7 @@ function ff_vp9_\type\()_\filter\()\size\()_h_neon, export=1 ldr r4, [sp, #16] ldr r5, [sp, #20] .endif - movrelx r12, X(ff_vp9_subpel_filters) + movrelx r12, X(ff_vp9_subpel_filters), r6 add r12, r12, 120*\offset - 8 cmp r5, #8 add r12, r12, r5, lsl #3 @@ -680,8 +680,8 @@ function ff_vp9_\type\()_\filter\()\size\()_v_neon, export=1 push {r4-r5} vpush {q4-q7} ldr r4, [sp, #72] + movrelx r12, X(ff_vp9_subpel_filters), r5 ldr r5, [sp, #80] - movrelx r12, X(ff_vp9_subpel_filters) add r12, r12, 120*\offset - 8 add r12, r12, r5, lsl #3 cmp r5, #8