123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199 |
- From d96257d82cc8f2b8a6d62cbcc7bc2e077ab50575 Mon Sep 17 00:00:00 2001
- From: =?UTF-8?q?Felix=20Paul=20K=C3=BChne?= <fkuehne@videolan.org>
- Date: Wed, 10 Dec 2014 22:14:55 +0100
- Subject: [PATCH 05/15] arm_neon: fix iOS linking
- ---
- modules/arm_neon/amplify.S | 7 ++---
- modules/arm_neon/simple_channel_mixer.S | 46 +++++++++++++--------------------
- 2 files changed, 22 insertions(+), 31 deletions(-)
- diff --git a/modules/arm_neon/amplify.S b/modules/arm_neon/amplify.S
- index 5938118..42f0d00 100644
- --- a/modules/arm_neon/amplify.S
- +++ b/modules/arm_neon/amplify.S
- @@ -18,6 +18,8 @@
- @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- @****************************************************************************/
-
- +#include "asm.S"
- +
- .syntax unified
- .arm
- .fpu neon
- @@ -27,9 +29,7 @@
- #define SRC r1
- #define SIZE r2
- .align 2
- - .global amplify_float_arm_neon
- - .type amplify_float_arm_neon, %function
- -amplify_float_arm_neon:
- +function amplify_float_arm_neon, export=1
- cmp SIZE, #0
- bxeq lr
- #ifdef __ARM_PCS
- @@ -79,3 +79,4 @@ amplify_float_arm_neon:
- 4: vst1.f32 {d20-d21}, [DST,:128]!
- 5: vst1.f32 {d16-d17}, [DST,:128]!
- bx lr
- +endfunc
- diff --git a/modules/arm_neon/simple_channel_mixer.S b/modules/arm_neon/simple_channel_mixer.S
- index a94ae85..54b43a7 100644
- --- a/modules/arm_neon/simple_channel_mixer.S
- +++ b/modules/arm_neon/simple_channel_mixer.S
- @@ -19,6 +19,8 @@
- @ Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- @****************************************************************************/
-
- +#include "asm.S"
- +
- .fpu neon
- .text
- .align 2
- @@ -34,9 +36,7 @@ coeff_7to2:
- .float 0.5
- .float 0.25
- .float 0.25
- - .global convert_7_x_to_2_0_neon_asm
- - .type convert_7_x_to_2_0_neon_asm, %function
- -convert_7_x_to_2_0_neon_asm:
- +function convert_7_x_to_2_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_7to2
- @@ -63,6 +63,7 @@ convert_7_x_to_2_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- +endfunc
-
-
- coeff_5to2:
- @@ -70,9 +71,7 @@ coeff_5to2:
- .float 0.5
- .float 0.33
- .float 0.33
- - .global convert_5_x_to_2_0_neon_asm
- - .type convert_5_x_to_2_0_neon_asm, %function
- -convert_5_x_to_2_0_neon_asm:
- +function convert_5_x_to_2_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_5to2
- @@ -95,14 +94,13 @@ convert_5_x_to_2_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- +endfunc
-
-
- coeff_4to2:
- .float 0.5
- .float 0.5
- - .global convert_4_0_to_2_0_neon_asm
- - .type convert_4_0_to_2_0_neon_asm, %function
- -convert_4_0_to_2_0_neon_asm:
- +function convert_4_0_to_2_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_4to2
- @@ -119,14 +117,12 @@ convert_4_0_to_2_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- -
- +endfunc
-
- coeff_3to2:
- .float 0.5
- .float 0.5
- - .global convert_3_x_to_2_0_neon_asm
- - .type convert_3_x_to_2_0_neon_asm, %function
- -convert_3_x_to_2_0_neon_asm:
- +function convert_3_x_to_2_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_3to2
- @@ -147,16 +143,14 @@ convert_3_x_to_2_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- -
- +endfunc
-
- coeff_7to1:
- .float 0.25
- .float 0.25
- .float 0.125
- .float 0.125
- - .global convert_7_x_to_1_0_neon_asm
- - .type convert_7_x_to_1_0_neon_asm, %function
- -convert_7_x_to_1_0_neon_asm:
- +function convert_7_x_to_1_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_7to1
- @@ -181,6 +175,7 @@ convert_7_x_to_1_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- +endfunc
-
-
- coeff_5to1:
- @@ -188,9 +183,7 @@ coeff_5to1:
- .float 0.25
- .float 0.16666667
- .float 0.16666667
- - .global convert_5_x_to_1_0_neon_asm
- - .type convert_5_x_to_1_0_neon_asm, %function
- -convert_5_x_to_1_0_neon_asm:
- +function convert_5_x_to_1_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_5to1
- @@ -212,16 +205,14 @@ convert_5_x_to_1_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- -
- +endfunc
-
- coeff_7to4:
- .float 0.5
- .float 0.5
- .float 0.16666667
- .float 0.16666667
- - .global convert_7_x_to_4_0_neon_asm
- - .type convert_7_x_to_4_0_neon_asm, %function
- -convert_7_x_to_4_0_neon_asm:
- +function convert_7_x_to_4_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_7to4
- @@ -247,14 +238,12 @@ convert_7_x_to_4_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- -
- +endfunc
-
- coeff_5to4:
- .float 0.5
- .float 0.5
- - .global convert_5_x_to_4_0_neon_asm
- - .type convert_5_x_to_4_0_neon_asm, %function
- -convert_5_x_to_4_0_neon_asm:
- +function convert_5_x_to_4_0_neon_asm, export=1
- push {r4,lr}
-
- adr COEFF, coeff_5to4
- @@ -277,3 +266,4 @@ convert_5_x_to_4_0_neon_asm:
- bne 0b
-
- pop {r4,pc}
- +endfunc
- --
- 2.9.2
|