diff options
author | rubidium <rubidium@openttd.org> | 2014-01-13 18:04:28 +0000 |
---|---|---|
committer | rubidium <rubidium@openttd.org> | 2014-01-13 18:04:28 +0000 |
commit | 2f7c4f6d12845e2f5be01285db86d5ba070c45ad (patch) | |
tree | 55ed0af7874b1ab75c84e88be53028eadf4d2ae7 /src | |
parent | 5b3b533697bd2803452d0ccf4bcc94550970968f (diff) | |
download | openttd-2f7c4f6d12845e2f5be01285db86d5ba070c45ad.tar.xz |
(svn r26254) -Codechange: MOVD is better in some cases than PINSRD (MJP)
Diffstat (limited to 'src')
-rw-r--r-- | src/blitter/32bpp_anim_sse4.cpp | 2 | ||||
-rw-r--r-- | src/blitter/32bpp_sse4.cpp | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/blitter/32bpp_anim_sse4.cpp b/src/blitter/32bpp_anim_sse4.cpp index 4ee66f544..597c63241 100644 --- a/src/blitter/32bpp_anim_sse4.cpp +++ b/src/blitter/32bpp_anim_sse4.cpp @@ -173,7 +173,7 @@ bmno_full_transparency: Colour c0 = dst[0]; c0 = r0 == 0 ? c0 : c0map; c0 = m0 != 0 ? c0 : src0; - INSR32(c0.data, srcABCD, 0); + srcABCD = _mm_cvtsi32_si128(c0.data); const Colour src1 = src[1]; const Colour c1map = (this->LookupColourInPalette(r1).data & 0x00FFFFFF) | (src1.data & 0xFF000000); diff --git a/src/blitter/32bpp_sse4.cpp b/src/blitter/32bpp_sse4.cpp index 74f10e934..a0ddf2b63 100644 --- a/src/blitter/32bpp_sse4.cpp +++ b/src/blitter/32bpp_sse4.cpp @@ -57,8 +57,8 @@ inline void Blitter_32bppSSE4::Draw(const Blitter::BlitterParams *bp, ZoomLevel const __m128i tr_nom_base = TRANSPARENT_NOM_BASE; for (int y = bp->height; y != 0; y--) { - const Colour *src = src_rgba_line + META_LENGTH; Colour *dst = dst_line; + const Colour *src = src_rgba_line + META_LENGTH; if (mode == BM_COLOUR_REMAP) src_mv = src_mv_line; if (read_mode == RM_WITH_MARGIN) { @@ -109,7 +109,7 @@ inline void Blitter_32bppSSE4::Draw(const Blitter::BlitterParams *bp, ZoomLevel Colour c0 = 0; // Use alpha of 0 to keep dst as is. c0 = r0 == 0 ? c0 : c0map; c0 = m0 != 0 ? c0 : src0; - INSR32(c0.data, srcABCD, 0); + srcABCD = _mm_cvtsi32_si128(c0.data); const Colour src1 = src[1]; const uint m1 = (byte) (mvX2 >> 16); |