// Code generated by "stringer -type=FeatureID,Vendor"; DO NOT EDIT.

package cpuid

import 

func _() {
	// An "invalid array index" compiler error signifies that the constant values have changed.
	// Re-run the stringer command to generate them again.
	var  [1]struct{}
	_ = [ADX-1]
	_ = [AESNI-2]
	_ = [AMD3DNOW-3]
	_ = [AMD3DNOWEXT-4]
	_ = [AMXBF16-5]
	_ = [AMXFP16-6]
	_ = [AMXINT8-7]
	_ = [AMXFP8-8]
	_ = [AMXTILE-9]
	_ = [AMXTF32-10]
	_ = [AMXCOMPLEX-11]
	_ = [AMXTRANSPOSE-12]
	_ = [APX_F-13]
	_ = [AVX-14]
	_ = [AVX10-15]
	_ = [AVX10_128-16]
	_ = [AVX10_256-17]
	_ = [AVX10_512-18]
	_ = [AVX2-19]
	_ = [AVX512BF16-20]
	_ = [AVX512BITALG-21]
	_ = [AVX512BW-22]
	_ = [AVX512CD-23]
	_ = [AVX512DQ-24]
	_ = [AVX512ER-25]
	_ = [AVX512F-26]
	_ = [AVX512FP16-27]
	_ = [AVX512IFMA-28]
	_ = [AVX512PF-29]
	_ = [AVX512VBMI-30]
	_ = [AVX512VBMI2-31]
	_ = [AVX512VL-32]
	_ = [AVX512VNNI-33]
	_ = [AVX512VP2INTERSECT-34]
	_ = [AVX512VPOPCNTDQ-35]
	_ = [AVXIFMA-36]
	_ = [AVXNECONVERT-37]
	_ = [AVXSLOW-38]
	_ = [AVXVNNI-39]
	_ = [AVXVNNIINT8-40]
	_ = [AVXVNNIINT16-41]
	_ = [BHI_CTRL-42]
	_ = [BMI1-43]
	_ = [BMI2-44]
	_ = [CETIBT-45]
	_ = [CETSS-46]
	_ = [CLDEMOTE-47]
	_ = [CLMUL-48]
	_ = [CLZERO-49]
	_ = [CMOV-50]
	_ = [CMPCCXADD-51]
	_ = [CMPSB_SCADBS_SHORT-52]
	_ = [CMPXCHG8-53]
	_ = [CPBOOST-54]
	_ = [CPPC-55]
	_ = [CX16-56]
	_ = [EFER_LMSLE_UNS-57]
	_ = [ENQCMD-58]
	_ = [ERMS-59]
	_ = [F16C-60]
	_ = [FLUSH_L1D-61]
	_ = [FMA3-62]
	_ = [FMA4-63]
	_ = [FP128-64]
	_ = [FP256-65]
	_ = [FSRM-66]
	_ = [FXSR-67]
	_ = [FXSROPT-68]
	_ = [GFNI-69]
	_ = [HLE-70]
	_ = [HRESET-71]
	_ = [HTT-72]
	_ = [HWA-73]
	_ = [HYBRID_CPU-74]
	_ = [HYPERVISOR-75]
	_ = [IA32_ARCH_CAP-76]
	_ = [IA32_CORE_CAP-77]
	_ = [IBPB-78]
	_ = [IBPB_BRTYPE-79]
	_ = [IBRS-80]
	_ = [IBRS_PREFERRED-81]
	_ = [IBRS_PROVIDES_SMP-82]
	_ = [IBS-83]
	_ = [IBSBRNTRGT-84]
	_ = [IBSFETCHSAM-85]
	_ = [IBSFFV-86]
	_ = [IBSOPCNT-87]
	_ = [IBSOPCNTEXT-88]
	_ = [IBSOPSAM-89]
	_ = [IBSRDWROPCNT-90]
	_ = [IBSRIPINVALIDCHK-91]
	_ = [IBS_FETCH_CTLX-92]
	_ = [IBS_OPDATA4-93]
	_ = [IBS_OPFUSE-94]
	_ = [IBS_PREVENTHOST-95]
	_ = [IBS_ZEN4-96]
	_ = [IDPRED_CTRL-97]
	_ = [INT_WBINVD-98]
	_ = [INVLPGB-99]
	_ = [KEYLOCKER-100]
	_ = [KEYLOCKERW-101]
	_ = [LAHF-102]
	_ = [LAM-103]
	_ = [LBRVIRT-104]
	_ = [LZCNT-105]
	_ = [MCAOVERFLOW-106]
	_ = [MCDT_NO-107]
	_ = [MCOMMIT-108]
	_ = [MD_CLEAR-109]
	_ = [MMX-110]
	_ = [MMXEXT-111]
	_ = [MOVBE-112]
	_ = [MOVDIR64B-113]
	_ = [MOVDIRI-114]
	_ = [MOVSB_ZL-115]
	_ = [MOVU-116]
	_ = [MPX-117]
	_ = [MSRIRC-118]
	_ = [MSRLIST-119]
	_ = [MSR_PAGEFLUSH-120]
	_ = [NRIPS-121]
	_ = [NX-122]
	_ = [OSXSAVE-123]
	_ = [PCONFIG-124]
	_ = [POPCNT-125]
	_ = [PPIN-126]
	_ = [PREFETCHI-127]
	_ = [PSFD-128]
	_ = [RDPRU-129]
	_ = [RDRAND-130]
	_ = [RDSEED-131]
	_ = [RDTSCP-132]
	_ = [RRSBA_CTRL-133]
	_ = [RTM-134]
	_ = [RTM_ALWAYS_ABORT-135]
	_ = [SBPB-136]
	_ = [SERIALIZE-137]
	_ = [SEV-138]
	_ = [SEV_64BIT-139]
	_ = [SEV_ALTERNATIVE-140]
	_ = [SEV_DEBUGSWAP-141]
	_ = [SEV_ES-142]
	_ = [SEV_RESTRICTED-143]
	_ = [SEV_SNP-144]
	_ = [SGX-145]
	_ = [SGXLC-146]
	_ = [SGXPQC-147]
	_ = [SHA-148]
	_ = [SME-149]
	_ = [SME_COHERENT-150]
	_ = [SM3_X86-151]
	_ = [SM4_X86-152]
	_ = [SPEC_CTRL_SSBD-153]
	_ = [SRBDS_CTRL-154]
	_ = [SRSO_MSR_FIX-155]
	_ = [SRSO_NO-156]
	_ = [SRSO_USER_KERNEL_NO-157]
	_ = [SSE-158]
	_ = [SSE2-159]
	_ = [SSE3-160]
	_ = [SSE4-161]
	_ = [SSE42-162]
	_ = [SSE4A-163]
	_ = [SSSE3-164]
	_ = [STIBP-165]
	_ = [STIBP_ALWAYSON-166]
	_ = [STOSB_SHORT-167]
	_ = [SUCCOR-168]
	_ = [SVM-169]
	_ = [SVMDA-170]
	_ = [SVMFBASID-171]
	_ = [SVML-172]
	_ = [SVMNP-173]
	_ = [SVMPF-174]
	_ = [SVMPFT-175]
	_ = [SYSCALL-176]
	_ = [SYSEE-177]
	_ = [TBM-178]
	_ = [TDX_GUEST-179]
	_ = [TLB_FLUSH_NESTED-180]
	_ = [TME-181]
	_ = [TOPEXT-182]
	_ = [TSA_L1_NO-183]
	_ = [TSA_SQ_NO-184]
	_ = [TSA_VERW_CLEAR-185]
	_ = [TSCRATEMSR-186]
	_ = [TSXLDTRK-187]
	_ = [VAES-188]
	_ = [VMCBCLEAN-189]
	_ = [VMPL-190]
	_ = [VMSA_REGPROT-191]
	_ = [VMX-192]
	_ = [VPCLMULQDQ-193]
	_ = [VTE-194]
	_ = [WAITPKG-195]
	_ = [WBNOINVD-196]
	_ = [WRMSRNS-197]
	_ = [X87-198]
	_ = [XGETBV1-199]
	_ = [XOP-200]
	_ = [XSAVE-201]
	_ = [XSAVEC-202]
	_ = [XSAVEOPT-203]
	_ = [XSAVES-204]
	_ = [AESARM-205]
	_ = [ARMCPUID-206]
	_ = [ASIMD-207]
	_ = [ASIMDDP-208]
	_ = [ASIMDHP-209]
	_ = [ASIMDRDM-210]
	_ = [ATOMICS-211]
	_ = [CRC32-212]
	_ = [DCPOP-213]
	_ = [EVTSTRM-214]
	_ = [FCMA-215]
	_ = [FHM-216]
	_ = [FP-217]
	_ = [FPHP-218]
	_ = [GPA-219]
	_ = [JSCVT-220]
	_ = [LRCPC-221]
	_ = [PMULL-222]
	_ = [RNDR-223]
	_ = [TLB-224]
	_ = [TS-225]
	_ = [SHA1-226]
	_ = [SHA2-227]
	_ = [SHA3-228]
	_ = [SHA512-229]
	_ = [SM3-230]
	_ = [SM4-231]
	_ = [SVE-232]
	_ = [PMU_FIXEDCOUNTER_CYCLES-233]
	_ = [PMU_FIXEDCOUNTER_REFCYCLES-234]
	_ = [PMU_FIXEDCOUNTER_INSTRUCTIONS-235]
	_ = [PMU_FIXEDCOUNTER_TOPDOWN_SLOTS-236]
	_ = [lastID-237]
	_ = [firstID-0]
}

const _FeatureID_name = "firstIDADXAESNIAMD3DNOWAMD3DNOWEXTAMXBF16AMXFP16AMXINT8AMXFP8AMXTILEAMXTF32AMXCOMPLEXAMXTRANSPOSEAPX_FAVXAVX10AVX10_128AVX10_256AVX10_512AVX2AVX512BF16AVX512BITALGAVX512BWAVX512CDAVX512DQAVX512ERAVX512FAVX512FP16AVX512IFMAAVX512PFAVX512VBMIAVX512VBMI2AVX512VLAVX512VNNIAVX512VP2INTERSECTAVX512VPOPCNTDQAVXIFMAAVXNECONVERTAVXSLOWAVXVNNIAVXVNNIINT8AVXVNNIINT16BHI_CTRLBMI1BMI2CETIBTCETSSCLDEMOTECLMULCLZEROCMOVCMPCCXADDCMPSB_SCADBS_SHORTCMPXCHG8CPBOOSTCPPCCX16EFER_LMSLE_UNSENQCMDERMSF16CFLUSH_L1DFMA3FMA4FP128FP256FSRMFXSRFXSROPTGFNIHLEHRESETHTTHWAHYBRID_CPUHYPERVISORIA32_ARCH_CAPIA32_CORE_CAPIBPBIBPB_BRTYPEIBRSIBRS_PREFERREDIBRS_PROVIDES_SMPIBSIBSBRNTRGTIBSFETCHSAMIBSFFVIBSOPCNTIBSOPCNTEXTIBSOPSAMIBSRDWROPCNTIBSRIPINVALIDCHKIBS_FETCH_CTLXIBS_OPDATA4IBS_OPFUSEIBS_PREVENTHOSTIBS_ZEN4IDPRED_CTRLINT_WBINVDINVLPGBKEYLOCKERKEYLOCKERWLAHFLAMLBRVIRTLZCNTMCAOVERFLOWMCDT_NOMCOMMITMD_CLEARMMXMMXEXTMOVBEMOVDIR64BMOVDIRIMOVSB_ZLMOVUMPXMSRIRCMSRLISTMSR_PAGEFLUSHNRIPSNXOSXSAVEPCONFIGPOPCNTPPINPREFETCHIPSFDRDPRURDRANDRDSEEDRDTSCPRRSBA_CTRLRTMRTM_ALWAYS_ABORTSBPBSERIALIZESEVSEV_64BITSEV_ALTERNATIVESEV_DEBUGSWAPSEV_ESSEV_RESTRICTEDSEV_SNPSGXSGXLCSGXPQCSHASMESME_COHERENTSM3_X86SM4_X86SPEC_CTRL_SSBDSRBDS_CTRLSRSO_MSR_FIXSRSO_NOSRSO_USER_KERNEL_NOSSESSE2SSE3SSE4SSE42SSE4ASSSE3STIBPSTIBP_ALWAYSONSTOSB_SHORTSUCCORSVMSVMDASVMFBASIDSVMLSVMNPSVMPFSVMPFTSYSCALLSYSEETBMTDX_GUESTTLB_FLUSH_NESTEDTMETOPEXTTSA_L1_NOTSA_SQ_NOTSA_VERW_CLEARTSCRATEMSRTSXLDTRKVAESVMCBCLEANVMPLVMSA_REGPROTVMXVPCLMULQDQVTEWAITPKGWBNOINVDWRMSRNSX87XGETBV1XOPXSAVEXSAVECXSAVEOPTXSAVESAESARMARMCPUIDASIMDASIMDDPASIMDHPASIMDRDMATOMICSCRC32DCPOPEVTSTRMFCMAFHMFPFPHPGPAJSCVTLRCPCPMULLRNDRTLBTSSHA1SHA2SHA3SHA512SM3SM4SVEPMU_FIXEDCOUNTER_CYCLESPMU_FIXEDCOUNTER_REFCYCLESPMU_FIXEDCOUNTER_INSTRUCTIONSPMU_FIXEDCOUNTER_TOPDOWN_SLOTSlastID"

var _FeatureID_index = [...]uint16{0, 7, 10, 15, 23, 34, 41, 48, 55, 61, 68, 75, 85, 97, 102, 105, 110, 119, 128, 137, 141, 151, 163, 171, 179, 187, 195, 202, 212, 222, 230, 240, 251, 259, 269, 287, 302, 309, 321, 328, 335, 346, 358, 366, 370, 374, 380, 385, 393, 398, 404, 408, 417, 435, 443, 450, 454, 458, 472, 478, 482, 486, 495, 499, 503, 508, 513, 517, 521, 528, 532, 535, 541, 544, 547, 557, 567, 580, 593, 597, 608, 612, 626, 643, 646, 656, 667, 673, 681, 692, 700, 712, 728, 742, 753, 763, 778, 786, 797, 807, 814, 823, 833, 837, 840, 847, 852, 863, 870, 877, 885, 888, 894, 899, 908, 915, 923, 927, 930, 936, 943, 956, 961, 963, 970, 977, 983, 987, 996, 1000, 1005, 1011, 1017, 1023, 1033, 1036, 1052, 1056, 1065, 1068, 1077, 1092, 1105, 1111, 1125, 1132, 1135, 1140, 1146, 1149, 1152, 1164, 1171, 1178, 1192, 1202, 1214, 1221, 1240, 1243, 1247, 1251, 1255, 1260, 1265, 1270, 1275, 1289, 1300, 1306, 1309, 1314, 1323, 1327, 1332, 1337, 1343, 1350, 1355, 1358, 1367, 1383, 1386, 1392, 1401, 1410, 1424, 1434, 1442, 1446, 1455, 1459, 1471, 1474, 1484, 1487, 1494, 1502, 1509, 1512, 1519, 1522, 1527, 1533, 1541, 1547, 1553, 1561, 1566, 1573, 1580, 1588, 1595, 1600, 1605, 1612, 1616, 1619, 1621, 1625, 1628, 1633, 1638, 1643, 1647, 1650, 1652, 1656, 1660, 1664, 1670, 1673, 1676, 1679, 1702, 1728, 1757, 1787, 1793}

func ( FeatureID) () string {
	if  < 0 ||  >= FeatureID(len(_FeatureID_index)-1) {
		return "FeatureID(" + strconv.FormatInt(int64(), 10) + ")"
	}
	return _FeatureID_name[_FeatureID_index[]:_FeatureID_index[+1]]
}
func _() {
	// An "invalid array index" compiler error signifies that the constant values have changed.
	// Re-run the stringer command to generate them again.
	var  [1]struct{}
	_ = [VendorUnknown-0]
	_ = [Intel-1]
	_ = [AMD-2]
	_ = [VIA-3]
	_ = [Transmeta-4]
	_ = [NSC-5]
	_ = [KVM-6]
	_ = [MSVM-7]
	_ = [VMware-8]
	_ = [XenHVM-9]
	_ = [Bhyve-10]
	_ = [Hygon-11]
	_ = [SiS-12]
	_ = [RDC-13]
	_ = [Ampere-14]
	_ = [ARM-15]
	_ = [Broadcom-16]
	_ = [Cavium-17]
	_ = [DEC-18]
	_ = [Fujitsu-19]
	_ = [Infineon-20]
	_ = [Motorola-21]
	_ = [NVIDIA-22]
	_ = [AMCC-23]
	_ = [Qualcomm-24]
	_ = [Marvell-25]
	_ = [QEMU-26]
	_ = [QNX-27]
	_ = [ACRN-28]
	_ = [SRE-29]
	_ = [Apple-30]
	_ = [lastVendor-31]
}

const _Vendor_name = "VendorUnknownIntelAMDVIATransmetaNSCKVMMSVMVMwareXenHVMBhyveHygonSiSRDCAmpereARMBroadcomCaviumDECFujitsuInfineonMotorolaNVIDIAAMCCQualcommMarvellQEMUQNXACRNSREApplelastVendor"

var _Vendor_index = [...]uint8{0, 13, 18, 21, 24, 33, 36, 39, 43, 49, 55, 60, 65, 68, 71, 77, 80, 88, 94, 97, 104, 112, 120, 126, 130, 138, 145, 149, 152, 156, 159, 164, 174}

func ( Vendor) () string {
	if  < 0 ||  >= Vendor(len(_Vendor_index)-1) {
		return "Vendor(" + strconv.FormatInt(int64(), 10) + ")"
	}
	return _Vendor_name[_Vendor_index[]:_Vendor_index[+1]]
}