Difference between revisions of "CPU FLAGS"

(CPU_FLAGS_X86)
(CPU_FLAGS_X86)
Line 16: Line 16:
 
<tr><td>{{c|ssse3}}</td><td>2006 (Core 2 Woodcrest)</td><td>Intel</td><td></td><td>AMD Bobcat/Bulldozer</td><td>Supplemental Streaming SIMD Extensions 3 (SSSE3)</td><td>[[Wikipedia:SSSE3|Wikipedia]]</td></tr>
 
<tr><td>{{c|ssse3}}</td><td>2006 (Core 2 Woodcrest)</td><td>Intel</td><td></td><td>AMD Bobcat/Bulldozer</td><td>Supplemental Streaming SIMD Extensions 3 (SSSE3)</td><td>[[Wikipedia:SSSE3|Wikipedia]]</td></tr>
 
<tr><td>{{c|sse4_1}}</td><td>2007 (Core Penryn)</td><td>Intel</td><td></td><td>AMD Bulldozer</td><td>Supplemental Streaming SIMD Extensions 4.1</td><td>[[Wikipedia:SSSE4#SSE4.1|Wikipedia]]</td></tr>
 
<tr><td>{{c|sse4_1}}</td><td>2007 (Core Penryn)</td><td>Intel</td><td></td><td>AMD Bulldozer</td><td>Supplemental Streaming SIMD Extensions 4.1</td><td>[[Wikipedia:SSSE4#SSE4.1|Wikipedia]]</td></tr>
<tr class="bg-warning"><td>{{c|sse4a}}</td><td>late 2007 (Barcelona/Phenom)</td><td>AMD</td><td></td><td>N/A</td><td>Supplemental Streaming SIMD Extensions 4a</td><td>[[Wikipedia:SSSE4#SSE4a|Wikipedia]]</td></tr>
+
<tr class="bg-warning"><td>{{c|sse4a}}</td><td>late 2007 (Barcelona/Phenom)</td><td>AMD</td><td></td><td></td><td>Supplemental Streaming SIMD Extensions 4a</td><td>[[Wikipedia:SSSE4#SSE4a|Wikipedia]]</td></tr>
 
<tr><td>{{c|sse4_2}}</td><td>late 2008 (Nehalem/Core i7)</td><td>Intel</td><td></td><td>AMD Bulldozer</td><td>Supplemental Streaming SIMD Extensions 4.2</td><td>[[Wikipedia:SSSE4#SSE4.2|Wikipedia]]</td></tr>
 
<tr><td>{{c|sse4_2}}</td><td>late 2008 (Nehalem/Core i7)</td><td>Intel</td><td></td><td>AMD Bulldozer</td><td>Supplemental Streaming SIMD Extensions 4.2</td><td>[[Wikipedia:SSSE4#SSE4.2|Wikipedia]]</td></tr>
 
<tr><td>{{c|popcnt}}</td><td>2007</td><td>AMD</td><td></td><td>Intel Nehalem</td><td>POPCNT</td><td>[[Wikipedia:SSE4#POPCNT_and_LZCNT|Wikipedia]]</td></tr>
 
<tr><td>{{c|popcnt}}</td><td>2007</td><td>AMD</td><td></td><td>Intel Nehalem</td><td>POPCNT</td><td>[[Wikipedia:SSE4#POPCNT_and_LZCNT|Wikipedia]]</td></tr>
Line 23: Line 23:
 
<tr class="bg-warning"><td>{{c|xop}}</td><td>2011 (Bulldozer)</td><td>AMD</td><td></td><td></td><td>XOP Instruction set</td><td>[[Wikipedia:XOP instruction set|Wikipedia]]</td></tr>
 
<tr class="bg-warning"><td>{{c|xop}}</td><td>2011 (Bulldozer)</td><td>AMD</td><td></td><td></td><td>XOP Instruction set</td><td>[[Wikipedia:XOP instruction set|Wikipedia]]</td></tr>
 
<tr><td>{{c|avx}}</td><td>2011 (Sandy Bridge)</td><td>Intel</td><td></td><td>AMD Bulldozer</td><td>Advanced Vector Extensions</td><td>[[Wikipedia:Advanced Vector Extensions|Wikipedia]]</td></tr>
 
<tr><td>{{c|avx}}</td><td>2011 (Sandy Bridge)</td><td>Intel</td><td></td><td>AMD Bulldozer</td><td>Advanced Vector Extensions</td><td>[[Wikipedia:Advanced Vector Extensions|Wikipedia]]</td></tr>
<tr class="bg-warning"><td>{{c|fma4}}</td><td>2011 (Bulldozer)</td><td>AMD</td><td></td><td>N/A</td><td>4-operand fused multiply-add (a × b + c)</td><td>[[Wikipedia:FMA instruction set|Wikipedia]]</td></tr>
+
<tr class="bg-warning"><td>{{c|fma4}}</td><td>2011 (Bulldozer)</td><td>AMD</td><td></td><td></td><td>4-operand fused multiply-add (a × b + c)</td><td>[[Wikipedia:FMA instruction set|Wikipedia]]</td></tr>
 
<tr><td>{{c|fma3}}</td><td>2012 (Piledriver)</td><td>AMD</td><td></td><td>Intel Haswell</td><td>3-operand fused multiply-add (a × b + c)</td><td>[[Wikipedia:FMA instruction set|Wikipedia]]</td></tr>
 
<tr><td>{{c|fma3}}</td><td>2012 (Piledriver)</td><td>AMD</td><td></td><td>Intel Haswell</td><td>3-operand fused multiply-add (a × b + c)</td><td>[[Wikipedia:FMA instruction set|Wikipedia]]</td></tr>
 
{{TableEnd}}
 
{{TableEnd}}

Revision as of 01:22, March 28, 2015

This page lists processor instruction sets that can be enabled on Funtoo Linux systems using the CPU_FLAGS_* variables.

CPU_FLAGS_X86

Note

Highlighted rows indicate instruction sets that were not fully adopted by the other vendor, such as Intel instruction sets not adopted by AMD, or vice-versa.

FlagIntroducedByPart ofAdopted inNameLinks
mmx1997 (Pentium MMX)IntelAMD K6MMXWikipedia
3dnow1998 (AMD K6-2)AMD3DNow!Wikipedia
mmxext1999IntelsseIntel Pentium III (as part of SSE) and AthlonAMD MMX ExtensionsWikipedia
3dnowext1999 (AMD Athlon)AMD3DNow! ExtensionsWikipedia
sse1999 (Pentium III)AMDAthlon XPStreaming SIMD Extensions (SSE)Wikipedia
sse22001 (Pentium 4)IntelAMD Athlon 64/OpteronStreaming SIMD Extensions 2 (SSE2)Wikipedia
sse32004 (Pentium 4 Prescott)IntelAMD Athlon 64 (some steppings)Streaming SIMD Extensions 3 (SSE3/PNI) Wikipedia
ssse32006 (Core 2 Woodcrest)IntelAMD Bobcat/BulldozerSupplemental Streaming SIMD Extensions 3 (SSSE3)Wikipedia
sse4_12007 (Core Penryn)IntelAMD BulldozerSupplemental Streaming SIMD Extensions 4.1Wikipedia
sse4alate 2007 (Barcelona/Phenom)AMDSupplemental Streaming SIMD Extensions 4aWikipedia
sse4_2late 2008 (Nehalem/Core i7)IntelAMD BulldozerSupplemental Streaming SIMD Extensions 4.2Wikipedia
popcnt2007AMDIntel NehalemPOPCNTWikipedia
lzcnt2007AMDIntel HaswellLZCNT Wikipedia
aes2008IntelAMD BulldozerAES instruction setWikipedia
xop2011 (Bulldozer)AMDXOP Instruction setWikipedia
avx2011 (Sandy Bridge)IntelAMD BulldozerAdvanced Vector ExtensionsWikipedia
fma42011 (Bulldozer)AMD4-operand fused multiply-add (a × b + c)Wikipedia
fma32012 (Piledriver)AMDIntel Haswell3-operand fused multiply-add (a × b + c)Wikipedia