[Pixman] Latest GIT source for 'pixman-sse2.c'
Siarhei Siamashka
siarhei.siamashka at gmail.com
Sat Oct 5 11:00:15 PDT 2013
On Sat, 5 Oct 2013 19:55:16 +0200
Krzysztof Kosiński <tweenk.pl at gmail.com> wrote:
> 2013/10/5 John Emmas <johne53 at tiscali.co.uk>:
> > From experience, I STRONGLY SUSPECT that the error is caused by these lines
> > at the top of macro #2:-
> >
> > #define BILINEAR_INTERPOLATE_ONE_PIXEL_HELPER(pix, phase) \
> > do { \
> > __m128i xmm_wh, xmm_a, xmm_b; \
> > (void)xmm_ux4; /* suppress warning: unused variable 'xmm_ux4' */
> > \
> >
> > // Rest of macro
> > } while (0)
> >
> > In effect, all those variables are getting declared half way down the
> > calling function (in this case,
> > 'scaled_bilinear_scanline_sse2_8888_8888_SRC'). Standard 'C' does not allow
> > you to declare variables half way down a function and unfortunately, MSVC is
> > petty strict about it. FWIW macro #1 suffers from the same problem :-(
>
> The do / while block establishes a new scope, and in ANSI C you can
> declare variables at the start of every scope, not only at the start
> of a function, so I don't think this is the actual problem.
>
> It would be useful if you could pinpoint the commit which causes the
> compilation to break.
Andrea Canciani has already investigated the problem and submitted the
fixes here:
http://lists.freedesktop.org/archives/pixman/2013-September/002954.html
--
Best regards,
Siarhei Siamashka
More information about the Pixman
mailing list