summaryrefslogtreecommitdiff
path: root/libavcodec/arm/dcadsp_vfp.S
diff options
context:
space:
mode:
authorChristophe Gisquet <christophe.gisquet@gmail.com>2014-02-14 15:03:06 +0000
committerJanne Grunau <janne-libav@jannau.net>2014-02-28 13:00:47 +0100
commit87ec849fe9acba075c843e67bcd01f256f481a18 (patch)
treee071371104bda0f397ec2b647f90ae8d5a898bc1 /libavcodec/arm/dcadsp_vfp.S
parenta55546f48d55e3d1155840541b2be5f4f8cf18ab (diff)
dcadec: remove scaling in lfe_interpolation_fir
The scaling factor is constant so it is faster to scale the FIR coefficients in the tables during compilation. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Diffstat (limited to 'libavcodec/arm/dcadsp_vfp.S')
-rw-r--r--libavcodec/arm/dcadsp_vfp.S9
1 files changed, 0 insertions, 9 deletions
diff --git a/libavcodec/arm/dcadsp_vfp.S b/libavcodec/arm/dcadsp_vfp.S
index edabc29e23..c9114d499a 100644
--- a/libavcodec/arm/dcadsp_vfp.S
+++ b/libavcodec/arm/dcadsp_vfp.S
@@ -27,8 +27,6 @@ PCOEF .req a3
OLDFPSCR .req a4
COUNTER .req ip
-SCALE32 .req s28 @ use vector of 4 in place of 9th scalar when decifactor=32 / JMAX=8
-SCALE64 .req s0 @ spare register in scalar bank when decifactor=64 / JMAX=4
IN0 .req s4
IN1 .req s5
IN2 .req s6
@@ -76,9 +74,6 @@ POST3 .req s27
vldr COEF5, [PCOEF, #X + (1*JMAX + 1) * Y]
vldr COEF6, [PCOEF, #X + (2*JMAX + 1) * Y]
.endif
- .ifnc "\tail",""
- vmul.f POST0, POST0, SCALE\decifactor @ vector operation (SCALE may be scalar)
- .endif
.ifnc "\head",""
vldr COEF7, [PCOEF, #X + (3*JMAX + 1) * Y]
.ifc "\tail",""
@@ -129,7 +124,6 @@ POST3 .req s27
.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
@@ -140,7 +134,6 @@ NOVFP vmov s0, r3
.if \decifactor == 32
.set JMAX, 8
vpush {s16-s31}
- vmov SCALE32, s0 @ duplicate scalar across vector
vldr IN4, [PIN, #-4*4]
vldr IN5, [PIN, #-5*4]
vldr IN6, [PIN, #-6*4]
@@ -186,8 +179,6 @@ endfunc
.unreq OLDFPSCR
.unreq COUNTER
- .unreq SCALE32
- .unreq SCALE64
.unreq IN0
.unreq IN1
.unreq IN2