sna: Move initialisation of loop counter to common code
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 6 Nov 2013 09:40:56 +0000 (09:40 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 6 Nov 2013 09:40:56 +0000 (09:40 +0000)
It was only being defined in x86-64 and left unitialized for x86-32.

Fixes regression from
commit 587c4866652e40e1e228b333028114766a6d3b08
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Mon Nov 4 15:10:40 2013 +0000

    sna: Promote uint16_t to a full int to avoid overflow in computing w*h in memcpy_xor

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71286
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/sna/blt.c

index 4843a41..f861f65 100644 (file)
@@ -1000,13 +1000,13 @@ memcpy_xor(const void *src, void *dst, int bpp,
                                or |= or << 16;
                        }
                case 4:
-#if USE_SSE2
                        w = width;
                        if (w * 4 == dst_stride && dst_stride == src_stride) {
                                w *= height;
                                height = 1;
                        }
 
+#if USE_SSE2
                        if (have_sse2()) {
                                do {
                                        uint32_t *d = (uint32_t *)dst_bytes;