Mercurial > libavcodec.hg
comparison arm/mdct_neon.S @ 12047:c80c7a717156 libavcodec
Remove vestiges of radix-2 FFT
Patch (mostly) by Loren Merritt
author | mru |
---|---|
date | Thu, 01 Jul 2010 23:21:42 +0000 |
parents | 361a5fcb4393 |
children |
comparison
equal
deleted
inserted
replaced
12046:ae57be2ef58c | 12047:c80c7a717156 |
---|---|
29 | 29 |
30 function ff_imdct_half_neon, export=1 | 30 function ff_imdct_half_neon, export=1 |
31 push {r4-r8,lr} | 31 push {r4-r8,lr} |
32 | 32 |
33 mov r12, #1 | 33 mov r12, #1 |
34 ldr lr, [r0, #28] @ mdct_bits | 34 ldr lr, [r0, #20] @ mdct_bits |
35 ldr r4, [r0, #32] @ tcos | 35 ldr r4, [r0, #24] @ tcos |
36 ldr r3, [r0, #8] @ revtab | 36 ldr r3, [r0, #8] @ revtab |
37 lsl r12, r12, lr @ n = 1 << nbits | 37 lsl r12, r12, lr @ n = 1 << nbits |
38 lsr lr, r12, #2 @ n4 = n >> 2 | 38 lsr lr, r12, #2 @ n4 = n >> 2 |
39 add r7, r2, r12, lsl #1 | 39 add r7, r2, r12, lsl #1 |
40 mov r12, #-16 | 40 mov r12, #-16 |
74 mov r4, r0 | 74 mov r4, r0 |
75 mov r6, r1 | 75 mov r6, r1 |
76 bl ff_fft_calc_neon | 76 bl ff_fft_calc_neon |
77 | 77 |
78 mov r12, #1 | 78 mov r12, #1 |
79 ldr lr, [r4, #28] @ mdct_bits | 79 ldr lr, [r4, #20] @ mdct_bits |
80 ldr r4, [r4, #32] @ tcos | 80 ldr r4, [r4, #24] @ tcos |
81 lsl r12, r12, lr @ n = 1 << nbits | 81 lsl r12, r12, lr @ n = 1 << nbits |
82 lsr lr, r12, #3 @ n8 = n >> 3 | 82 lsr lr, r12, #3 @ n8 = n >> 3 |
83 | 83 |
84 add r4, r4, lr, lsl #3 | 84 add r4, r4, lr, lsl #3 |
85 add r6, r6, lr, lsl #3 | 85 add r6, r6, lr, lsl #3 |
125 endfunc | 125 endfunc |
126 | 126 |
127 function ff_imdct_calc_neon, export=1 | 127 function ff_imdct_calc_neon, export=1 |
128 push {r4-r6,lr} | 128 push {r4-r6,lr} |
129 | 129 |
130 ldr r3, [r0, #28] | 130 ldr r3, [r0, #20] |
131 mov r4, #1 | 131 mov r4, #1 |
132 mov r5, r1 | 132 mov r5, r1 |
133 lsl r4, r4, r3 | 133 lsl r4, r4, r3 |
134 add r1, r1, r4 | 134 add r1, r1, r4 |
135 | 135 |
162 | 162 |
163 function ff_mdct_calc_neon, export=1 | 163 function ff_mdct_calc_neon, export=1 |
164 push {r4-r10,lr} | 164 push {r4-r10,lr} |
165 | 165 |
166 mov r12, #1 | 166 mov r12, #1 |
167 ldr lr, [r0, #28] @ mdct_bits | 167 ldr lr, [r0, #20] @ mdct_bits |
168 ldr r4, [r0, #32] @ tcos | 168 ldr r4, [r0, #24] @ tcos |
169 ldr r3, [r0, #8] @ revtab | 169 ldr r3, [r0, #8] @ revtab |
170 lsl lr, r12, lr @ n = 1 << nbits | 170 lsl lr, r12, lr @ n = 1 << nbits |
171 add r7, r2, lr @ in4u | 171 add r7, r2, lr @ in4u |
172 sub r9, r7, #16 @ in4d | 172 sub r9, r7, #16 @ in4d |
173 add r2, r7, lr, lsl #1 @ in3u | 173 add r2, r7, lr, lsl #1 @ in3u |
251 mov r4, r0 | 251 mov r4, r0 |
252 mov r6, r1 | 252 mov r6, r1 |
253 bl ff_fft_calc_neon | 253 bl ff_fft_calc_neon |
254 | 254 |
255 mov r12, #1 | 255 mov r12, #1 |
256 ldr lr, [r4, #28] @ mdct_bits | 256 ldr lr, [r4, #20] @ mdct_bits |
257 ldr r4, [r4, #32] @ tcos | 257 ldr r4, [r4, #24] @ tcos |
258 lsl r12, r12, lr @ n = 1 << nbits | 258 lsl r12, r12, lr @ n = 1 << nbits |
259 lsr lr, r12, #3 @ n8 = n >> 3 | 259 lsr lr, r12, #3 @ n8 = n >> 3 |
260 | 260 |
261 add r4, r4, lr, lsl #3 | 261 add r4, r4, lr, lsl #3 |
262 add r6, r6, lr, lsl #3 | 262 add r6, r6, lr, lsl #3 |