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

package cpuid

import "strconv"

func _() {
	// An "invalid array index" compiler error signifies that the constant values have changed.
	// Re-run the stringer command to generate them again.
	var x [1]struct{}
	_ = x[ADX-1]
	_ = x[AESNI-2]
	_ = x[AMD3DNOW-3]
	_ = x[AMD3DNOWEXT-4]
	_ = x[AMXBF16-5]
	_ = x[AMXINT8-6]
	_ = x[AMXTILE-7]
	_ = x[AVX-8]
	_ = x[AVX2-9]
	_ = x[AVX512BF16-10]
	_ = x[AVX512BITALG-11]
	_ = x[AVX512BW-12]
	_ = x[AVX512CD-13]
	_ = x[AVX512DQ-14]
	_ = x[AVX512ER-15]
	_ = x[AVX512F-16]
	_ = x[AVX512FP16-17]
	_ = x[AVX512IFMA-18]
	_ = x[AVX512PF-19]
	_ = x[AVX512VBMI-20]
	_ = x[AVX512VBMI2-21]
	_ = x[AVX512VL-22]
	_ = x[AVX512VNNI-23]
	_ = x[AVX512VP2INTERSECT-24]
	_ = x[AVX512VPOPCNTDQ-25]
	_ = x[AVXSLOW-26]
	_ = x[BMI1-27]
	_ = x[BMI2-28]
	_ = x[CLDEMOTE-29]
	_ = x[CLMUL-30]
	_ = x[CLZERO-31]
	_ = x[CMOV-32]
	_ = x[CPBOOST-33]
	_ = x[CX16-34]
	_ = x[ENQCMD-35]
	_ = x[ERMS-36]
	_ = x[F16C-37]
	_ = x[FMA3-38]
	_ = x[FMA4-39]
	_ = x[GFNI-40]
	_ = x[HLE-41]
	_ = x[HTT-42]
	_ = x[HWA-43]
	_ = x[HYPERVISOR-44]
	_ = x[IBPB-45]
	_ = x[IBS-46]
	_ = x[IBSBRNTRGT-47]
	_ = x[IBSFETCHSAM-48]
	_ = x[IBSFFV-49]
	_ = x[IBSOPCNT-50]
	_ = x[IBSOPCNTEXT-51]
	_ = x[IBSOPSAM-52]
	_ = x[IBSRDWROPCNT-53]
	_ = x[IBSRIPINVALIDCHK-54]
	_ = x[INT_WBINVD-55]
	_ = x[INVLPGB-56]
	_ = x[LZCNT-57]
	_ = x[MCAOVERFLOW-58]
	_ = x[MCOMMIT-59]
	_ = x[MMX-60]
	_ = x[MMXEXT-61]
	_ = x[MOVDIR64B-62]
	_ = x[MOVDIRI-63]
	_ = x[MPX-64]
	_ = x[MSRIRC-65]
	_ = x[NX-66]
	_ = x[POPCNT-67]
	_ = x[RDPRU-68]
	_ = x[RDRAND-69]
	_ = x[RDSEED-70]
	_ = x[RDTSCP-71]
	_ = x[RTM-72]
	_ = x[RTM_ALWAYS_ABORT-73]
	_ = x[SERIALIZE-74]
	_ = x[SGX-75]
	_ = x[SGXLC-76]
	_ = x[SHA-77]
	_ = x[SSE-78]
	_ = x[SSE2-79]
	_ = x[SSE3-80]
	_ = x[SSE4-81]
	_ = x[SSE42-82]
	_ = x[SSE4A-83]
	_ = x[SSSE3-84]
	_ = x[STIBP-85]
	_ = x[SUCCOR-86]
	_ = x[TBM-87]
	_ = x[TSXLDTRK-88]
	_ = x[VAES-89]
	_ = x[VMX-90]
	_ = x[VPCLMULQDQ-91]
	_ = x[WAITPKG-92]
	_ = x[WBNOINVD-93]
	_ = x[XOP-94]
	_ = x[AESARM-95]
	_ = x[ARMCPUID-96]
	_ = x[ASIMD-97]
	_ = x[ASIMDDP-98]
	_ = x[ASIMDHP-99]
	_ = x[ASIMDRDM-100]
	_ = x[ATOMICS-101]
	_ = x[CRC32-102]
	_ = x[DCPOP-103]
	_ = x[EVTSTRM-104]
	_ = x[FCMA-105]
	_ = x[FP-106]
	_ = x[FPHP-107]
	_ = x[GPA-108]
	_ = x[JSCVT-109]
	_ = x[LRCPC-110]
	_ = x[PMULL-111]
	_ = x[SHA1-112]
	_ = x[SHA2-113]
	_ = x[SHA3-114]
	_ = x[SHA512-115]
	_ = x[SM3-116]
	_ = x[SM4-117]
	_ = x[SVE-118]
	_ = x[lastID-119]
	_ = x[firstID-0]
}

const _FeatureID_name = "firstIDADXAESNIAMD3DNOWAMD3DNOWEXTAMXBF16AMXINT8AMXTILEAVXAVX2AVX512BF16AVX512BITALGAVX512BWAVX512CDAVX512DQAVX512ERAVX512FAVX512FP16AVX512IFMAAVX512PFAVX512VBMIAVX512VBMI2AVX512VLAVX512VNNIAVX512VP2INTERSECTAVX512VPOPCNTDQAVXSLOWBMI1BMI2CLDEMOTECLMULCLZEROCMOVCPBOOSTCX16ENQCMDERMSF16CFMA3FMA4GFNIHLEHTTHWAHYPERVISORIBPBIBSIBSBRNTRGTIBSFETCHSAMIBSFFVIBSOPCNTIBSOPCNTEXTIBSOPSAMIBSRDWROPCNTIBSRIPINVALIDCHKINT_WBINVDINVLPGBLZCNTMCAOVERFLOWMCOMMITMMXMMXEXTMOVDIR64BMOVDIRIMPXMSRIRCNXPOPCNTRDPRURDRANDRDSEEDRDTSCPRTMRTM_ALWAYS_ABORTSERIALIZESGXSGXLCSHASSESSE2SSE3SSE4SSE42SSE4ASSSE3STIBPSUCCORTBMTSXLDTRKVAESVMXVPCLMULQDQWAITPKGWBNOINVDXOPAESARMARMCPUIDASIMDASIMDDPASIMDHPASIMDRDMATOMICSCRC32DCPOPEVTSTRMFCMAFPFPHPGPAJSCVTLRCPCPMULLSHA1SHA2SHA3SHA512SM3SM4SVElastID"

var _FeatureID_index = [...]uint16{0, 7, 10, 15, 23, 34, 41, 48, 55, 58, 62, 72, 84, 92, 100, 108, 116, 123, 133, 143, 151, 161, 172, 180, 190, 208, 223, 230, 234, 238, 246, 251, 257, 261, 268, 272, 278, 282, 286, 290, 294, 298, 301, 304, 307, 317, 321, 324, 334, 345, 351, 359, 370, 378, 390, 406, 416, 423, 428, 439, 446, 449, 455, 464, 471, 474, 480, 482, 488, 493, 499, 505, 511, 514, 530, 539, 542, 547, 550, 553, 557, 561, 565, 570, 575, 580, 585, 591, 594, 602, 606, 609, 619, 626, 634, 637, 643, 651, 656, 663, 670, 678, 685, 690, 695, 702, 706, 708, 712, 715, 720, 725, 730, 734, 738, 742, 748, 751, 754, 757, 763}

func (i FeatureID) String() string {
	if i < 0 || i >= FeatureID(len(_FeatureID_index)-1) {
		return "FeatureID(" + strconv.FormatInt(int64(i), 10) + ")"
	}
	return _FeatureID_name[_FeatureID_index[i]:_FeatureID_index[i+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 x [1]struct{}
	_ = x[VendorUnknown-0]
	_ = x[Intel-1]
	_ = x[AMD-2]
	_ = x[VIA-3]
	_ = x[Transmeta-4]
	_ = x[NSC-5]
	_ = x[KVM-6]
	_ = x[MSVM-7]
	_ = x[VMware-8]
	_ = x[XenHVM-9]
	_ = x[Bhyve-10]
	_ = x[Hygon-11]
	_ = x[SiS-12]
	_ = x[RDC-13]
	_ = x[Ampere-14]
	_ = x[ARM-15]
	_ = x[Broadcom-16]
	_ = x[Cavium-17]
	_ = x[DEC-18]
	_ = x[Fujitsu-19]
	_ = x[Infineon-20]
	_ = x[Motorola-21]
	_ = x[NVIDIA-22]
	_ = x[AMCC-23]
	_ = x[Qualcomm-24]
	_ = x[Marvell-25]
	_ = x[lastVendor-26]
}

const _Vendor_name = "VendorUnknownIntelAMDVIATransmetaNSCKVMMSVMVMwareXenHVMBhyveHygonSiSRDCAmpereARMBroadcomCaviumDECFujitsuInfineonMotorolaNVIDIAAMCCQualcommMarvelllastVendor"

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, 155}

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