[FFmpeg-devel] [PATCH 1/2] aarch64: vp9: Fix assembling with Xcode 6.2 and older
Martin Storsjö
martin at martin.st
Tue Jun 20 22:09:04 EEST 2017
From: Memphiz <memphis at machzwo.de>
Properly use the b.eq/b.ge forms instead of the nonstandard forms
(which both gas and newer clang accept though), and expand the
register list that used a range (which the Xcode 6.2 clang, based
on clang 3.5 svn, didn't support).
This is cherrypicked from libav commit
a970f9de865c84ed5360dd0398baee7d48d04620.
---
libavcodec/aarch64/vp9itxfm_neon.S | 2 +-
libavcodec/aarch64/vp9mc_neon.S | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/libavcodec/aarch64/vp9itxfm_neon.S b/libavcodec/aarch64/vp9itxfm_neon.S
index b12890f0db..99413b0f70 100644
--- a/libavcodec/aarch64/vp9itxfm_neon.S
+++ b/libavcodec/aarch64/vp9itxfm_neon.S
@@ -1531,7 +1531,7 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1
2:
subs x1, x1, #1
.rept 4
- st1 {v16.8h-v19.8h}, [x0], #64
+ st1 {v16.8h,v17.8h,v18.8h,v19.8h}, [x0], #64
.endr
b.ne 2b
3:
diff --git a/libavcodec/aarch64/vp9mc_neon.S b/libavcodec/aarch64/vp9mc_neon.S
index 82a0f53133..f67624ca04 100644
--- a/libavcodec/aarch64/vp9mc_neon.S
+++ b/libavcodec/aarch64/vp9mc_neon.S
@@ -341,7 +341,7 @@ function \type\()_8tap_\size\()h_\idx1\idx2
subs x9, x9, #16
st1 {v1.16b}, [x0], #16
st1 {v24.16b}, [x6], #16
- beq 3f
+ b.eq 3f
mov v4.16b, v6.16b
mov v16.16b, v18.16b
ld1 {v6.16b}, [x2], #16
@@ -388,10 +388,10 @@ function ff_vp9_\type\()_\filter\()\size\()_h_neon, export=1
add x9, x6, w5, uxtw #4
mov x5, #\size
.if \size >= 16
- bge \type\()_8tap_16h_34
+ b.ge \type\()_8tap_16h_34
b \type\()_8tap_16h_43
.else
- bge \type\()_8tap_\size\()h_34
+ b.ge \type\()_8tap_\size\()h_34
b \type\()_8tap_\size\()h_43
.endif
endfunc
--
2.11.0 (Apple Git-81)
More information about the ffmpeg-devel
mailing list