Amd64Sourcecpuid_leaf code leaf is the CPUID instruction with input code(eax) and leaf(ecx), return is the tuple (eax * ebx * ecx * edx)
cpuid code is cpuid_leaf code 0
bytes_of_register register is the 4 byte representation of register in bytes
decompose_apic apicid is the smt * core * package id of apicid. Can throw invalid_argument if cpu_vendor is unknown or apicid is invalid