Mercurial > libavcodec.hg
changeset 10766:78c2be62260a libavcodec
Fix XvMC. XvMCCreateBlocks() may not allocate 16-byte aligned blocks,
so we can't use SSE-optimized routines.
author | gb |
---|---|
date | Mon, 04 Jan 2010 09:19:32 +0000 |
parents | 8963dc7bb923 |
children | 1e0d87fc2818 |
files | x86/dsputil_mmx.c |
diffstat | 1 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/x86/dsputil_mmx.c Sun Jan 03 21:21:41 2010 +0000 +++ b/x86/dsputil_mmx.c Mon Jan 04 09:19:32 2010 +0000 @@ -2596,7 +2596,9 @@ c->add_pixels_clamped = add_pixels_clamped_mmx; c->clear_block = clear_block_mmx; c->clear_blocks = clear_blocks_mmx; - if (mm_flags & FF_MM_SSE){ + if ((mm_flags & FF_MM_SSE) && + !(CONFIG_MPEG_XVMC_DECODER && avctx->xvmc_acceleration > 1)){ + /* XvMCCreateBlocks() may not allocate 16-byte aligned blocks */ c->clear_block = clear_block_sse; c->clear_blocks = clear_blocks_sse; }