Browse Source

Merge pull request #154 from FrankBoesing/master

Just learned that saving r0-r3 is superflues
dds
Paul Stoffregen 9 years ago
parent
commit
bc898b8cce
1 changed files with 7 additions and 7 deletions
  1. +7
    -7
      memcpy_audio.S

+ 7
- 7
memcpy_audio.S View File

@ r1: srcL @ r1: srcL
@ r2: srcR @ r2: srcR


push {r3-r12,r14}
push {r4-r12,r14}
add r14,r0,#256 // TODO: 256 = AUDIO_BLOCK_SAMPLES*2 add r14,r0,#256 // TODO: 256 = AUDIO_BLOCK_SAMPLES*2
.align 2 .align 2
.loopLR: .loopLR:
cmp r14, r0 cmp r14, r0
bne .loopLR bne .loopLR


pop {r3-r12,r14}
pop {r4-r12,r14}
BX lr BX lr




@ r0: dst @ r0: dst
@ r1: srcL @ r1: srcL


push {r2-r12}
push {r4-r12}
mov r2, #0 mov r2, #0
add r12,r0,#256 // TODO: 256 = AUDIO_BLOCK_SAMPLES*2 add r12,r0,#256 // TODO: 256 = AUDIO_BLOCK_SAMPLES*2
.align 2 .align 2
cmp r12, r0 cmp r12, r0
bne .loopL bne .loopL


pop {r2-r12}
pop {r4-r12}
BX lr BX lr


/* void memcpy_tointerleaveL(short *dst, short *srcR); */ /* void memcpy_tointerleaveL(short *dst, short *srcR); */
@ r0: dst @ r0: dst
@ r1: srcR @ r1: srcR


push {r2-r12}
push {r4-r12}
mov r2, #0 mov r2, #0
add r12,r0,#256 // TODO: 256 = AUDIO_BLOCK_SAMPLES*2 add r12,r0,#256 // TODO: 256 = AUDIO_BLOCK_SAMPLES*2
.align 2 .align 2
cmp r12, r0 cmp r12, r0
bne .loopR bne .loopR


pop {r2-r12}
pop {r4-r12}
BX lr BX lr




@ r4: src4 @ r4: src4


push {r4-r11} push {r4-r11}
ldr r4, [sp, #(0+32)] //4th parameter is saved on the stack
ldr r4, [sp, #(0+32)] //5th parameter is saved on the stack
add r11,r0,#512 // TODO: 512 = AUDIO_BLOCK_SAMPLES*4 add r11,r0,#512 // TODO: 512 = AUDIO_BLOCK_SAMPLES*4
.align 2 .align 2
.loopQuad: .loopQuad:

Loading…
Cancel
Save