diff options
Diffstat (limited to 'vp8/encoder/arm/neon/fastquantizeb_neon.asm')
-rw-r--r-- | vp8/encoder/arm/neon/fastquantizeb_neon.asm | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/vp8/encoder/arm/neon/fastquantizeb_neon.asm b/vp8/encoder/arm/neon/fastquantizeb_neon.asm index dcf3c5090..c970cb73e 100644 --- a/vp8/encoder/arm/neon/fastquantizeb_neon.asm +++ b/vp8/encoder/arm/neon/fastquantizeb_neon.asm @@ -135,17 +135,16 @@ vmovl.u16 q0, d0 vmovl.u16 q10, d20 - vmax.u32 d0, d0, d1 vmax.u32 d20, d20, d21 vpmax.u32 d0, d0, d0 vpmax.u32 d20, d20, d20 - add r4, r2, #vp8_blockd_eob - add r5, r3, #vp8_blockd_eob + ldr r4, [r2, #vp8_blockd_eob] + ldr r5, [r3, #vp8_blockd_eob] - vst1.32 {d0[0]}, [r4@32] - vst1.32 {d20[0]}, [r5@32] + vst1.8 {d0[0]}, [r4] ; store eob + vst1.8 {d20[0]}, [r5] ; store eob vldmia sp!, {q4-q7} ldmfd sp!, {r4-r9} @@ -196,6 +195,8 @@ vshr.s16 q12, #1 ; right shift 1 after vqdmulh vshr.s16 q13, #1 + ldr r5, [r1, #vp8_blockd_eob] + orr r2, r2, r3 ; check if all zero (step 4) cmp r2, #0 ; check if all zero (step 5) beq zero_output ; check if all zero (step 6) @@ -230,14 +231,13 @@ vst1.s16 {q2, q3}, [r7@128] ; store dqcoeff = x * Dequant - add r4, r1, #vp8_blockd_eob - vst1.32 {d0[0]}, [r4@32] + vst1.8 {d0[0]}, [r5] ; store eob ldmfd sp!, {r4-r7} bx lr zero_output - str r2, [r1, #vp8_blockd_eob] + strb r2, [r5] ; store eob vst1.s16 {q0, q1}, [r6@128] ; qcoeff = 0 vst1.s16 {q0, q1}, [r7@128] ; dqcoeff = 0 |