diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2015-03-11 21:10:27 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2015-03-11 21:10:31 +0100 |
commit | 6a28ae55c4fea975c09a3474ca5a55ca4134a4e9 (patch) | |
tree | b915f2e50b8e2b0af1b3f0dd88e8e154ebd73286 | |
parent | 78518fb928400e208ae51d8bacb27ad49ab9ad15 (diff) | |
parent | 9fa9d471a7af57a62843fdae0dc36e67960c3f3d (diff) | |
download | ffmpeg-6a28ae55c4fea975c09a3474ca5a55ca4134a4e9.tar.gz |
Merge commit '9fa9d471a7af57a62843fdae0dc36e67960c3f3d' into release/0.10
* commit '9fa9d471a7af57a62843fdae0dc36e67960c3f3d':
arm: dsputil: prettify some conditional instructions in put_pixels macros
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/arm/dsputil_neon.S | 62 |
1 files changed, 20 insertions, 42 deletions
diff --git a/libavcodec/arm/dsputil_neon.S b/libavcodec/arm/dsputil_neon.S index 7b301707d9..f573710c3b 100644 --- a/libavcodec/arm/dsputil_neon.S +++ b/libavcodec/arm/dsputil_neon.S @@ -136,9 +136,7 @@ endfunc sub r3, r3, #2 vld1.64 {d0-d2}, [r1], r2 vld1.64 {d4-d6}, [r1], r2 - .ifeq \rnd - vmov.i16 q13, #1 - .endif +NRND vmov.i16 q13, #1 pld [r1] pld [r1, r2] vext.8 q1, q0, q1, #1 @@ -151,15 +149,11 @@ endfunc vld1.64 {d0-d2}, [r1], r2 vadd.u16 q12, q8, q9 pld [r1] - .ifeq \rnd - vadd.u16 q12, q12, q13 - .endif +NRND vadd.u16 q12, q12, q13 vext.8 q15, q0, q1, #1 vadd.u16 q1 , q10, q11 shrn d28, q12, #2 - .ifeq \rnd - vadd.u16 q1, q1, q13 - .endif +NRND vadd.u16 q1, q1, q13 shrn d29, q1, #2 .if \avg vld1.8 {q8}, [r0,:128] @@ -171,15 +165,11 @@ endfunc vst1.64 {q14}, [r0,:128], r2 vadd.u16 q12, q8, q9 pld [r1, r2] - .ifeq \rnd - vadd.u16 q12, q12, q13 - .endif +NRND vadd.u16 q12, q12, q13 vext.8 q2, q1, q2, #1 vadd.u16 q0, q10, q11 shrn d30, q12, #2 - .ifeq \rnd - vadd.u16 q0, q0, q13 - .endif +NRND vadd.u16 q0, q0, q13 shrn d31, q0, #2 .if \avg vld1.8 {q9}, [r0,:128] @@ -192,15 +182,11 @@ endfunc vld1.64 {d0-d2}, [r1], r2 vadd.u16 q12, q8, q9 - .ifeq \rnd - vadd.u16 q12, q12, q13 - .endif +NRND vadd.u16 q12, q12, q13 vext.8 q15, q0, q1, #1 vadd.u16 q1 , q10, q11 shrn d28, q12, #2 - .ifeq \rnd - vadd.u16 q1, q1, q13 - .endif +NRND vadd.u16 q1, q1, q13 shrn d29, q1, #2 .if \avg vld1.8 {q8}, [r0,:128] @@ -210,14 +196,10 @@ endfunc vaddl.u8 q10, d1, d31 vst1.64 {q14}, [r0,:128], r2 vadd.u16 q12, q8, q9 - .ifeq \rnd - vadd.u16 q12, q12, q13 - .endif +NRND vadd.u16 q12, q12, q13 vadd.u16 q0, q10, q11 shrn d30, q12, #2 - .ifeq \rnd - vadd.u16 q0, q0, q13 - .endif +NRND vadd.u16 q0, q0, q13 shrn d31, q0, #2 .if \avg vld1.8 {q9}, [r0,:128] @@ -319,9 +301,7 @@ endfunc sub r3, r3, #2 vld1.64 {q0}, [r1], r2 vld1.64 {q1}, [r1], r2 - .ifeq \rnd - vmov.i16 q11, #1 - .endif +NRND vmov.i16 q11, #1 pld [r1] pld [r1, r2] vext.8 d4, d0, d1, #1 @@ -333,9 +313,7 @@ endfunc pld [r1] vadd.u16 q10, q8, q9 vext.8 d4, d0, d1, #1 - .ifeq \rnd - vadd.u16 q10, q10, q11 - .endif +NRND vadd.u16 q10, q10, q11 vaddl.u8 q8, d0, d4 shrn d5, q10, #2 vld1.64 {q1}, [r1], r2 @@ -345,9 +323,7 @@ endfunc vld1.8 {d7}, [r0,:64] vrhadd.u8 d5, d5, d7 .endif - .ifeq \rnd - vadd.u16 q10, q10, q11 - .endif +NRND vadd.u16 q10, q10, q11 vst1.64 {d5}, [r0,:64], r2 shrn d7, q10, #2 .if \avg @@ -362,9 +338,7 @@ endfunc vld1.64 {q0}, [r1], r2 vadd.u16 q10, q8, q9 vext.8 d4, d0, d1, #1 - .ifeq \rnd - vadd.u16 q10, q10, q11 - .endif +NRND vadd.u16 q10, q10, q11 vaddl.u8 q8, d0, d4 shrn d5, q10, #2 vadd.u16 q10, q8, q9 @@ -372,9 +346,7 @@ endfunc vld1.8 {d7}, [r0,:64] vrhadd.u8 d5, d5, d7 .endif - .ifeq \rnd - vadd.u16 q10, q10, q11 - .endif +NRND vadd.u16 q10, q10, q11 vst1.64 {d5}, [r0,:64], r2 shrn d7, q10, #2 .if \avg @@ -394,6 +366,8 @@ endfunc .macro shrn rd, rn, rm vrshrn.u16 \rd, \rn, \rm .endm + .macro NRND insn:vararg + .endm .else .macro avg rd, rn, rm vhadd.u8 \rd, \rn, \rm @@ -401,12 +375,16 @@ endfunc .macro shrn rd, rn, rm vshrn.u16 \rd, \rn, \rm .endm + .macro NRND insn:vararg + \insn + .endm .endif function ff_\pfx\name\suf\()_neon, export=1 \name \rnd, \avg endfunc .purgem avg .purgem shrn + .purgem NRND .endm .macro pixfunc2 pfx, name, avg=0 |