# HG changeset patch # User mru # Date 1232311391 0 # Node ID 8d425ee85ddbfd747eb32a70b20af0e3e33c6c01 # Parent 6f1b210e58d11ebf05b06bb7f4f7c7c839b5c248 ARM: simplify ff_put/avg_h264_chroma_mc4/8_neon definitions, no code change diff -r 6f1b210e58d1 -r 8d425ee85ddb arm/h264dsp_neon.S --- a/arm/h264dsp_neon.S Sun Jan 18 18:31:52 2009 +0000 +++ b/arm/h264dsp_neon.S Sun Jan 18 20:43:11 2009 +0000 @@ -56,10 +56,11 @@ .endm /* chroma_mc8(uint8_t *dst, uint8_t *src, int stride, int h, int x, int y) */ - .macro h264_chroma_mc8 avg=0 + .macro h264_chroma_mc8 type +function ff_\type\()_h264_chroma_mc8_neon, export=1 push {r4-r7, lr} ldrd r4, [sp, #20] -.if \avg +.ifc \type,avg mov lr, r0 .endif pld [r1] @@ -103,7 +104,7 @@ vld1.64 {d6, d7}, [r5], r4 pld [r1] vrshrn.u16 d17, q9, #6 -.if \avg +.ifc \type,avg vld1.64 {d20}, [lr,:64], r2 vld1.64 {d21}, [lr,:64], r2 vrhadd.u8 q8, q8, q10 @@ -136,7 +137,7 @@ vld1.64 {d6}, [r5], r4 vrshrn.u16 d16, q8, #6 vrshrn.u16 d17, q9, #6 -.if \avg +.ifc \type,avg vld1.64 {d20}, [lr,:64], r2 vld1.64 {d21}, [lr,:64], r2 vrhadd.u8 q8, q8, q10 @@ -165,7 +166,7 @@ vext.8 d5, d4, d5, #1 vrshrn.u16 d16, q8, #6 vrshrn.u16 d17, q9, #6 -.if \avg +.ifc \type,avg vld1.64 {d20}, [lr,:64], r2 vld1.64 {d21}, [lr,:64], r2 vrhadd.u8 q8, q8, q10 @@ -177,13 +178,15 @@ bgt 5b pop {r4-r7, pc} + .endfunc .endm /* chroma_mc4(uint8_t *dst, uint8_t *src, int stride, int h, int x, int y) */ - .macro h264_chroma_mc4 avg=0 + .macro h264_chroma_mc4 type +function ff_\type\()_h264_chroma_mc4_neon, export=1 push {r4-r7, lr} ldrd r4, [sp, #20] -.if \avg +.ifc \type,avg mov lr, r0 .endif pld [r1] @@ -230,7 +233,7 @@ vrshrn.u16 d16, q8, #6 subs r3, r3, #2 pld [r1] -.if \avg +.ifc \type,avg vld1.32 {d20[0]}, [lr,:32], r2 vld1.32 {d20[1]}, [lr,:32], r2 vrhadd.u8 d16, d16, d20 @@ -265,7 +268,7 @@ vadd.i16 d16, d16, d17 vadd.i16 d17, d18, d19 vrshrn.u16 d16, q8, #6 -.if \avg +.ifc \type,avg vld1.32 {d20[0]}, [lr,:32], r2 vld1.32 {d20[1]}, [lr,:32], r2 vrhadd.u8 d16, d16, d20 @@ -295,7 +298,7 @@ vadd.i16 d17, d18, d19 pld [r1] vrshrn.u16 d16, q8, #6 -.if \avg +.ifc \type,avg vld1.32 {d20[0]}, [lr,:32], r2 vld1.32 {d20[1]}, [lr,:32], r2 vrhadd.u8 d16, d16, d20 @@ -309,26 +312,16 @@ bgt 5b pop {r4-r7, pc} + .endfunc .endm .text .align -function ff_put_h264_chroma_mc8_neon, export=1 - h264_chroma_mc8 - .endfunc - -function ff_avg_h264_chroma_mc8_neon, export=1 - h264_chroma_mc8 avg=1 - .endfunc - -function ff_put_h264_chroma_mc4_neon, export=1 - h264_chroma_mc4 - .endfunc - -function ff_avg_h264_chroma_mc4_neon, export=1 - h264_chroma_mc4 avg=1 - .endfunc + h264_chroma_mc8 put + h264_chroma_mc8 avg + h264_chroma_mc4 put + h264_chroma_mc4 avg /* H.264 loop filter */