Reformat a bit, add MSVS checks, add SSE4

This commit is contained in:
Matt Sarett
2016-02-16 10:10:11 -05:00
parent f84f957881
commit 577c1f0305
3 changed files with 114 additions and 76 deletions

View File

@@ -16,6 +16,13 @@
void
png_init_filter_functions_sse2(png_structp pp, unsigned int bpp)
{
// The techniques used to implement each of these filters in SSE operate on
// one pixel at a time.
// So they generally speed up 3bpp images about 3x, 4bpp images about 4x.
// They can scale up to 6 and 8 bpp images and down to 2 bpp images,
// but they'd not likely have any benefit for 1bpp images.
// Most of these can be implemented using only MMX and 64-bit registers,
// but they end up a bit slower than using the equally-ubiquitous SSE2.
if (bpp == 3)
{
pp->read_filter[PNG_FILTER_VALUE_SUB-1] = png_read_filter_row_sub3_sse2;