Home | History | Annotate | Download | only in armv7
      1 .text
      2 .p2align 2
      3 .global ia_aac_ld_dec_rearrange_armv7
      4 
      5 ia_aac_ld_dec_rearrange_armv7:
      6     STMFD           r13!, {r4 - r12, r14}
      7     @ASR    r2,r2,#3            @
      8     MOV             R2, R2, ASR #3
      9 
     10 
     11 LOOP_REARRANGE:
     12     LDRB            r4, [r3], #1        @ idx = mdct_tables_ptr->re_arr_tab[n]
     13     LDRB            r5, [r3], #1        @ idx = mdct_tables_ptr->re_arr_tab[n]
     14     LDRB            r6, [r3], #1        @ idx = mdct_tables_ptr->re_arr_tab[n]
     15     LDRB            r7, [r3], #1        @ idx = mdct_tables_ptr->re_arr_tab[n]
     16     LDRB            r8, [r3], #1        @ idx = mdct_tables_ptr->re_arr_tab[n]
     17     LDRB            r9, [r3], #1        @ idx = mdct_tables_ptr->re_arr_tab[n]
     18     LDRB            r10, [r3], #1       @ idx = mdct_tables_ptr->re_arr_tab[n]
     19     LDRB            r11, [r3], #1       @ idx = mdct_tables_ptr->re_arr_tab[n]
     20     ADD             r4, r0, r4, lsl #3
     21     ADD             r5, r0, r5, lsl #3
     22     ADD             r6, r0, r6, lsl #3
     23     ADD             r7, r0, r7, lsl #3
     24     ADD             r8, r0, r8, lsl #3
     25     ADD             r9, r0, r9, lsl #3
     26     ADD             r10, r0, r10, lsl #3
     27     ADD             r11, r0, r11, lsl #3
     28     LDMIA           r4, {r12, r14}      @ r12 = inp[idx] and r14 = inp[idx+1]
     29     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     30     LDMIA           r5, {r12, r14}      @ r12 = inp[idx] and r14 = inp[idx+1]
     31     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     32     LDMIA           r6, {r12, r14}      @ r12 = inp[idx] and r14 = inp[idx+1]
     33     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     34     LDMIA           r7, {r12, r14}      @ r12 = inp[idx] and r14 = inp[idx+1]
     35     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     36     LDMIA           r8, {r12, r14}      @ r12 = inp[idx] and r14 = inp[idx+1]
     37     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     38     LDMIA           r9, {r12, r14}      @ r12 = inp[idx] and r14 = inp[idx+1]
     39     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     40     LDMIA           r10, {r12, r14}     @ r12 = inp[idx] and r14 = inp[idx+1]
     41     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     42     LDMIA           r11, {r12, r14}     @ r12 = inp[idx] and r14 = inp[idx+1]
     43     STMIA           r1!, {r12, r14}     @ *buf1++ = inp[idx] and *buf1++ = inp[idx+1]
     44 
     45     SUBS            r2, r2, #1
     46     BGT             LOOP_REARRANGE
     47 
     48     LDMFD           r13!, {r4 - r12, r15}
     49 
     50 
     51