Mercurial > libavcodec.hg
comparison x86/dsputil_mmx.c @ 9341:06532529c428 libavcodec
Mark line_skip3 asm argument as output-only instead of using av_uninit.
author | reimar |
---|---|
date | Fri, 03 Apr 2009 14:03:49 +0000 |
parents | e9d9f8094e7f |
children | 7f594601d5e9 |
comparison
equal
deleted
inserted
replaced
9340:e9d9f8094e7f | 9341:06532529c428 |
---|---|
294 "movq %%mm4, (%0, %1) \n\t" | 294 "movq %%mm4, (%0, %1) \n\t" |
295 | 295 |
296 void put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size) | 296 void put_signed_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size) |
297 { | 297 { |
298 x86_reg line_skip = line_size; | 298 x86_reg line_skip = line_size; |
299 x86_reg av_uninit(line_skip3); | 299 x86_reg line_skip3; |
300 | 300 |
301 __asm__ volatile ( | 301 __asm__ volatile ( |
302 "movq "MANGLE(ff_vector128)", %%mm0 \n\t" | 302 "movq "MANGLE(ff_vector128)", %%mm0 \n\t" |
303 "lea (%3, %3, 2), %1 \n\t" | 303 "lea (%3, %3, 2), %1 \n\t" |
304 put_signed_pixels_clamped_mmx_half(0) | 304 put_signed_pixels_clamped_mmx_half(0) |
305 "lea (%0, %3, 4), %0 \n\t" | 305 "lea (%0, %3, 4), %0 \n\t" |
306 put_signed_pixels_clamped_mmx_half(64) | 306 put_signed_pixels_clamped_mmx_half(64) |
307 :"+&r" (pixels), "+&r" (line_skip3) | 307 :"+&r" (pixels), "=&r" (line_skip3) |
308 :"r" (block), "r"(line_skip) | 308 :"r" (block), "r"(line_skip) |
309 :"memory"); | 309 :"memory"); |
310 } | 310 } |
311 | 311 |
312 void add_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size) | 312 void add_pixels_clamped_mmx(const DCTELEM *block, uint8_t *pixels, int line_size) |