Mercurial > libavcodec.hg
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 |