libicuid is a library that provides a C interface for the CPUID opcode written by Kurt Cancemi and is licensed under the ISC License.
Brief intro to some of the available functions
To check for the CPUID instruction, use cpuid_is_supported
To run the CPUID instruction, use cpuid
To get the raw CPUID info needed for CPU identification, use cpuid_get_raw_data
To decode that raw info use icuid_identify