Mac and Linux SDL2 binary snapshots
Edward Rudd
2019-04-09 9cd2e9ec8fc0127393dfce9c0359d500c8c238be
source/src/video/SDL_blit_N.c
@@ -2333,6 +2333,31 @@
    /* Set up some basic variables */
    ckey &= rgbmask;
    /* Fastpath: same source/destination format, no Amask, bpp 32, loop is vectorized. ~10x faster */
    if (srcfmt->format == dstfmt->format &&
        (srcfmt->format == SDL_PIXELFORMAT_RGB888 || srcfmt->format == SDL_PIXELFORMAT_BGR888)) {
        Uint32 *src32 = (Uint32*)src;
        Uint32 *dst32 = (Uint32*)dst;
        srcskip /= sizeof(Uint32);
        dstskip /= sizeof(Uint32);
        while (height--) {
            /* *INDENT-OFF* */
            DUFFS_LOOP(
            {
                if (*src32 != ckey) {
                    *dst32 = *src32;
                }
                ++src32;
                ++dst32;
            },
            width);
            /* *INDENT-ON* */
            src32 += srcskip;
            dst32 += dstskip;
        }
        return;
    }
    while (height--) {
        /* *INDENT-OFF* */
        DUFFS_LOOP(
@@ -2380,6 +2405,34 @@
    dstbpp = dstfmt->BytesPerPixel;
    ckey &= rgbmask;
    /* Fastpath: same source/destination format, with Amask, bpp 32, loop is vectorized. ~10x faster */
    if (srcfmt->format == dstfmt->format &&
        (srcfmt->format == SDL_PIXELFORMAT_ARGB8888 ||
         srcfmt->format == SDL_PIXELFORMAT_ABGR8888 ||
         srcfmt->format == SDL_PIXELFORMAT_BGRA8888 ||
         srcfmt->format == SDL_PIXELFORMAT_RGBA8888)) {
        Uint32 *src32 = (Uint32*)src;
        Uint32 *dst32 = (Uint32*)dst;
        srcskip /= sizeof(Uint32);
        dstskip /= sizeof(Uint32);
        while (height--) {
            /* *INDENT-OFF* */
            DUFFS_LOOP(
            {
                if ((*src32 & rgbmask) != ckey) {
                    *dst32 = *src32;
                }
                ++src32;
                ++dst32;
            },
            width);
            /* *INDENT-ON* */
            src32 += srcskip;
            dst32 += dstskip;
        }
        return;
    }
    while (height--) {
        /* *INDENT-OFF* */
        DUFFS_LOOP(