i965/tiled_memcpy: Provide SSE2 for RGBA8 <-> BGRA8 swizzle.
authorRoland Scheidegger <sroland@vmware.com>
Fri, 29 Jan 2016 02:18:36 +0000 (03:18 +0100)
committerMatt Turner <mattst88@gmail.com>
Tue, 12 Apr 2016 21:37:01 +0000 (14:37 -0700)
commit0e605d9b3af68b67dceb8eeaeabebe91bc9cf31c
tree8598709bcaa7318a1d5b43d8f2b7e76b25332362
parentfc88b4babf86e93421e7a9da29ae125712891390
i965/tiled_memcpy: Provide SSE2 for RGBA8 <-> BGRA8 swizzle.

The existing code uses SSSE3, and because it isn't compiled in a
separate file compiled with that, it is usually not used (that, of
course, could be fixed...), whereas SSE2 is always present with 64-bit
builds.  This should be pretty much as fast as the pshufb version,
albeit those code paths aren't really used on chips without llc in any
case.

v2: fix andnot argument order, add comments
v3: use pshuflw/hw instead of shifts (suggested by Matt Turner), cut comments
v4: [mattst88] Rebase

Reviewed-by: Matt Turner <mattst88@gmail.com>
src/mesa/drivers/dri/i965/intel_tiled_memcpy.c