Documentation
¶
Overview ¶
Package cpufeat classifies disassembled instructions into the CPU-feature families they require, so a binary can be summarised as "needs AVX2, SSE4.2, FMA" → an implied baseline (x86-64-v3). The classification is by mnemonic (and, where needed, operand shape) from the GNU-syntax assembly text the disassembler already produces, so no second decode is needed.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var DisplayOrder = []string{
"SSE3", "SSSE3", "SSE4.1", "SSE4.2", "POPCNT", "ABM", "LZCNT",
"AVX", "AVX2", "FMA", "F16C", "BMI1", "BMI2", "MOVBE", "ADX", "AVX-512",
"AES", "PCLMUL", "SHA", "RDRAND", "RDSEED",
"NEON/ASIMD", "LSE atomics", "CRC32", "Pointer auth", "DotProd", "BF16", "SVE",
"AES (crypto)", "SHA (crypto)", "PMULL (crypto)",
}
DisplayOrder lists features in a stable, roughly-increasing-requirement order for reporting.
Functions ¶
func ARM64 ¶
ARM64 reports the (mostly optional) ARMv8 extension an instruction requires, or "" for base instructions. NEON/ASIMD is mandatory in ARMv8-A but is reported so SIMD use is visible.
func BaselineX86 ¶
BaselineX86 names the minimum x86-64 microarchitecture level implied by the set of features used (the highest level any used feature belongs to).
Types ¶
This section is empty.