diff options
author | Måns Rullgård <mans@mansr.com> | 2009-01-12 20:37:49 +0000 |
---|---|---|
committer | Måns Rullgård <mans@mansr.com> | 2009-01-12 20:37:49 +0000 |
commit | 9a0cf9f8f8e7651f761420052690a55013edc743 (patch) | |
tree | 5189154f4d19fb93ee72d7482c48bac12e47a4c4 | |
parent | e9497946bb38ebbc44caa3fdb08665e51db814d7 (diff) | |
download | ffmpeg-9a0cf9f8f8e7651f761420052690a55013edc743.tar.gz |
ARM: use push/pop pseudo-instructions in simple_idct_armv6.S
Originally committed as revision 16570 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavcodec/arm/simple_idct_armv6.S | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/libavcodec/arm/simple_idct_armv6.S b/libavcodec/arm/simple_idct_armv6.S index a276ca42b9..9d6455f8ec 100644 --- a/libavcodec/arm/simple_idct_armv6.S +++ b/libavcodec/arm/simple_idct_armv6.S @@ -193,7 +193,7 @@ w57: .long W57 r1 = dest */ function idct_row_armv6 - str lr, [sp, #-4]! + push {lr} ldr lr, [r0, #12] /* lr = row[7,5] */ ldr ip, [r0, #4] /* ip = row[6,4] */ @@ -203,7 +203,7 @@ function idct_row_armv6 cmpeq lr, r3 cmpeq lr, r2, lsr #16 beq 1f - str r1, [sp, #-4]! + push {r1} ldr ip, w42 /* ip = W4 | (W2 << 16) */ cmp lr, #0 beq 2f @@ -213,7 +213,7 @@ function idct_row_armv6 2: idct_row4 ROW_SHIFT -3: ldr r1, [sp], #4 +3: pop {r1} idct_finish_shift ROW_SHIFT strh r4, [r1] @@ -225,7 +225,7 @@ function idct_row_armv6 strh r9, [r1, #(16*5)] strh r8, [r1, #(16*7)] - ldr pc, [sp], #4 + pop {pc} 1: mov r2, r2, lsl #3 strh r2, [r1] @@ -236,7 +236,7 @@ function idct_row_armv6 strh r2, [r1, #(16*3)] strh r2, [r1, #(16*5)] strh r2, [r1, #(16*7)] - ldr pc, [sp], #4 + pop {pc} .endfunc /* @@ -245,13 +245,13 @@ function idct_row_armv6 r1 = dest */ function idct_col_armv6 - stmfd sp!, {r1, lr} + push {r1, lr} ldr r2, [r0] /* r2 = row[2,0] */ ldr ip, w42 /* ip = W4 | (W2 << 16) */ ldr r3, [r0, #8] /* r3 = row[3,1] */ idct_row COL_SHIFT - ldr r1, [sp], #4 + pop {r1} idct_finish_shift COL_SHIFT strh r4, [r1] @@ -263,7 +263,7 @@ function idct_col_armv6 strh r9, [r1, #(16*6)] strh r8, [r1, #(16*7)] - ldr pc, [sp], #4 + pop {pc} .endfunc /* @@ -273,13 +273,13 @@ function idct_col_armv6 r2 = line size */ function idct_col_put_armv6 - stmfd sp!, {r1, r2, lr} + push {r1, r2, lr} ldr r2, [r0] /* r2 = row[2,0] */ ldr ip, w42 /* ip = W4 | (W2 << 16) */ ldr r3, [r0, #8] /* r3 = row[3,1] */ idct_row COL_SHIFT - ldmfd sp!, {r1, r2} + pop {r1, r2} idct_finish_shift_sat COL_SHIFT strb r4, [r1], r2 @@ -293,7 +293,7 @@ function idct_col_put_armv6 sub r1, r1, r2, lsl #3 - ldr pc, [sp], #4 + pop {pc} .endfunc /* @@ -303,13 +303,13 @@ function idct_col_put_armv6 r2 = line size */ function idct_col_add_armv6 - stmfd sp!, {r1, r2, lr} + push {r1, r2, lr} ldr r2, [r0] /* r2 = row[2,0] */ ldr ip, w42 /* ip = W4 | (W2 << 16) */ ldr r3, [r0, #8] /* r3 = row[3,1] */ idct_row COL_SHIFT - ldmfd sp!, {r1, r2} + pop {r1, r2} idct_finish ldrb r3, [r1] @@ -348,7 +348,7 @@ function idct_col_add_armv6 sub r1, r1, r2, lsl #3 - ldr pc, [sp], #4 + pop {pc} .endfunc /* @@ -385,7 +385,7 @@ function idct_col_add_armv6 /* void ff_simple_idct_armv6(DCTELEM *data); */ function ff_simple_idct_armv6, export=1 - stmfd sp!, {r4-r11, lr} + push {r4-r11, lr} sub sp, sp, #128 mov r1, sp @@ -395,12 +395,12 @@ function ff_simple_idct_armv6, export=1 idct_rows idct_col_armv6, 2 add sp, sp, #128 - ldmfd sp!, {r4-r11, pc} + pop {r4-r11, pc} .endfunc /* ff_simple_idct_add_armv6(uint8_t *dest, int line_size, DCTELEM *data); */ function ff_simple_idct_add_armv6, export=1 - stmfd sp!, {r0, r1, r4-r11, lr} + push {r0, r1, r4-r11, lr} sub sp, sp, #128 mov r0, r2 @@ -412,12 +412,12 @@ function ff_simple_idct_add_armv6, export=1 idct_rows idct_col_add_armv6, 1 add sp, sp, #(128+8) - ldmfd sp!, {r4-r11, pc} + pop {r4-r11, pc} .endfunc /* ff_simple_idct_put_armv6(uint8_t *dest, int line_size, DCTELEM *data); */ function ff_simple_idct_put_armv6, export=1 - stmfd sp!, {r0, r1, r4-r11, lr} + push {r0, r1, r4-r11, lr} sub sp, sp, #128 mov r0, r2 @@ -429,5 +429,5 @@ function ff_simple_idct_put_armv6, export=1 idct_rows idct_col_put_armv6, 1 add sp, sp, #(128+8) - ldmfd sp!, {r4-r11, pc} + pop {r4-r11, pc} .endfunc |