diff options
author | rubidium <rubidium@openttd.org> | 2014-01-13 18:00:18 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2014-01-13 18:00:18 +0000 |
commit | 9a90bed79ba6e859df855a43abb715392899578b (patch) | |
tree | f018aba5edb462fdc7dbb83c3ec39f7840a27ab1 /src/blitter/32bpp_ssse3.cpp | |
parent | 6e34672c6ca636b38ed3711f3f2be444ae12bfdf (diff) | |
download | openttd-9a90bed79ba6e859df855a43abb715392899578b.tar.xz |
(svn r26251) -Codechange: prepare Draw code for code deduplication (MJP)
Diffstat (limited to 'src/blitter/32bpp_ssse3.cpp')
-rw-r--r-- | src/blitter/32bpp_ssse3.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/blitter/32bpp_ssse3.cpp b/src/blitter/32bpp_ssse3.cpp index 261c01c16..32a981b1b 100644 --- a/src/blitter/32bpp_ssse3.cpp +++ b/src/blitter/32bpp_ssse3.cpp @@ -84,7 +84,7 @@ inline void Blitter_32bppSSSE3::Draw(const Blitter::BlitterParams *bp, ZoomLevel src += 2; dst += 2; } - if (bt_last == BT_ODD) { + if ((bt_last == BT_NONE && effective_width & 1) || bt_last == BT_ODD) { __m128i srcABCD = _mm_cvtsi32_si128(src->data); __m128i dstABCD = _mm_cvtsi32_si128(dst->data); ALPHA_BLEND_2(); @@ -153,7 +153,7 @@ inline void Blitter_32bppSSSE3::Draw(const Blitter::BlitterParams *bp, ZoomLevel src_mv += 2; } - if (effective_width & 1) { + if ((bt_last == BT_NONE && effective_width & 1) || bt_last == BT_ODD) { /* In case the m-channel is zero, do not remap this pixel in any way. */ __m128i srcABCD; if (src_mv->m) { @@ -197,7 +197,7 @@ bmcr_alpha_blend_single: src += 2; dst += 2; } - if (bp->width & 1) { + if ((bt_last == BT_NONE && bp->width & 1) || bt_last == BT_ODD) { __m128i srcABCD = _mm_cvtsi32_si128(src->data); __m128i dstABCD = _mm_cvtsi32_si128(dst->data); DARKEN_2(); |