[FFmpeg-devel] Does i686 have MMX?

Jason Garrett-Glaser darkshikari
Fri Aug 27 17:50:44 CEST 2010

On Fri, Aug 27, 2010 at 4:26 AM, Luca Barbato <lu_zero at gentoo.org> wrote:
> On 08/26/2010 08:29 PM, Jason Garrett-Glaser wrote:
>> The issue is simple:
>> 1. ?People use --cpu on x86 to mean "it should run on at least this
>> CPU, and contain optimizations for all better CPUs". ?--cpu=i686 is
>> widely used in order to enable CMOV on normal builds. ?Even if this is
>> wrong, this is what people do. ?We cannot silently go and break what
>> everyone currently does, it's just not reasonable.
> Your target "Everyone" might be using the release branch so they will
> read the changelog item once a 0.7 will appear...
>> 2. ?This patch SILENTLY DISABLES MMX on almost all ffmpeg builds in
>> the world. ?This is bad. ?I don't care if it's right, it's bad.
> I'd rather have you substantiate this claim.
>> 3. ?MMX should NEVER EVER be disabled unless --disable-mmx is passed.
>> End of story.
> arm and powerpc might have something to say, but I'm digressing...
>> Possible solutions:
>> 1. ?Revert the emms change.
> Why it had been made?
>> 2. ?By policy, make ffmpeg require MMX to run by default. ?Add a
>> runtime check, just in case. ?Any --cpu that doesn't support MMX will
>> error out unless the user specifies --disable-mmx too.
> That looks a worse timebomb.
>> Benefits: --cpu still makes logical sense, keeps the emms change, and
>> we can enable CMOV by default too (i.e. if --cpu isn't set).
>> Possible problems: this still breaks everyone's build scripts, but at
>> least it'll break them loudly, so people will fix them.
> "Everyone" got it's build script broken by other stuff already many
> times and hardly complained.
>> 3. ?By policy, make ffmpeg require MMX to run by default. ?Add a
>> runtime check, just in case, telling the user to recompile without MMX
>> if they're on an unsupported CPU. ?Don't check the user's --cpu option
>> when it comes to validating this. ?This is what x264 does.
> I'm not sure why MMX must be special...

You missed the earlier discussion where we agreed that it was.

>> I will revert any patch that silently disables mmx on any CPU.
> stay clear of arm, powerpc and whatever, YOU BARBARIAN. =P

Obviously, I only mean x86 ;)

Dark Shikari

More information about the ffmpeg-devel mailing list