@@ -191,12 +191,32 @@ Feature     | Implicitly Enables | Description
191191` aes `        | ` sse2 `    | [ AES]  --- Advanced Encryption Standard
192192` avx `        | ` sse4.2 `  | [ AVX]  --- Advanced Vector Extensions
193193` avx2 `       | ` avx `     | [ AVX2]  --- Advanced Vector Extensions 2
194+ ` avx512bf16 `         | ` avx512bw `                 | [ AVX512-BF16]  --- Advanced Vector Extensions 512-bit - Bfloat16 Extensions
195+ ` avx512bitalg `       | ` avx512bw `                 | [ AVX512-BITALG]  --- Advanced Vector Extensions 512-bit - Bit Algorithms
196+ ` avx512bw `           | ` avx512f `                  | [ AVX512-BW]  --- Advanced Vector Extensions 512-bit - Byte and Word Instructions
197+ ` avx512cd `           | ` avx512f `                  | [ AVX512-CD]  --- Advanced Vector Extensions 512-bit - Conflict Detection Instructions
198+ ` avx512dq `           | ` avx512f `                  | [ AVX512-DQ]  --- Advanced Vector Extensions 512-bit - Doubleword and Quadword Instructions
199+ ` avx512f `            | ` avx2 ` , ` fma ` , ` f16c `      | [ AVX512-F]  --- Advanced Vector Extensions 512-bit - Foundation
200+ ` avx512fp16 `         | ` avx512bw ` , ` avx512dq ` , ` avx512vl ` | [ AVX512-FP16]  --- Advanced Vector Extensions 512-bit - Float16 Extensions
201+ ` avx512ifma `         | ` avx512f `                  | [ AVX512-IFMA]  --- Advanced Vector Extensions 512-bit - Integer Fused Multiply Add
202+ ` avx512vbmi `         | ` avx512bw `                 | [ AVX512-VBMI]  --- Advanced Vector Extensions 512-bit - Vector Byte Manipulation Instructions
203+ ` avx512vbmi2 `        | ` avx512bw `                 | [ AVX512-VBMI2]  --- Advanced Vector Extensions 512-bit - Vector Byte Manipulation Instructions 2
204+ ` avx512vl `           | ` avx512f `                  | [ AVX512-VL]  --- Advanced Vector Extensions 512-bit - Vector Length Extensions
205+ ` avx512vnni `         | ` avx512f `                  | [ AVX512-VNNI]  --- Advanced Vector Extensions 512-bit - Vector Neural Network Instructions
206+ ` avx512vp2intersect ` | ` avx512f `                  | [ AVX512-VP2INTERSECT]  --- Advanced Vector Extensions 512-bit - Vector Pair Intersection to a Pair of Mask Registers
207+ ` avx512vpopcntdq `    | ` avx512f `                  | [ AVX512-VPOPCNTDQ]  --- Advanced Vector Extensions 512-bit - Vector Population Count Instruction
208+ ` avxifma `            | ` avx2 `                     | [ AVX-IFMA]  --- Advanced Vector Extensions - Integer Fused Multiply Add
209+ ` avxneconvert `       | ` avx2 `                     | [ AVX-NE-CONVERT]  --- Advanced Vector Extensions - No-Exception Floating-Point conversion Instructions
210+ ` avxvnni `            | ` avx2 `                     | [ AVX-VNNI]  --- Advanced Vector Extensions - Vector Neural Network Instructions
211+ ` avxvnniint16 `       | ` avx2 `                     | [ AVX-VNNI-INT16]  --- Advanced Vector Extensions - Vector Neural Network Instructions with 16-bit Integers
212+ ` avxvnniint8 `        | ` avx2 `                     | [ AVX-VNNI-INT8]  --- Advanced Vector Extensions - Vector Neural Network Instructions with 8-bit Integers
194213` bmi1 `       |          | [ BMI1]  --- Bit Manipulation Instruction Sets
195214` bmi2 `       |          | [ BMI2]  --- Bit Manipulation Instruction Sets 2
196215` cmpxchg16b ` |          | [ ` cmpxchg16b ` ]  --- Compares and exchange 16 bytes (128 bits) of data atomically
197216` f16c `       | ` avx `     | [ F16C]  --- 16-bit floating point conversion instructions
198217` fma `        | ` avx `     | [ FMA3]  --- Three-operand fused multiply-add
199218` fxsr `       |          | [ ` fxsave ` ]  and [ ` fxrstor ` ]  --- Save and restore x87 FPU, MMX Technology, and SSE State
219+ ` gfni `       | ` sse2 `    | [ GFNI]  --- Galois Field New Instructions
200220` lzcnt `      |          | [ ` lzcnt ` ]  --- Leading zeros count
201221` movbe `      |          | [ ` movbe ` ]  --- Move data after swapping bytes
202222` pclmulqdq `  | ` sse2 `    | [ ` pclmulqdq ` ]  --- Packed carry-less multiplication quadword
@@ -210,6 +230,8 @@ Feature     | Implicitly Enables | Description
210230` sse4.1 `     | ` ssse3 `   | [ SSE4.1]  --- Streaming SIMD Extensions 4.1
211231` sse4.2 `     | ` sse4.1 `  | [ SSE4.2]  --- Streaming SIMD Extensions 4.2
212232` ssse3 `      | ` sse3 `    | [ SSSE3]  --- Supplemental Streaming SIMD Extensions 3
233+ ` vaes `       | ` avx2 ` , ` aes `      | [ VAES]  --- Vector AES Instructions
234+ ` vpclmulqdq ` | ` avx ` , ` pclmulqdq ` | [ VPCLMULQDQ]  --- Vector Carry-less multiplication of Quadwords
213235` xsave `      |          | [ ` xsave ` ]  --- Save processor extended states
214236` xsavec `     |          | [ ` xsavec ` ]  --- Save processor extended states with compaction
215237` xsaveopt `   |          | [ ` xsaveopt ` ]  --- Save processor extended states optimized
@@ -221,13 +243,33 @@ Feature     | Implicitly Enables | Description
221243[ AES ] : https://en.wikipedia.org/wiki/AES_instruction_set 
222244[ AVX ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions 
223245[ AVX2 ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX2 
246+ [ AVX512-BF16 ] : https://en.wikipedia.org/wiki/AVX-512#BF16 
247+ [ AVX512-BITALG ] : https://en.wikipedia.org/wiki/AVX-512#VPOPCNTDQ_and_BITALG 
248+ [ AVX512-BW ] : https://en.wikipedia.org/wiki/AVX-512#BW,_DQ_and_VBMI 
249+ [ AVX512-CD ] : https://en.wikipedia.org/wiki/AVX-512#Conflict_detection 
250+ [ AVX512-DQ ] : https://en.wikipedia.org/wiki/AVX-512#BW,_DQ_and_VBMI 
251+ [ AVX512-F ] : https://en.wikipedia.org/wiki/AVX-512 
252+ [ AVX512-FP16 ] : https://en.wikipedia.org/wiki/AVX-512#FP16 
253+ [ AVX512-IFMA ] : https://en.wikipedia.org/wiki/AVX-512#IFMA 
254+ [ AVX512-VBMI ] : https://en.wikipedia.org/wiki/AVX-512#BW,_DQ_and_VBMI 
255+ [ AVX512-VBMI2 ] : https://en.wikipedia.org/wiki/AVX-512#VBMI2 
256+ [ AVX512-VL ] : https://en.wikipedia.org/wiki/AVX-512 
257+ [ AVX512-VNNI ] : https://en.wikipedia.org/wiki/AVX-512#VNNI 
258+ [ AVX512-VP2INTERSECT ] : https://en.wikipedia.org/wiki/AVX-512#VP2INTERSECT 
259+ [ AVX512-VPOPCNTDQ ] :https://en.wikipedia.org/wiki/AVX-512#VPOPCNTDQ_and_BITALG 
260+ [ AVX-IFMA ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-VNNI,_AVX-IFMA 
261+ [ AVX-NE-CONVERT ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-VNNI,_AVX-IFMA 
262+ [ AVX-VNNI ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-VNNI,_AVX-IFMA 
263+ [ AVX-VNNI-INT16 ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-VNNI,_AVX-IFMA 
264+ [ AVX-VNNI-INT8 ] : https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#AVX-VNNI,_AVX-IFMA 
224265[ BMI1 ] : https://en.wikipedia.org/wiki/Bit_Manipulation_Instruction_Sets 
225266[ BMI2 ] : https://en.wikipedia.org/wiki/Bit_Manipulation_Instruction_Sets#BMI2 
226267[ `cmpxchg16b` ] : https://www.felixcloutier.com/x86/cmpxchg8b:cmpxchg16b 
227268[ F16C ] : https://en.wikipedia.org/wiki/F16C 
228269[ FMA3 ] : https://en.wikipedia.org/wiki/FMA_instruction_set 
229270[ `fxsave` ] : https://www.felixcloutier.com/x86/fxsave 
230271[ `fxrstor` ] : https://www.felixcloutier.com/x86/fxrstor 
272+ [ GFNI ] : https://en.wikipedia.org/wiki/AVX-512#GFNI 
231273[ `lzcnt` ] : https://www.felixcloutier.com/x86/lzcnt 
232274[ `movbe` ] : https://www.felixcloutier.com/x86/movbe 
233275[ `pclmulqdq` ] : https://www.felixcloutier.com/x86/pclmulqdq 
@@ -241,6 +283,8 @@ Feature     | Implicitly Enables | Description
241283[ SSE4.1 ] : https://en.wikipedia.org/wiki/SSE4#SSE4.1 
242284[ SSE4.2 ] : https://en.wikipedia.org/wiki/SSE4#SSE4.2 
243285[ SSSE3 ] : https://en.wikipedia.org/wiki/SSSE3 
286+ [ VAES ] : https://en.wikipedia.org/wiki/AVX-512#VAES 
287+ [ VPCLMULQDQ ] : https://en.wikipedia.org/wiki/AVX-512#VPCLMULQDQ 
244288[ `xsave` ] : https://www.felixcloutier.com/x86/xsave 
245289[ `xsavec` ] : https://www.felixcloutier.com/x86/xsavec 
246290[ `xsaveopt` ] : https://www.felixcloutier.com/x86/xsaveopt 
0 commit comments