diff options
Diffstat (limited to 'media/libstagefright/codecs/mp3dec/src/asm/pvmp3_polyphase_filter_window_arm.s')
-rw-r--r-- | media/libstagefright/codecs/mp3dec/src/asm/pvmp3_polyphase_filter_window_arm.s | 237 |
1 files changed, 0 insertions, 237 deletions
diff --git a/media/libstagefright/codecs/mp3dec/src/asm/pvmp3_polyphase_filter_window_arm.s b/media/libstagefright/codecs/mp3dec/src/asm/pvmp3_polyphase_filter_window_arm.s deleted file mode 100644 index abec599..0000000 --- a/media/libstagefright/codecs/mp3dec/src/asm/pvmp3_polyphase_filter_window_arm.s +++ /dev/null @@ -1,237 +0,0 @@ -; ------------------------------------------------------------------ -; Copyright (C) 1998-2009 PacketVideo -; -; Licensed under the Apache License, Version 2.0 (the "License"); -; you may not use this file except in compliance with the License. -; You may obtain a copy of the License at -; -; http://www.apache.org/licenses/LICENSE-2.0 -; -; Unless required by applicable law or agreed to in writing, software -; distributed under the License is distributed on an "AS IS" BASIS, -; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either -; express or implied. -; See the License for the specific language governing permissions -; and limitations under the License. -; ------------------------------------------------------------------- - -; -; -; Filename: pvmp3_polyphase_filter_window.s -; -;------------------------------------------------------------------------------ -; REVISION HISTORY -; -; -; Who: Date: MM/DD/YYYY -; Description: -; -;------------------------------------------------------------------------------ - - EXPORT pvmp3_polyphase_filter_window - - IMPORT ||Lib$$Request$$armlib|| [WEAK] - IMPORT ||Lib$$Request$$cpplib|| [WEAK] - IMPORT pqmfSynthWin - - - -;------------------------------------------------------------------------------ - - AREA |.text|, CODE, READONLY, ALIGN=2 - - -;------------------------------------------------------------------------------ - -|pvmp3_polyphase_filter_window| PROC - - stmfd sp!,{r0-r2,r4-r11,lr} - - sub sp,sp,#4 - ldr r2,[sp,#0xc] - ldr r1,PolyPh_filter_coeff - - sub r2,r2,#1 - mov r10,#1 - str r2,[sp] - -; Accumulators r9, r11::> Initialization - -Loop_j - mov r9, #0x20 - mov r11, #0x20 - mov r4, #0x10 -Loop_i - add r2,r4,r10 - add r3,r0,r2,lsl #2 - sub r2,r4,r10 - ldr r5,[r3] - ldr lr,[r1] - add r12,r0,r2,lsl #2 - ldr r6,[r12,#0x780] - smlal r2,r9,lr,r5 - smlal r2,r11,lr,r6 - ldr r2,[r1,#4] - ldr r7,[r12,#0x80] - smlal r5,r11,r2,r5 - smull r6,r5,r2,r6 - sub r9,r9,r5 - ldr r5,[r1,#8] - ldr r8,[r3,#0x700] - add r4,r4,#0x200 - smlal r6,r9,r5,r7 - smull r6,r2,r5,r8 - ldr r5,[r1,#0xc] - sub r11,r11,r2 - smlal r8,r9,r5,r8 - smlal r7,r11,r5,r7 - ldr r5,[r3,#0x100] - ldr r2,[r1,#0x10] - ldr r6,[r12,#0x680] - smlal lr,r9,r2,r5 - smlal lr,r11,r2,r6 - ldr r2,[r1,#0x14] - ldr r7,[r12,#0x180] - smlal r5,r11,r2,r5 - smull r6,r5,r2,r6 - ldr r6,[r1,#0x18] - ldr r8,[r3,#0x600] - sub r9,r9,r5 - smlal r5,r9,r6,r7 - smull r2,r5,r6,r8 - ldr r6,[r1,#0x1c] - sub r11,r11,r5 - smlal r8,r9,r6,r8 - ldr r2,[r1,#0x20] - ldr r5,[r3,#0x200] - smlal r7,r11,r6,r7 - ldr r6,[r12,#0x580] - smlal lr,r9,r2,r5 - smlal lr,r11,r2,r6 - ldr r2,[r1,#0x24] - ldr r7,[r12,#0x280] - smlal r5,r11,r2,r5 - smull r6,r5,r2,r6 - ldr r6,[r1,#0x28] - ldr r8,[r3,#0x500] - sub r9,r9,r5 - smlal r5,r9,r6,r7 - smull r2,r5,r6,r8 - ldr r6,[r1,#0x2c] - sub r11,r11,r5 - - smlal r8,r9,r6,r8 - smlal r7,r11,r6,r7 - ldr r5,[r3,#0x300] - ldr r8,[r1,#0x30] - ldr r6,[r12,#0x480] - smlal r7,r9,r8,r5 - smlal r7,r11,r8,r6 - ldr r8,[r1,#0x34] - ldr r12,[r12,#0x380] - smlal r5,r11,r8,r5 - smull r6,r5,r8,r6 - ldr r6,[r1,#0x38] - - - ldr r3,[r3,#0x400] - sub r9,r9,r5 - smlal r7,r9,r6,r12 - smull r8,r7,r6,r3 - cmp r4,#0x210 - sub r11,r11,r7 - - ldr r2,[r1,#0x3c] - add r1,r1,#0x40 - smlal r3,r9,r2,r3 - smlal r12,r11,r2,r12 - - blt Loop_i - - mov r3,r9, asr #6 - mov r4,r3, asr #15 - teq r4,r3, asr #31 - ldr r12,LOW_16BITS - ldr r2,[sp] - eorne r3,r12,r3,asr #31 - ldr r4,[sp,#8] - mov r2,r10,lsl r2 - add r4,r4,r2,lsl #1 - strh r3,[r4] - - mov r3,r11,asr #6 - mov r4,r3,asr #15 - teq r4,r3,asr #31 - eorne r3,r12,r3,asr #31 - ldr r12,[sp,#0xc] - ldr r11,[sp,#8] - rsb r2,r2,r12,lsl #5 - add r2,r11,r2,lsl #1 - strh r3,[r2] - - add r10,r10,#1 - cmp r10,#0x10 - blt Loop_j - -; Accumulators r4, r5 Initialization - - mov r4,#0x20 - mov r5,#0x20 - mov r3,#0x10 -PolyPh_filter_loop2 - add r2,r0,r3,lsl #2 - ldr r12,[r2] - ldr r8,[r1] - ldr r6,[r2,#0x80] - smlal r12,r4,r8,r12 - ldr r12,[r1,#4] - ldr r7,[r2,#0x40] - smlal r6,r4,r12,r6 - - ldr r12,[r1,#8] - ldr r6,[r2,#0x180] - smlal r7,r5,r12,r7 - ldr r12,[r2,#0x100] - ldr r7,[r1,#0xc] - ldr r2,[r2,#0x140] - smlal r12,r4,r7,r12 - ldr r12,[r1,#0x10] - add r3,r3,#0x80 - smlal r6,r4,r12,r6 - ldr r6,[r1,#0x14] - cmp r3,#0x210 - smlal r2,r5,r6,r2 - add r1,r1,#0x18 - - blt PolyPh_filter_loop2 - mov r0,r4,asr #6 - mov r2,r0,asr #15 - teq r2,r0,asr #31 - ldrne r12,LOW_16BITS - ldr r1,[sp,#8] - eorne r0,r12,r0,asr #31 - strh r0,[r1,#0] - mov r0,r5,asr #6 - mov r2,r0,asr #15 - teq r2,r0,asr #31 - ldrne r12,LOW_16BITS - ldr r2,[sp] - mov r1,#0x10 - eorne r0,r12,r0,asr #31 - ldr r12,[sp,#8] - mov r1,r1,lsl r2 - add r1,r12,r1,lsl #1 - strh r0,[r1] - add sp,sp,#0x10 - ldmfd sp!,{r4-r11,pc} - - -PolyPh_filter_coeff - DCD pqmfSynthWin -LOW_16BITS - DCD 0x00007fff - - ENDP - - - END |