[vlc-devel] [PATCH] yadif : Add SSSE3 and SSE2 support. porting from FFmpeg.
remi at remlab.net
Fri Dec 9 18:41:15 CET 2011
Le mardi 6 décembre 2011 16:50:48 Naohiro KORIYAMA, vous avez écrit :
> I noticed the issue recently when I stated building my own win32 builds
> for chasing the problem around UPnP.
> Both OSX's clang and GCC don't complain mm and xmm are in the clobber
That's because you have SSE enabled. This won't work were SSE is detected at
> GCC never allows the registers of unsupported instructions in the clobber
> list. GCC with -mmmx (or -march=pentium-mmx or above), "unknown register
> mm" errors disappear.
> GCC with -msse (or -march=pentium3 or above), "unknown register xmm"
> errors disappear.
> GCC with -mtune doesn't help.
Yeah sure. This was already discussed a few weeks ago here.
That's why we have VLC_MMX and VLC_SSE nowadays.
> Here is the short test log on Mac OS X, native GCC vs cross mingw32 GCC.
> I found a discussion about the clobber.
> As a result of the discussion,
> - Check whether xmm clobbers are supported in configure like:
> int main()
> asm volatile( "" ::: "xmm0");
> - Define a macro that put xmm registers to the clobber list only if
> xmm clobbers are supported.
That's a brittle hack. Please don't do this.
More information about the vlc-devel