On Sun, Dec 15, 2013 at 4:20 PM, Andreas K. Huettel
<[email protected]> wrote:
> Am Montag, 16. Dezember 2013, 00:34:13 schrieb Matt Turner:
>> 3dnow: Use the 3DNow! instruction set
>> 3dnowext: Use the Enhanced 3DNow! instruction set
>> mmx: Use the MMX instruction set
>> mmxext: Use the Extended MMX instruction set (intersection of Enhanced
>> 3DNow! and SSE instruction sets) (3dnowext or sse in cpuinfo)
>> sse: Use the SSE instruction set
>> sse2: Use the SSE2 instruction set
>> sse3: Use the SSE3 instruction set (pni in cpuinfo)
>> ssse3: Use the SSSE3 instruction set
>> sse4_1: Use the SSE 4.1 instruction set
>> avx: Use the AVX instruction set
>> avx2: Use the AVX2 instruction set
>
> What's the point of these flags?
> (or to be more precise, are they really justified whenever they are used?)
>
> Usually the set of cpu instructions should be controlled by your CFLAGS, and
> I've been actively patching packages (that do not do manually coded assembly)
> to make such flags unnecessary.

Often they're for enabling assembly code that uses these instruction
sets. For pixman, a package that I'm very familiar with, they turn on
code using these instruction sets using intrinsics in C. I believe
they are justified.

If the package simply uses the flag to add an -m<isa> flag to CFLAGS,
then we should definitely remove it. If I recall correctly, I have
only seen one instance of this.

Reply via email to