You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-07-11 14:30:22 +02:00
arm: fft_vfp: Unify the behaviour in ff_fft_calc_vfp between arm/thumb
Don't include the function pointer table in the code segment in arm mode. This shouldn't have any significant performance effect. It does end up as a few more instructions than before, for ARM, but only at the entry to this function, not within the fft functions themselves. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
@ -30,14 +30,10 @@
|
|||||||
function ff_fft_calc_vfp, export=1
|
function ff_fft_calc_vfp, export=1
|
||||||
ldr ip, [a1, #0] @ nbits
|
ldr ip, [a1, #0] @ nbits
|
||||||
mov a1, a2
|
mov a1, a2
|
||||||
A ldr pc, [pc, ip, lsl #2]
|
movrel a2, (fft_tab_vfp - 8)
|
||||||
A .word 0
|
ldr pc, [a2, ip, lsl #2]
|
||||||
A .word 0
|
endfunc
|
||||||
A .word 0
|
const fft_tab_vfp
|
||||||
T movrel a2, (fft_tab_vfp - 8)
|
|
||||||
T ldr pc, [a2, ip, lsl #2]
|
|
||||||
T endfunc
|
|
||||||
T const fft_tab_vfp
|
|
||||||
.word fft4_vfp
|
.word fft4_vfp
|
||||||
.word fft8_vfp
|
.word fft8_vfp
|
||||||
.word X(ff_fft16_vfp) @ this one alone is exported
|
.word X(ff_fft16_vfp) @ this one alone is exported
|
||||||
@ -53,8 +49,7 @@ T const fft_tab_vfp
|
|||||||
.word fft16384_vfp
|
.word fft16384_vfp
|
||||||
.word fft32768_vfp
|
.word fft32768_vfp
|
||||||
.word fft65536_vfp
|
.word fft65536_vfp
|
||||||
A endfunc
|
endconst
|
||||||
T endconst
|
|
||||||
|
|
||||||
function fft4_vfp
|
function fft4_vfp
|
||||||
vldr d0, [a1, #0*2*4] @ s0,s1 = z[0]
|
vldr d0, [a1, #0*2*4] @ s0,s1 = z[0]
|
||||||
|
Reference in New Issue
Block a user