| OLD | NEW |
| 1 @ | 1 @ |
| 2 @ Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. | 2 @ Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. |
| 3 @ | 3 @ |
| 4 @ Use of this source code is governed by a BSD-style license | 4 @ Use of this source code is governed by a BSD-style license |
| 5 @ that can be found in the LICENSE file in the root of the source | 5 @ that can be found in the LICENSE file in the root of the source |
| 6 @ tree. An additional intellectual property rights grant can be found | 6 @ tree. An additional intellectual property rights grant can be found |
| 7 @ in the file PATENTS. All contributing project authors may | 7 @ in the file PATENTS. All contributing project authors may |
| 8 @ be found in the AUTHORS file in the root of the source tree. | 8 @ be found in the AUTHORS file in the root of the source tree. |
| 9 @ | 9 @ |
| 10 | 10 |
| 11 @ Contains a function for the core loop in the normalized lattice AR | 11 @ Contains a function for the core loop in the normalized lattice AR |
| 12 @ filter routine for iSAC codec, optimized for ARMv7 platforms. | 12 @ filter routine for iSAC codec, optimized for ARMv7 platforms. |
| 13 @ | 13 @ |
| 14 @ Output is bit-exact with the reference C code in lattic_c.c | 14 @ Output is bit-exact with the reference C code in lattic_c.c |
| 15 @ | 15 @ |
| 16 @ Register usage: | 16 @ Register usage: |
| 17 @ | 17 @ |
| 18 @ r0: &ar_g_Q0 | 18 @ r0: &ar_g_Q0 |
| 19 @ r1: &ar_f_Q0 | 19 @ r1: &ar_f_Q0 |
| 20 @ r2: &cth_Q15 | 20 @ r2: &cth_Q15 |
| 21 @ r3: &sth_Q15 | 21 @ r3: &sth_Q15 |
| 22 @ r4: out loop counter | 22 @ r4: out loop counter |
| 23 @ r5: tmpAR | 23 @ r5: tmpAR |
| 24 @ r9: inner loop counter | 24 @ r9: inner loop counter |
| 25 @ r12: constant #16384 | 25 @ r12: constant #16384 |
| 26 @ r6, r7, r8, r10, r11: scratch | 26 @ r6, r7, r8, r10, r11: scratch |
| 27 | 27 |
| 28 #include "webrtc/system_wrappers/interface/asm_defines.h" | 28 #include "webrtc/system_wrappers/include/asm_defines.h" |
| 29 #include "settings.h" | 29 #include "settings.h" |
| 30 | 30 |
| 31 GLOBAL_FUNCTION WebRtcIsacfix_FilterArLoop | 31 GLOBAL_FUNCTION WebRtcIsacfix_FilterArLoop |
| 32 .align 2 | 32 .align 2 |
| 33 DEFINE_FUNCTION WebRtcIsacfix_FilterArLoop | 33 DEFINE_FUNCTION WebRtcIsacfix_FilterArLoop |
| 34 push {r4-r11} | 34 push {r4-r11} |
| 35 | 35 |
| 36 add r1, #2 @ &ar_f_Q0[1] | 36 add r1, #2 @ &ar_f_Q0[1] |
| 37 mov r12, #16384 | 37 mov r12, #16384 |
| 38 mov r4, #HALF_SUBFRAMELEN | 38 mov r4, #HALF_SUBFRAMELEN |
| (...skipping 29 matching lines...) Expand all Loading... |
| 68 bgt ORDER_COEF_LOOP | 68 bgt ORDER_COEF_LOOP |
| 69 | 69 |
| 70 strh r5, [r0] @ Output: ar_g_Q0[0] = tmpAR; | 70 strh r5, [r0] @ Output: ar_g_Q0[0] = tmpAR; |
| 71 strh r5, [r1], #2 @ Output: ar_f_Q0[n+1] = tmpAR; | 71 strh r5, [r1], #2 @ Output: ar_f_Q0[n+1] = tmpAR; |
| 72 | 72 |
| 73 subs r4, #1 | 73 subs r4, #1 |
| 74 bne HALF_SUBFRAME_LOOP | 74 bne HALF_SUBFRAME_LOOP |
| 75 | 75 |
| 76 pop {r4-r11} | 76 pop {r4-r11} |
| 77 bx lr | 77 bx lr |
| OLD | NEW |