summaryrefslogtreecommitdiff
path: root/libavcodec/arm/dcadsp_vfp.S
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2014-02-08 02:16:47 +0100
committerMichael Niedermayer <michaelni@gmx.at>2014-02-08 02:27:27 +0100
commit5794e9fce22a4d3dffda536a220ca9483a2d87da (patch)
tree9cd8048ad384e3568814fadeb1c81e7632a950ec /libavcodec/arm/dcadsp_vfp.S
parent45854df9a5220bdde400a447f63f61618b89dde2 (diff)
parent5fdbfcb5b793f5849c496214668094a8ec99fa07 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: dcadsp: split lfe_dir cases Conflicts: libavcodec/arm/dcadsp_init_arm.c See: 45854df9a5220bdde400a447f63f61618b89dde2 Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/arm/dcadsp_vfp.S')
-rw-r--r--libavcodec/arm/dcadsp_vfp.S32
1 files changed, 12 insertions, 20 deletions
diff --git a/libavcodec/arm/dcadsp_vfp.S b/libavcodec/arm/dcadsp_vfp.S
index b23ce4ac8a..ecfbb31266 100644
--- a/libavcodec/arm/dcadsp_vfp.S
+++ b/libavcodec/arm/dcadsp_vfp.S
@@ -24,7 +24,6 @@
POUT .req a1
PIN .req a2
PCOEF .req a3
-DECIFACTOR .req a4
OLDFPSCR .req a4
COUNTER .req ip
@@ -129,6 +128,15 @@ POST3 .req s27
.endm
.macro dca_lfe_fir decifactor
+function ff_dca_lfe_fir\decifactor\()_vfp, export=1
+NOVFP vmov s0, r3
+ fmrx OLDFPSCR, FPSCR
+ ldr ip, =0x03030000 @ RunFast mode, short vectors of length 4, stride 1
+ fmxr FPSCR, ip
+ vldr IN0, [PIN, #-0*4]
+ vldr IN1, [PIN, #-1*4]
+ vldr IN2, [PIN, #-2*4]
+ vldr IN3, [PIN, #-3*4]
.if \decifactor == 32
.set JMAX, 8
vpush {s16-s31}
@@ -165,32 +173,16 @@ POST3 .req s27
.endif
fmxr FPSCR, OLDFPSCR
bx lr
+endfunc
.endm
-
-/* void ff_dca_lfe_fir_vfp(float *out, const float *in, const float *coefs,
- * int decifactor, float scale)
- */
-function ff_dca_lfe_fir_vfp, export=1
- teq DECIFACTOR, #32
- fmrx OLDFPSCR, FPSCR
- ldr ip, =0x03030000 @ RunFast mode, short vectors of length 4, stride 1
- fmxr FPSCR, ip
-NOVFP vldr s0, [sp]
- vldr IN0, [PIN, #-0*4]
- vldr IN1, [PIN, #-1*4]
- vldr IN2, [PIN, #-2*4]
- vldr IN3, [PIN, #-3*4]
- beq 32f
-64: dca_lfe_fir 64
+ dca_lfe_fir 64
.ltorg
-32: dca_lfe_fir 32
-endfunc
+ dca_lfe_fir 32
.unreq POUT
.unreq PIN
.unreq PCOEF
- .unreq DECIFACTOR
.unreq OLDFPSCR
.unreq COUNTER