On Tue, Sep 11, 2012 at 7:34 PM, Søren Sandmann <sandm...@cs.au.dk> wrote: > Andrea Canciani <ranm...@gmail.com> writes: > >> This reminds me that I have some patches to improve building pixman on win32: >> http://cgit.freedesktop.org/~ranma42/pixman/commit/?h=wip/simpleops-to-master >> >> Soren, is it ok if I push the attached patches? > > No objections from me if the test suite still passes with > PIXMAN_DISABLE=sse2 set.
On MacOS X the testsuite shows no regression with that variable in the env. On win32, pixman did not compile without the first of those patches. After it, the testsuite fails with: $ PIXMAN_DISABLE=sse2 ./scaling-test.exe Assertion failed: frcd_canary_variable1 == frcd_volatile_constant1, file scaling-test.c, line 356 pixman: Disabled sse2 implementation The failing testcase is: $ PIXMAN_DISABLE=sse2 ./scaling-test.exe 3348 Assertion failed: frcd_canary_variable1 == frcd_volatile_constant1, file scaling-test.c, line 356 src_fmt=20028888, dst_fmt=20028888 op=3, scale_x=27881, scale_y=-65000, repeat=0 translate_x=55344, translate_y=56484 src_width=11, src_height=8, dst_width=24, dst_height=7 src_x=0, src_y=4, dst_x=4, dst_y=3 w=20, h=2 destination clip box: [16,6-20,6] destination clip box: [3,2-18,6] pixman: Disabled sse2 implementation ... This seems to be consistent with the compiler warnings: pixman-mmx.c c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(286) : warning C4799: function 'to_uint64' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(469) : warning C4799: function 'store8888' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(480) : warning C4799: function 'is_equal' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(491) : warning C4799: function 'is_opaque' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(497) : warning C4799: function 'is_zero' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(565) : warning C4799: function 'expand_4xpacked565' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(591) : warning C4799: function 'expand_4x565' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(3760) : warning C4799: function 'fast_composite_scaled_bilinear_mmx_8888_8_8888_pad_OVER' has no EMMS instruction c:\cygwin\home\ranma42\code\fdo\pixman\pixman\pixman-mmx.c(3764) : warning C4799: function 'fast_composite_scaled_bilinear_mmx_8888_8_8888_none_OVER' has no EMMS instruction I was unable to find out why MSVC thinks that fast_composite_scaled_bilinear_mmx_8888_8_8888_{pad,none}_OVER are missing an EMMS instruction, but cover/normal are ok. Andrea _______________________________________________ Pixman mailing list Pixman@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/pixman