diff options
Diffstat (limited to 'src/sna/blt.c')
-rw-r--r-- | src/sna/blt.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/sna/blt.c b/src/sna/blt.c index 4a330938..4c27678d 100644 --- a/src/sna/blt.c +++ b/src/sna/blt.c @@ -138,7 +138,7 @@ xmm_save_128(__m128i *dst, __m128i data) } #endif -fast_memcpy void +fast void memcpy_blt(const void *src, void *dst, int bpp, int32_t src_stride, int32_t dst_stride, int16_t src_x, int16_t src_y, @@ -202,6 +202,14 @@ memcpy_blt(const void *src, void *dst, int bpp, dst_bytes += dst_stride; } while (--height); break; + case 16: + do { + ((uint64_t *)dst_bytes)[0] = ((const uint64_t *)src_bytes)[0]; + ((uint64_t *)dst_bytes)[1] = ((const uint64_t *)src_bytes)[1]; + src_bytes += src_stride; + dst_bytes += dst_stride; + } while (--height); + break; default: do { |