comparison arm/dsputil_neon_s.S @ 9580:51e8f5ab8f1e libavcodec

ARM: NEON put_pixels_clamped
author conrad
date Wed, 29 Apr 2009 11:31:43 +0000
parents 93c20dd3da43
children 2b3b9358bee7
comparison
equal deleted inserted replaced
9579:8665a1518257 9580:51e8f5ab8f1e
270 270
271 pixfunc put_ pixels8 271 pixfunc put_ pixels8
272 pixfunc2 put_ pixels8_x2, _no_rnd, vhadd.u8 272 pixfunc2 put_ pixels8_x2, _no_rnd, vhadd.u8
273 pixfunc2 put_ pixels8_y2, _no_rnd, vhadd.u8 273 pixfunc2 put_ pixels8_y2, _no_rnd, vhadd.u8
274 pixfunc2 put_ pixels8_xy2, _no_rnd, vshrn.u16, 1 274 pixfunc2 put_ pixels8_xy2, _no_rnd, vshrn.u16, 1
275
276 function ff_put_pixels_clamped_neon, export=1
277 vld1.64 {d16-d19}, [r0,:128]!
278 vqmovun.s16 d0, q8
279 vld1.64 {d20-d23}, [r0,:128]!
280 vqmovun.s16 d1, q9
281 vld1.64 {d24-d27}, [r0,:128]!
282 vqmovun.s16 d2, q10
283 vld1.64 {d28-d31}, [r0,:128]!
284 vqmovun.s16 d3, q11
285 vst1.64 {d0}, [r1,:64], r2
286 vqmovun.s16 d4, q12
287 vst1.64 {d1}, [r1,:64], r2
288 vqmovun.s16 d5, q13
289 vst1.64 {d2}, [r1,:64], r2
290 vqmovun.s16 d6, q14
291 vst1.64 {d3}, [r1,:64], r2
292 vqmovun.s16 d7, q15
293 vst1.64 {d4}, [r1,:64], r2
294 vst1.64 {d5}, [r1,:64], r2
295 vst1.64 {d6}, [r1,:64], r2
296 vst1.64 {d7}, [r1,:64], r2
297 bx lr
298 .endfunc
275 299
276 function ff_put_signed_pixels_clamped_neon, export=1 300 function ff_put_signed_pixels_clamped_neon, export=1
277 vmov.u8 d31, #128 301 vmov.u8 d31, #128
278 vld1.64 {d16-d17}, [r0,:128]! 302 vld1.64 {d16-d17}, [r0,:128]!
279 vqmovn.s16 d0, q8 303 vqmovn.s16 d0, q8