aboutsummaryrefslogtreecommitdiff
path: root/lib/std/target/cpu
diff options
context:
space:
mode:
authorLayne Gustafson <lgustaf1@binghamton.edu>2019-12-20 19:27:13 -0500
committerAndrew Kelley <andrew@ziglang.org>2020-01-19 20:53:18 -0500
commitc131e50ea7ea0fb95d188c3d0f71ef77bcc96952 (patch)
treece612c95d691e986fb60599f0fb3f568546c3893 /lib/std/target/cpu
parent9d66bda26421c2b687afc26122736515c9cc35da (diff)
downloadzig-c131e50ea7ea0fb95d188c3d0f71ef77bcc96952.tar.gz
zig-c131e50ea7ea0fb95d188c3d0f71ef77bcc96952.zip
Switch CPU/features to simple format
Diffstat (limited to 'lib/std/target/cpu')
-rw-r--r--lib/std/target/cpu/AArch64Cpu.zig480
-rw-r--r--lib/std/target/cpu/AmdGpuCpu.zig1060
-rw-r--r--lib/std/target/cpu/ArmCpu.zig1230
-rw-r--r--lib/std/target/cpu/AvrCpu.zig3863
-rw-r--r--lib/std/target/cpu/BpfCpu.zig29
-rw-r--r--lib/std/target/cpu/HexagonCpu.zig103
-rw-r--r--lib/std/target/cpu/MipsCpu.zig190
-rw-r--r--lib/std/target/cpu/Msp430Cpu.zig24
-rw-r--r--lib/std/target/cpu/NvptxCpu.zig85
-rw-r--r--lib/std/target/cpu/PowerPcCpu.zig451
-rw-r--r--lib/std/target/cpu/RiscVCpu.zig23
-rw-r--r--lib/std/target/cpu/SparcCpu.zig216
-rw-r--r--lib/std/target/cpu/SystemZCpu.zig279
-rw-r--r--lib/std/target/cpu/WebAssemblyCpu.zig28
-rw-r--r--lib/std/target/cpu/X86Cpu.zig1864
-rw-r--r--lib/std/target/cpu/empty.zig6
16 files changed, 0 insertions, 9931 deletions
diff --git a/lib/std/target/cpu/AArch64Cpu.zig b/lib/std/target/cpu/AArch64Cpu.zig
deleted file mode 100644
index 1fb36080fd..0000000000
--- a/lib/std/target/cpu/AArch64Cpu.zig
+++ /dev/null
@@ -1,480 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const AArch64Cpu = enum {
- AppleLatest,
- CortexA35,
- CortexA53,
- CortexA55,
- CortexA57,
- CortexA65,
- CortexA65ae,
- CortexA72,
- CortexA73,
- CortexA75,
- CortexA76,
- CortexA76ae,
- Cyclone,
- ExynosM1,
- ExynosM2,
- ExynosM3,
- ExynosM4,
- ExynosM5,
- Falkor,
- Generic,
- Kryo,
- NeoverseE1,
- NeoverseN1,
- Saphira,
- Thunderx,
- Thunderx2t99,
- Thunderxt81,
- Thunderxt83,
- Thunderxt88,
- Tsv110,
-
- const FeatureType = feature.AArch64Feature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.AppleLatest, "apple-latest", &[_]FeatureType {
- .ArithBccFusion,
- .ArithCbzFusion,
- .ZczFp,
- .AlternateSextloadCvtF32Pattern,
- .DisableLatencySchedHeuristic,
- .Perfmon,
- .ZczGp,
- .ZczFpWorkaround,
- .Zcm,
- .FpArmv8,
- .FuseCryptoEor,
- .FuseAes,
- .Cyclone,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA35, "cortex-a35", &[_]FeatureType {
- .Perfmon,
- .FpArmv8,
- .Crc,
- .A35,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA53, "cortex-a53", &[_]FeatureType {
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .CustomCheapAsMove,
- .BalanceFpOps,
- .UseAa,
- .FpArmv8,
- .FuseAes,
- .A53,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA55, "cortex-a55", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Perfmon,
- .Pan,
- .Dotprod,
- .Crc,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .FuseAes,
- .A55,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA57, "cortex-a57", &[_]FeatureType {
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .PredictableSelectExpensive,
- .CustomCheapAsMove,
- .BalanceFpOps,
- .FuseLiterals,
- .FpArmv8,
- .FuseAes,
- .A57,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA65, "cortex-a65", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Pan,
- .Dotprod,
- .Crc,
- .Ssbs,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .A65,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA65ae, "cortex-a65ae", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Pan,
- .Dotprod,
- .Crc,
- .Ssbs,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .A65,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA72, "cortex-a72", &[_]FeatureType {
- .Perfmon,
- .FpArmv8,
- .Crc,
- .FuseAes,
- .A72,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA73, "cortex-a73", &[_]FeatureType {
- .Perfmon,
- .FpArmv8,
- .Crc,
- .FuseAes,
- .A73,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA75, "cortex-a75", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Perfmon,
- .Pan,
- .Dotprod,
- .Crc,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .FuseAes,
- .A75,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA76, "cortex-a76", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Pan,
- .Dotprod,
- .Crc,
- .Ssbs,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .A76,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA76ae, "cortex-a76ae", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Pan,
- .Dotprod,
- .Crc,
- .Ssbs,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .A76,
- }),
- CpuInfo(@This(), FeatureType).create(.Cyclone, "cyclone", &[_]FeatureType {
- .ArithBccFusion,
- .ArithCbzFusion,
- .ZczFp,
- .AlternateSextloadCvtF32Pattern,
- .DisableLatencySchedHeuristic,
- .Perfmon,
- .ZczGp,
- .ZczFpWorkaround,
- .Zcm,
- .FpArmv8,
- .FuseCryptoEor,
- .FuseAes,
- .Cyclone,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM1, "exynos-m1", &[_]FeatureType {
- .ZczFp,
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .UseReciprocalSquareRoot,
- .CustomCheapAsMove,
- .Force32bitJumpTables,
- .SlowMisaligned128store,
- .FpArmv8,
- .SlowPaired128,
- .FuseAes,
- .Exynosm1,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM2, "exynos-m2", &[_]FeatureType {
- .ZczFp,
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .CustomCheapAsMove,
- .Force32bitJumpTables,
- .SlowMisaligned128store,
- .FpArmv8,
- .SlowPaired128,
- .FuseAes,
- .Exynosm2,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM3, "exynos-m3", &[_]FeatureType {
- .FuseCsel,
- .ZczFp,
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .PredictableSelectExpensive,
- .CustomCheapAsMove,
- .Force32bitJumpTables,
- .FuseLiterals,
- .FuseAddress,
- .LslFast,
- .FpArmv8,
- .FuseAes,
- .Exynosm3,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM4, "exynos-m4", &[_]FeatureType {
- .ArithBccFusion,
- .Vh,
- .ArithCbzFusion,
- .ZczFp,
- .Rdm,
- .UsePostraScheduler,
- .Ras,
- .Force32bitJumpTables,
- .Ccpp,
- .FuseCsel,
- .Pan,
- .Uaops,
- .FuseLiterals,
- .LslFast,
- .Lse,
- .Perfmon,
- .Dotprod,
- .Lor,
- .FuseArithLogic,
- .Crc,
- .CustomCheapAsMove,
- .FuseAddress,
- .ZczGp,
- .FpArmv8,
- .FuseAes,
- .Exynosm4,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM5, "exynos-m5", &[_]FeatureType {
- .ArithBccFusion,
- .Vh,
- .ArithCbzFusion,
- .ZczFp,
- .Rdm,
- .UsePostraScheduler,
- .Ras,
- .Force32bitJumpTables,
- .Ccpp,
- .FuseCsel,
- .Pan,
- .Uaops,
- .FuseLiterals,
- .LslFast,
- .Lse,
- .Perfmon,
- .Dotprod,
- .Lor,
- .FuseArithLogic,
- .Crc,
- .CustomCheapAsMove,
- .FuseAddress,
- .ZczGp,
- .FpArmv8,
- .FuseAes,
- .Exynosm4,
- }),
- CpuInfo(@This(), FeatureType).create(.Falkor, "falkor", &[_]FeatureType {
- .ZczFp,
- .Rdm,
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .PredictableSelectExpensive,
- .CustomCheapAsMove,
- .ZczGp,
- .FpArmv8,
- .SlowStrqroStore,
- .LslFast,
- .Falkor,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- .Trbe,
- .Ete,
- .FpArmv8,
- .FuseAes,
- .Neon,
- .Perfmon,
- .UsePostraScheduler,
- }),
- CpuInfo(@This(), FeatureType).create(.Kryo, "kryo", &[_]FeatureType {
- .ZczFp,
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .PredictableSelectExpensive,
- .CustomCheapAsMove,
- .ZczGp,
- .FpArmv8,
- .LslFast,
- .Kryo,
- }),
- CpuInfo(@This(), FeatureType).create(.NeoverseE1, "neoverse-e1", &[_]FeatureType {
- .Lse,
- .Vh,
- .Rdm,
- .Pan,
- .Dotprod,
- .Crc,
- .Ssbs,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .Neoversee1,
- }),
- CpuInfo(@This(), FeatureType).create(.NeoverseN1, "neoverse-n1", &[_]FeatureType {
- .Lse,
- .Spe,
- .Vh,
- .Rdm,
- .Pan,
- .Dotprod,
- .Crc,
- .Ssbs,
- .Lor,
- .Uaops,
- .Ras,
- .Rcpc,
- .Ccpp,
- .FpArmv8,
- .Neoversen1,
- }),
- CpuInfo(@This(), FeatureType).create(.Saphira, "saphira", &[_]FeatureType {
- .Spe,
- .Vh,
- .ZczFp,
- .Rdm,
- .UsePostraScheduler,
- .Dit,
- .Am,
- .Ras,
- .Rcpc,
- .Sel2,
- .Ccpp,
- .Pa,
- .Pan,
- .Uaops,
- .Tracev84,
- .Mpam,
- .LslFast,
- .Lse,
- .Nv,
- .Perfmon,
- .Dotprod,
- .TlbRmi,
- .Lor,
- .Ccidx,
- .PredictableSelectExpensive,
- .Crc,
- .CustomCheapAsMove,
- .Fmi,
- .ZczGp,
- .FpArmv8,
- .Saphira,
- }),
- CpuInfo(@This(), FeatureType).create(.Thunderx, "thunderx", &[_]FeatureType {
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .FpArmv8,
- .PredictableSelectExpensive,
- .Thunderx,
- }),
- CpuInfo(@This(), FeatureType).create(.Thunderx2t99, "thunderx2t99", &[_]FeatureType {
- .Lse,
- .ArithBccFusion,
- .Vh,
- .Rdm,
- .UsePostraScheduler,
- .Crc,
- .Lor,
- .Pan,
- .AggressiveFma,
- .FpArmv8,
- .PredictableSelectExpensive,
- .Thunderx2t99,
- }),
- CpuInfo(@This(), FeatureType).create(.Thunderxt81, "thunderxt81", &[_]FeatureType {
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .FpArmv8,
- .PredictableSelectExpensive,
- .Thunderxt81,
- }),
- CpuInfo(@This(), FeatureType).create(.Thunderxt83, "thunderxt83", &[_]FeatureType {
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .FpArmv8,
- .PredictableSelectExpensive,
- .Thunderxt83,
- }),
- CpuInfo(@This(), FeatureType).create(.Thunderxt88, "thunderxt88", &[_]FeatureType {
- .Perfmon,
- .UsePostraScheduler,
- .Crc,
- .FpArmv8,
- .PredictableSelectExpensive,
- .Thunderxt88,
- }),
- CpuInfo(@This(), FeatureType).create(.Tsv110, "tsv110", &[_]FeatureType {
- .Lse,
- .Spe,
- .Vh,
- .Rdm,
- .Perfmon,
- .UsePostraScheduler,
- .Pan,
- .Dotprod,
- .Crc,
- .Lor,
- .Uaops,
- .CustomCheapAsMove,
- .Ras,
- .Ccpp,
- .FpArmv8,
- .FuseAes,
- .Tsv110,
- }),
- };
-};
diff --git a/lib/std/target/cpu/AmdGpuCpu.zig b/lib/std/target/cpu/AmdGpuCpu.zig
deleted file mode 100644
index 3f05f60335..0000000000
--- a/lib/std/target/cpu/AmdGpuCpu.zig
+++ /dev/null
@@ -1,1060 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const AmdGpuCpu = enum {
- Bonaire,
- Carrizo,
- Fiji,
- Generic,
- GenericHsa,
- Gfx1010,
- Gfx1011,
- Gfx1012,
- Gfx600,
- Gfx601,
- Gfx700,
- Gfx701,
- Gfx702,
- Gfx703,
- Gfx704,
- Gfx801,
- Gfx802,
- Gfx803,
- Gfx810,
- Gfx900,
- Gfx902,
- Gfx904,
- Gfx906,
- Gfx908,
- Gfx909,
- Hainan,
- Hawaii,
- Iceland,
- Kabini,
- Kaveri,
- Mullins,
- Oland,
- Pitcairn,
- Polaris10,
- Polaris11,
- Stoney,
- Tahiti,
- Tonga,
- Verde,
-
- const FeatureType = feature.AmdGpuFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Bonaire, "bonaire", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Carrizo, "carrizo", &[_]FeatureType {
- .CodeObjectV3,
- .FastFmaf,
- .Ldsbankcount32,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- .Xnack,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Fiji, "fiji", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- .Wavefrontsize64,
- }),
- CpuInfo(@This(), FeatureType).create(.GenericHsa, "generic-hsa", &[_]FeatureType {
- .FlatAddressSpace,
- .Wavefrontsize64,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx1010, "gfx1010", &[_]FeatureType {
- .CodeObjectV3,
- .DlInsts,
- .NoXnackSupport,
- .FlatSegmentOffsetBug,
- .Vscnt,
- .ApertureRegs,
- .Gfx10Insts,
- .IntClampInsts,
- .PkFmacF16Inst,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .Movrel,
- .SMemrealtime,
- .NoSdstCmpx,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .NoSramEccSupport,
- .SdwaSdst,
- .FlatInstOffsets,
- .RegisterBanking,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .Dpp8,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .FmaMixInsts,
- .MimgR128,
- .Vop3Literal,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .NoDataDepHazard,
- .Gfx10,
- .InstFwdPrefetchBug,
- .Ldsbankcount32,
- .LdsBranchVmemWarHazard,
- .LdsMisalignedBug,
- .NsaEncoding,
- .NsaToVmemBug,
- .Offset3fBug,
- .SmemToVectorWriteHazard,
- .ScalarAtomics,
- .ScalarFlatScratchInsts,
- .ScalarStores,
- .VmemToScalarWriteHazard,
- .VcmpxExecWarHazard,
- .VcmpxPermlaneHazard,
- .Wavefrontsize32,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx1011, "gfx1011", &[_]FeatureType {
- .CodeObjectV3,
- .DlInsts,
- .NoXnackSupport,
- .Dot1Insts,
- .Dot2Insts,
- .Dot5Insts,
- .Dot6Insts,
- .FlatSegmentOffsetBug,
- .Vscnt,
- .ApertureRegs,
- .Gfx10Insts,
- .IntClampInsts,
- .PkFmacF16Inst,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .Movrel,
- .SMemrealtime,
- .NoSdstCmpx,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .NoSramEccSupport,
- .SdwaSdst,
- .FlatInstOffsets,
- .RegisterBanking,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .Dpp8,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .FmaMixInsts,
- .MimgR128,
- .Vop3Literal,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .NoDataDepHazard,
- .Gfx10,
- .InstFwdPrefetchBug,
- .Ldsbankcount32,
- .LdsBranchVmemWarHazard,
- .NsaEncoding,
- .NsaToVmemBug,
- .Offset3fBug,
- .SmemToVectorWriteHazard,
- .ScalarAtomics,
- .ScalarFlatScratchInsts,
- .ScalarStores,
- .VmemToScalarWriteHazard,
- .VcmpxExecWarHazard,
- .VcmpxPermlaneHazard,
- .Wavefrontsize32,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx1012, "gfx1012", &[_]FeatureType {
- .CodeObjectV3,
- .DlInsts,
- .NoXnackSupport,
- .Dot1Insts,
- .Dot2Insts,
- .Dot5Insts,
- .Dot6Insts,
- .FlatSegmentOffsetBug,
- .Vscnt,
- .ApertureRegs,
- .Gfx10Insts,
- .IntClampInsts,
- .PkFmacF16Inst,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .Movrel,
- .SMemrealtime,
- .NoSdstCmpx,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .NoSramEccSupport,
- .SdwaSdst,
- .FlatInstOffsets,
- .RegisterBanking,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .Dpp8,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .FmaMixInsts,
- .MimgR128,
- .Vop3Literal,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .NoDataDepHazard,
- .Gfx10,
- .InstFwdPrefetchBug,
- .Ldsbankcount32,
- .LdsBranchVmemWarHazard,
- .LdsMisalignedBug,
- .NsaEncoding,
- .NsaToVmemBug,
- .Offset3fBug,
- .SmemToVectorWriteHazard,
- .ScalarAtomics,
- .ScalarFlatScratchInsts,
- .ScalarStores,
- .VmemToScalarWriteHazard,
- .VcmpxExecWarHazard,
- .VcmpxPermlaneHazard,
- .Wavefrontsize32,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx600, "gfx600", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .FastFmaf,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx601, "gfx601", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx700, "gfx700", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx701, "gfx701", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .FastFmaf,
- .Ldsbankcount32,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx702, "gfx702", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .FastFmaf,
- .Ldsbankcount16,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx703, "gfx703", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount16,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx704, "gfx704", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx801, "gfx801", &[_]FeatureType {
- .CodeObjectV3,
- .FastFmaf,
- .Ldsbankcount32,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- .Xnack,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx802, "gfx802", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .SgprInitBug,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx803, "gfx803", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx810, "gfx810", &[_]FeatureType {
- .CodeObjectV3,
- .Ldsbankcount16,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- .Xnack,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx900, "gfx900", &[_]FeatureType {
- .CodeObjectV3,
- .NoSramEccSupport,
- .NoXnackSupport,
- .ApertureRegs,
- .IntClampInsts,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .ScalarAtomics,
- .SMemrealtime,
- .Gcn3Encoding,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .SdwaSdst,
- .FlatInstOffsets,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .R128A16,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .ScalarFlatScratchInsts,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .Gfx9,
- .Ldsbankcount32,
- .MadMixInsts,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx902, "gfx902", &[_]FeatureType {
- .CodeObjectV3,
- .NoSramEccSupport,
- .ApertureRegs,
- .IntClampInsts,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .ScalarAtomics,
- .SMemrealtime,
- .Gcn3Encoding,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .SdwaSdst,
- .FlatInstOffsets,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .R128A16,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .ScalarFlatScratchInsts,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .Gfx9,
- .Ldsbankcount32,
- .MadMixInsts,
- .Xnack,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx904, "gfx904", &[_]FeatureType {
- .CodeObjectV3,
- .NoSramEccSupport,
- .NoXnackSupport,
- .FmaMixInsts,
- .ApertureRegs,
- .IntClampInsts,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .ScalarAtomics,
- .SMemrealtime,
- .Gcn3Encoding,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .SdwaSdst,
- .FlatInstOffsets,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .R128A16,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .ScalarFlatScratchInsts,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .Gfx9,
- .Ldsbankcount32,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx906, "gfx906", &[_]FeatureType {
- .CodeObjectV3,
- .DlInsts,
- .NoXnackSupport,
- .Dot1Insts,
- .Dot2Insts,
- .FmaMixInsts,
- .ApertureRegs,
- .IntClampInsts,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .ScalarAtomics,
- .SMemrealtime,
- .Gcn3Encoding,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .SdwaSdst,
- .FlatInstOffsets,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .R128A16,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .ScalarFlatScratchInsts,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .Gfx9,
- .Ldsbankcount32,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx908, "gfx908", &[_]FeatureType {
- .AtomicFaddInsts,
- .CodeObjectV3,
- .DlInsts,
- .Dot1Insts,
- .Dot2Insts,
- .Dot3Insts,
- .Dot4Insts,
- .Dot5Insts,
- .Dot6Insts,
- .FmaMixInsts,
- .ApertureRegs,
- .IntClampInsts,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .ScalarAtomics,
- .SMemrealtime,
- .Gcn3Encoding,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .SdwaSdst,
- .FlatInstOffsets,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .R128A16,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .ScalarFlatScratchInsts,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .Gfx9,
- .Ldsbankcount32,
- .MaiInsts,
- .MfmaInlineLiteralBug,
- .PkFmacF16Inst,
- .SramEcc,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Gfx909, "gfx909", &[_]FeatureType {
- .CodeObjectV3,
- .ApertureRegs,
- .IntClampInsts,
- .SdwaOmod,
- .SdwaScalar,
- .AddNoCarryInsts,
- .ScalarAtomics,
- .SMemrealtime,
- .Gcn3Encoding,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .SdwaSdst,
- .FlatInstOffsets,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .R128A16,
- .Dpp,
- .Localmemorysize65536,
- .Vop3p,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .Gfx9Insts,
- .ScalarFlatScratchInsts,
- .FlatGlobalInsts,
- .FlatScratchInsts,
- .Fp64,
- .FastFmaf,
- .Gfx9,
- .Ldsbankcount32,
- .MadMixInsts,
- .Xnack,
- }),
- CpuInfo(@This(), FeatureType).create(.Hainan, "hainan", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Hawaii, "hawaii", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .FastFmaf,
- .Ldsbankcount32,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Iceland, "iceland", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .SgprInitBug,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Kabini, "kabini", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount16,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Kaveri, "kaveri", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Mullins, "mullins", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount16,
- .Movrel,
- .Gfx7Gfx8Gfx9Insts,
- .Fp64,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Localmemorysize65536,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .MimgR128,
- .SeaIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Oland, "oland", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Pitcairn, "pitcairn", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Polaris10, "polaris10", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Polaris11, "polaris11", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Stoney, "stoney", &[_]FeatureType {
- .CodeObjectV3,
- .Ldsbankcount16,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- .Xnack,
- }),
- CpuInfo(@This(), FeatureType).create(.Tahiti, "tahiti", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .FastFmaf,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- .HalfRate64Ops,
- }),
- CpuInfo(@This(), FeatureType).create(.Tonga, "tonga", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .SgprInitBug,
- .UnpackedD16Vmem,
- .IntClampInsts,
- .SdwaMav,
- .Movrel,
- .SMemrealtime,
- .Gcn3Encoding,
- .TrigReducedRange,
- .CiInsts,
- .FlatAddressSpace,
- .Sdwa,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .ScalarStores,
- .Gfx7Gfx8Gfx9Insts,
- .Dpp,
- .Localmemorysize65536,
- .BitInsts16,
- .VgprIndexMode,
- .Gfx8Insts,
- .Inv2piInlineImm,
- .MimgR128,
- .SdwaOutModsVopc,
- .Fp64,
- .VolcanicIslands,
- }),
- CpuInfo(@This(), FeatureType).create(.Verde, "verde", &[_]FeatureType {
- .CodeObjectV3,
- .NoXnackSupport,
- .Ldsbankcount32,
- .Movrel,
- .MimgR128,
- .Fp64,
- .TrigReducedRange,
- .Wavefrontsize64,
- .NoSramEccSupport,
- .Localmemorysize32768,
- .SouthernIslands,
- }),
- };
-};
diff --git a/lib/std/target/cpu/ArmCpu.zig b/lib/std/target/cpu/ArmCpu.zig
deleted file mode 100644
index bb51794644..0000000000
--- a/lib/std/target/cpu/ArmCpu.zig
+++ /dev/null
@@ -1,1230 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const ArmCpu = enum {
- Arm1020e,
- Arm1020t,
- Arm1022e,
- Arm10e,
- Arm10tdmi,
- Arm1136jS,
- Arm1136jfS,
- Arm1156t2S,
- Arm1156t2fS,
- Arm1176jS,
- Arm1176jzS,
- Arm1176jzfS,
- Arm710t,
- Arm720t,
- Arm7tdmi,
- Arm7tdmiS,
- Arm8,
- Arm810,
- Arm9,
- Arm920,
- Arm920t,
- Arm922t,
- Arm926ejS,
- Arm940t,
- Arm946eS,
- Arm966eS,
- Arm968eS,
- Arm9e,
- Arm9tdmi,
- CortexA12,
- CortexA15,
- CortexA17,
- CortexA32,
- CortexA35,
- CortexA5,
- CortexA53,
- CortexA55,
- CortexA57,
- CortexA7,
- CortexA72,
- CortexA73,
- CortexA75,
- CortexA76,
- CortexA76ae,
- CortexA8,
- CortexA9,
- CortexM0,
- CortexM0plus,
- CortexM1,
- CortexM23,
- CortexM3,
- CortexM33,
- CortexM35p,
- CortexM4,
- CortexM7,
- CortexR4,
- CortexR4f,
- CortexR5,
- CortexR52,
- CortexR7,
- CortexR8,
- Cyclone,
- Ep9312,
- ExynosM1,
- ExynosM2,
- ExynosM3,
- ExynosM4,
- ExynosM5,
- Generic,
- Iwmmxt,
- Krait,
- Kryo,
- Mpcore,
- Mpcorenovfp,
- NeoverseN1,
- Sc000,
- Sc300,
- Strongarm,
- Strongarm110,
- Strongarm1100,
- Strongarm1110,
- Swift,
- Xscale,
-
- const FeatureType = feature.ArmFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Arm1020e, "arm1020e", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1020t, "arm1020t", &[_]FeatureType {
- .V4t,
- .Armv5t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1022e, "arm1022e", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm10e, "arm10e", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm10tdmi, "arm10tdmi", &[_]FeatureType {
- .V4t,
- .Armv5t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1136jS, "arm1136j-s", &[_]FeatureType {
- .V4t,
- .Dsp,
- .Armv6,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1136jfS, "arm1136jf-s", &[_]FeatureType {
- .V4t,
- .Dsp,
- .Armv6,
- .Slowfpvmlx,
- .Fpregs,
- .Vfp2,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1156t2S, "arm1156t2-s", &[_]FeatureType {
- .V4t,
- .Thumb2,
- .Dsp,
- .Armv6t2,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1156t2fS, "arm1156t2f-s", &[_]FeatureType {
- .V4t,
- .Thumb2,
- .Dsp,
- .Armv6t2,
- .Slowfpvmlx,
- .Fpregs,
- .Vfp2,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1176jS, "arm1176j-s", &[_]FeatureType {
- .V4t,
- .Trustzone,
- .Armv6kz,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1176jzS, "arm1176jz-s", &[_]FeatureType {
- .V4t,
- .Trustzone,
- .Armv6kz,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm1176jzfS, "arm1176jzf-s", &[_]FeatureType {
- .V4t,
- .Trustzone,
- .Armv6kz,
- .Slowfpvmlx,
- .Fpregs,
- .Vfp2,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm710t, "arm710t", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm720t, "arm720t", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm7tdmi, "arm7tdmi", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm7tdmiS, "arm7tdmi-s", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm8, "arm8", &[_]FeatureType {
- .Armv4,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm810, "arm810", &[_]FeatureType {
- .Armv4,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm9, "arm9", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm920, "arm920", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm920t, "arm920t", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm922t, "arm922t", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm926ejS, "arm926ej-s", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm940t, "arm940t", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm946eS, "arm946e-s", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm966eS, "arm966e-s", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm968eS, "arm968e-s", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm9e, "arm9e", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Arm9tdmi, "arm9tdmi", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA12, "cortex-a12", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .AvoidPartialCpsr,
- .RetAddrStack,
- .Mp,
- .Trustzone,
- .Fp16,
- .Vfp4,
- .VmlxForwarding,
- .HwdivArm,
- .Hwdiv,
- .Virtualization,
- .A12,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA15, "cortex-a15", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .AvoidPartialCpsr,
- .VldnAlign,
- .DontWidenVmovs,
- .RetAddrStack,
- .Mp,
- .MuxedUnits,
- .SplatVfpNeon,
- .Trustzone,
- .Fp16,
- .Vfp4,
- .HwdivArm,
- .Hwdiv,
- .Virtualization,
- .A15,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA17, "cortex-a17", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .AvoidPartialCpsr,
- .RetAddrStack,
- .Mp,
- .Trustzone,
- .Fp16,
- .Vfp4,
- .VmlxForwarding,
- .HwdivArm,
- .Hwdiv,
- .Virtualization,
- .A17,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA32, "cortex-a32", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .Crypto,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA35, "cortex-a35", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .Crypto,
- .A35,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA5, "cortex-a5", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .RetAddrStack,
- .Slowfpvmlx,
- .Mp,
- .SlowFpBrcc,
- .Trustzone,
- .Fp16,
- .Vfp4,
- .VmlxForwarding,
- .A5,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA53, "cortex-a53", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .Crypto,
- .Fpao,
- .A53,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA55, "cortex-a55", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Dotprod,
- .A55,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA57, "cortex-a57", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .AvoidPartialCpsr,
- .CheapPredicableCpsr,
- .Crypto,
- .Fpao,
- .A57,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA7, "cortex-a7", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .RetAddrStack,
- .Slowfpvmlx,
- .VmlxHazards,
- .Mp,
- .SlowFpBrcc,
- .Trustzone,
- .Fp16,
- .Vfp4,
- .VmlxForwarding,
- .HwdivArm,
- .Hwdiv,
- .Virtualization,
- .A7,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA72, "cortex-a72", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .Crypto,
- .A72,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA73, "cortex-a73", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .Crypto,
- .A73,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA75, "cortex-a75", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Dotprod,
- .A75,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA76, "cortex-a76", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Crypto,
- .Dotprod,
- .Fullfp16,
- .A76,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA76ae, "cortex-a76ae", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Crypto,
- .Dotprod,
- .Fullfp16,
- .A76,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA8, "cortex-a8", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .RetAddrStack,
- .Slowfpvmlx,
- .VmlxHazards,
- .NonpipelinedVfp,
- .SlowFpBrcc,
- .Trustzone,
- .VmlxForwarding,
- .A8,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexA9, "cortex-a9", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .AvoidPartialCpsr,
- .VldnAlign,
- .ExpandFpMlx,
- .Fp16,
- .RetAddrStack,
- .VmlxHazards,
- .Mp,
- .MuxedUnits,
- .NeonFpmovs,
- .PreferVmovsr,
- .Trustzone,
- .VmlxForwarding,
- .A9,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM0, "cortex-m0", &[_]FeatureType {
- .V4t,
- .ThumbMode,
- .Db,
- .StrictAlign,
- .Mclass,
- .Noarm,
- .Armv6M,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM0plus, "cortex-m0plus", &[_]FeatureType {
- .V4t,
- .ThumbMode,
- .Db,
- .StrictAlign,
- .Mclass,
- .Noarm,
- .Armv6M,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM1, "cortex-m1", &[_]FeatureType {
- .V4t,
- .ThumbMode,
- .Db,
- .StrictAlign,
- .Mclass,
- .Noarm,
- .Armv6M,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM23, "cortex-m23", &[_]FeatureType {
- .V4t,
- .ThumbMode,
- .Msecext8,
- .V7clrex,
- .Db,
- .StrictAlign,
- .Mclass,
- .Noarm,
- .AcquireRelease,
- .Hwdiv,
- .Armv8Mbase,
- .NoMovt,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM3, "cortex-m3", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .ThumbMode,
- .V7clrex,
- .Thumb2,
- .Db,
- .Mclass,
- .Noarm,
- .Hwdiv,
- .Armv7M,
- .NoBranchPredictor,
- .LoopAlign,
- .UseAa,
- .UseMisched,
- .M3,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM33, "cortex-m33", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .ThumbMode,
- .Msecext8,
- .V7clrex,
- .Thumb2,
- .Db,
- .Mclass,
- .Noarm,
- .AcquireRelease,
- .Hwdiv,
- .Armv8Mmain,
- .Dsp,
- .Fpregs,
- .Fp16,
- .FpArmv8d16sp,
- .NoBranchPredictor,
- .Slowfpvmlx,
- .LoopAlign,
- .UseAa,
- .UseMisched,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM35p, "cortex-m35p", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .ThumbMode,
- .Msecext8,
- .V7clrex,
- .Thumb2,
- .Db,
- .Mclass,
- .Noarm,
- .AcquireRelease,
- .Hwdiv,
- .Armv8Mmain,
- .Dsp,
- .Fpregs,
- .Fp16,
- .FpArmv8d16sp,
- .NoBranchPredictor,
- .Slowfpvmlx,
- .LoopAlign,
- .UseAa,
- .UseMisched,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM4, "cortex-m4", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .ThumbMode,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Mclass,
- .Noarm,
- .Hwdiv,
- .Armv7eM,
- .NoBranchPredictor,
- .Slowfpvmlx,
- .LoopAlign,
- .UseAa,
- .UseMisched,
- .Fpregs,
- .Fp16,
- .Vfp4d16sp,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexM7, "cortex-m7", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .ThumbMode,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Mclass,
- .Noarm,
- .Hwdiv,
- .Armv7eM,
- .Fpregs,
- .Fp16,
- .FpArmv8d16,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexR4, "cortex-r4", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Hwdiv,
- .Rclass,
- .Armv7R,
- .AvoidPartialCpsr,
- .RetAddrStack,
- .R4,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexR4f, "cortex-r4f", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Hwdiv,
- .Rclass,
- .Armv7R,
- .AvoidPartialCpsr,
- .RetAddrStack,
- .Slowfpvmlx,
- .SlowFpBrcc,
- .Fpregs,
- .Vfp3d16,
- .R4,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexR5, "cortex-r5", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Hwdiv,
- .Rclass,
- .Armv7R,
- .AvoidPartialCpsr,
- .HwdivArm,
- .RetAddrStack,
- .Slowfpvmlx,
- .SlowFpBrcc,
- .Fpregs,
- .Vfp3d16,
- .R5,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexR52, "cortex-r52", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Crc,
- .Fpregs,
- .Mp,
- .Dfb,
- .Dsp,
- .Fp16,
- .V4t,
- .Db,
- .V7clrex,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Rclass,
- .Armv8R,
- .Fpao,
- .UseAa,
- .UseMisched,
- .R52,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexR7, "cortex-r7", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Hwdiv,
- .Rclass,
- .Armv7R,
- .AvoidPartialCpsr,
- .Fp16,
- .HwdivArm,
- .RetAddrStack,
- .Slowfpvmlx,
- .Mp,
- .SlowFpBrcc,
- .Fpregs,
- .Vfp3d16,
- .R7,
- }),
- CpuInfo(@This(), FeatureType).create(.CortexR8, "cortex-r8", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Hwdiv,
- .Rclass,
- .Armv7R,
- .AvoidPartialCpsr,
- .Fp16,
- .HwdivArm,
- .RetAddrStack,
- .Slowfpvmlx,
- .Mp,
- .SlowFpBrcc,
- .Fpregs,
- .Vfp3d16,
- }),
- CpuInfo(@This(), FeatureType).create(.Cyclone, "cyclone", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .AvoidMovsShop,
- .AvoidPartialCpsr,
- .Crypto,
- .RetAddrStack,
- .Slowfpvmlx,
- .Neonfp,
- .DisablePostraScheduler,
- .UseMisched,
- .Vfp4,
- .Zcz,
- .Swift,
- }),
- CpuInfo(@This(), FeatureType).create(.Ep9312, "ep9312", &[_]FeatureType {
- .V4t,
- .Armv4t,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM1, "exynos-m1", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .RetAddrStack,
- .SlowVgetlni32,
- .WideStrideVfp,
- .SlowVdup32,
- .SlowFpBrcc,
- .ProfUnpr,
- .DontWidenVmovs,
- .Zcz,
- .FuseAes,
- .Slowfpvmlx,
- .UseAa,
- .FuseLiterals,
- .ExpandFpMlx,
- .Exynos,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM2, "exynos-m2", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .RetAddrStack,
- .SlowVgetlni32,
- .WideStrideVfp,
- .SlowVdup32,
- .SlowFpBrcc,
- .ProfUnpr,
- .DontWidenVmovs,
- .Zcz,
- .FuseAes,
- .Slowfpvmlx,
- .UseAa,
- .FuseLiterals,
- .ExpandFpMlx,
- .Exynos,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM3, "exynos-m3", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .RetAddrStack,
- .SlowVgetlni32,
- .WideStrideVfp,
- .SlowVdup32,
- .SlowFpBrcc,
- .ProfUnpr,
- .DontWidenVmovs,
- .Zcz,
- .FuseAes,
- .Slowfpvmlx,
- .UseAa,
- .FuseLiterals,
- .ExpandFpMlx,
- .Exynos,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM4, "exynos-m4", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Dotprod,
- .Fullfp16,
- .RetAddrStack,
- .SlowVgetlni32,
- .WideStrideVfp,
- .SlowVdup32,
- .SlowFpBrcc,
- .ProfUnpr,
- .DontWidenVmovs,
- .Zcz,
- .FuseAes,
- .Slowfpvmlx,
- .UseAa,
- .FuseLiterals,
- .ExpandFpMlx,
- .Exynos,
- }),
- CpuInfo(@This(), FeatureType).create(.ExynosM5, "exynos-m5", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Dotprod,
- .Fullfp16,
- .RetAddrStack,
- .SlowVgetlni32,
- .WideStrideVfp,
- .SlowVdup32,
- .SlowFpBrcc,
- .ProfUnpr,
- .DontWidenVmovs,
- .Zcz,
- .FuseAes,
- .Slowfpvmlx,
- .UseAa,
- .FuseLiterals,
- .ExpandFpMlx,
- .Exynos,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Iwmmxt, "iwmmxt", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- CpuInfo(@This(), FeatureType).create(.Krait, "krait", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .AvoidPartialCpsr,
- .VldnAlign,
- .Fp16,
- .HwdivArm,
- .Hwdiv,
- .RetAddrStack,
- .MuxedUnits,
- .Vfp4,
- .VmlxForwarding,
- .Krait,
- }),
- CpuInfo(@This(), FeatureType).create(.Kryo, "kryo", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv8A,
- .Crypto,
- .Kryo,
- }),
- CpuInfo(@This(), FeatureType).create(.Mpcore, "mpcore", &[_]FeatureType {
- .V4t,
- .Armv6k,
- .Slowfpvmlx,
- .Fpregs,
- .Vfp2,
- }),
- CpuInfo(@This(), FeatureType).create(.Mpcorenovfp, "mpcorenovfp", &[_]FeatureType {
- .V4t,
- .Armv6k,
- }),
- CpuInfo(@This(), FeatureType).create(.NeoverseN1, "neoverse-n1", &[_]FeatureType {
- .HwdivArm,
- .Perfmon,
- .D32,
- .Fpregs,
- .Crc,
- .Mp,
- .Fp16,
- .Dsp,
- .V4t,
- .V7clrex,
- .Db,
- .Aclass,
- .Thumb2,
- .Ras,
- .AcquireRelease,
- .Hwdiv,
- .Trustzone,
- .Armv82A,
- .Crypto,
- .Dotprod,
- }),
- CpuInfo(@This(), FeatureType).create(.Sc000, "sc000", &[_]FeatureType {
- .V4t,
- .ThumbMode,
- .Db,
- .StrictAlign,
- .Mclass,
- .Noarm,
- .Armv6M,
- }),
- CpuInfo(@This(), FeatureType).create(.Sc300, "sc300", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .ThumbMode,
- .V7clrex,
- .Thumb2,
- .Db,
- .Mclass,
- .Noarm,
- .Hwdiv,
- .Armv7M,
- .NoBranchPredictor,
- .UseAa,
- .UseMisched,
- .M3,
- }),
- CpuInfo(@This(), FeatureType).create(.Strongarm, "strongarm", &[_]FeatureType {
- .Armv4,
- }),
- CpuInfo(@This(), FeatureType).create(.Strongarm110, "strongarm110", &[_]FeatureType {
- .Armv4,
- }),
- CpuInfo(@This(), FeatureType).create(.Strongarm1100, "strongarm1100", &[_]FeatureType {
- .Armv4,
- }),
- CpuInfo(@This(), FeatureType).create(.Strongarm1110, "strongarm1110", &[_]FeatureType {
- .Armv4,
- }),
- CpuInfo(@This(), FeatureType).create(.Swift, "swift", &[_]FeatureType {
- .Perfmon,
- .V4t,
- .D32,
- .Fpregs,
- .V7clrex,
- .Dsp,
- .Thumb2,
- .Db,
- .Aclass,
- .Armv7A,
- .AvoidMovsShop,
- .AvoidPartialCpsr,
- .HwdivArm,
- .Hwdiv,
- .RetAddrStack,
- .Slowfpvmlx,
- .VmlxHazards,
- .Mp,
- .Neonfp,
- .DisablePostraScheduler,
- .PreferIshst,
- .ProfUnpr,
- .SlowLoadDSubreg,
- .SlowOddReg,
- .SlowVdup32,
- .SlowVgetlni32,
- .UseMisched,
- .WideStrideVfp,
- .Fp16,
- .Vfp4,
- .Swift,
- }),
- CpuInfo(@This(), FeatureType).create(.Xscale, "xscale", &[_]FeatureType {
- .V4t,
- .Armv5te,
- }),
- };
-};
diff --git a/lib/std/target/cpu/AvrCpu.zig b/lib/std/target/cpu/AvrCpu.zig
deleted file mode 100644
index 812554134b..0000000000
--- a/lib/std/target/cpu/AvrCpu.zig
+++ /dev/null
@@ -1,3863 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const AvrCpu = enum {
- At43usb320,
- At43usb355,
- At76c711,
- At86rf401,
- At90c8534,
- At90can128,
- At90can32,
- At90can64,
- At90pwm1,
- At90pwm161,
- At90pwm2,
- At90pwm216,
- At90pwm2b,
- At90pwm3,
- At90pwm316,
- At90pwm3b,
- At90pwm81,
- At90s1200,
- At90s2313,
- At90s2323,
- At90s2333,
- At90s2343,
- At90s4414,
- At90s4433,
- At90s4434,
- At90s8515,
- At90s8535,
- At90scr100,
- At90usb1286,
- At90usb1287,
- At90usb162,
- At90usb646,
- At90usb647,
- At90usb82,
- At94k,
- Ata5272,
- Ata5505,
- Ata5790,
- Ata5795,
- Ata6285,
- Ata6286,
- Ata6289,
- Atmega103,
- Atmega128,
- Atmega1280,
- Atmega1281,
- Atmega1284,
- Atmega1284p,
- Atmega1284rfr2,
- Atmega128a,
- Atmega128rfa1,
- Atmega128rfr2,
- Atmega16,
- Atmega161,
- Atmega162,
- Atmega163,
- Atmega164a,
- Atmega164p,
- Atmega164pa,
- Atmega165,
- Atmega165a,
- Atmega165p,
- Atmega165pa,
- Atmega168,
- Atmega168a,
- Atmega168p,
- Atmega168pa,
- Atmega169,
- Atmega169a,
- Atmega169p,
- Atmega169pa,
- Atmega16a,
- Atmega16hva,
- Atmega16hva2,
- Atmega16hvb,
- Atmega16hvbrevb,
- Atmega16m1,
- Atmega16u2,
- Atmega16u4,
- Atmega2560,
- Atmega2561,
- Atmega2564rfr2,
- Atmega256rfr2,
- Atmega32,
- Atmega323,
- Atmega324a,
- Atmega324p,
- Atmega324pa,
- Atmega325,
- Atmega3250,
- Atmega3250a,
- Atmega3250p,
- Atmega3250pa,
- Atmega325a,
- Atmega325p,
- Atmega325pa,
- Atmega328,
- Atmega328p,
- Atmega329,
- Atmega3290,
- Atmega3290a,
- Atmega3290p,
- Atmega3290pa,
- Atmega329a,
- Atmega329p,
- Atmega329pa,
- Atmega32a,
- Atmega32c1,
- Atmega32hvb,
- Atmega32hvbrevb,
- Atmega32m1,
- Atmega32u2,
- Atmega32u4,
- Atmega32u6,
- Atmega406,
- Atmega48,
- Atmega48a,
- Atmega48p,
- Atmega48pa,
- Atmega64,
- Atmega640,
- Atmega644,
- Atmega644a,
- Atmega644p,
- Atmega644pa,
- Atmega644rfr2,
- Atmega645,
- Atmega6450,
- Atmega6450a,
- Atmega6450p,
- Atmega645a,
- Atmega645p,
- Atmega649,
- Atmega6490,
- Atmega6490a,
- Atmega6490p,
- Atmega649a,
- Atmega649p,
- Atmega64a,
- Atmega64c1,
- Atmega64hve,
- Atmega64m1,
- Atmega64rfr2,
- Atmega8,
- Atmega8515,
- Atmega8535,
- Atmega88,
- Atmega88a,
- Atmega88p,
- Atmega88pa,
- Atmega8a,
- Atmega8hva,
- Atmega8u2,
- Attiny10,
- Attiny102,
- Attiny104,
- Attiny11,
- Attiny12,
- Attiny13,
- Attiny13a,
- Attiny15,
- Attiny1634,
- Attiny167,
- Attiny20,
- Attiny22,
- Attiny2313,
- Attiny2313a,
- Attiny24,
- Attiny24a,
- Attiny25,
- Attiny26,
- Attiny261,
- Attiny261a,
- Attiny28,
- Attiny4,
- Attiny40,
- Attiny4313,
- Attiny43u,
- Attiny44,
- Attiny44a,
- Attiny45,
- Attiny461,
- Attiny461a,
- Attiny48,
- Attiny5,
- Attiny828,
- Attiny84,
- Attiny84a,
- Attiny85,
- Attiny861,
- Attiny861a,
- Attiny87,
- Attiny88,
- Attiny9,
- Atxmega128a1,
- Atxmega128a1u,
- Atxmega128a3,
- Atxmega128a3u,
- Atxmega128a4u,
- Atxmega128b1,
- Atxmega128b3,
- Atxmega128c3,
- Atxmega128d3,
- Atxmega128d4,
- Atxmega16a4,
- Atxmega16a4u,
- Atxmega16c4,
- Atxmega16d4,
- Atxmega16e5,
- Atxmega192a3,
- Atxmega192a3u,
- Atxmega192c3,
- Atxmega192d3,
- Atxmega256a3,
- Atxmega256a3b,
- Atxmega256a3bu,
- Atxmega256a3u,
- Atxmega256c3,
- Atxmega256d3,
- Atxmega32a4,
- Atxmega32a4u,
- Atxmega32c4,
- Atxmega32d4,
- Atxmega32e5,
- Atxmega32x1,
- Atxmega384c3,
- Atxmega384d3,
- Atxmega64a1,
- Atxmega64a1u,
- Atxmega64a3,
- Atxmega64a3u,
- Atxmega64a4u,
- Atxmega64b1,
- Atxmega64b3,
- Atxmega64c3,
- Atxmega64d3,
- Atxmega64d4,
- Atxmega8e5,
- Avr1,
- Avr2,
- Avr25,
- Avr3,
- Avr31,
- Avr35,
- Avr4,
- Avr5,
- Avr51,
- Avr6,
- Avrtiny,
- Avrxmega1,
- Avrxmega2,
- Avrxmega3,
- Avrxmega4,
- Avrxmega5,
- Avrxmega6,
- Avrxmega7,
- M3000,
-
- const FeatureType = feature.AvrFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.At43usb320, "at43usb320", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr31,
- }),
- CpuInfo(@This(), FeatureType).create(.At43usb355, "at43usb355", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr3,
- }),
- CpuInfo(@This(), FeatureType).create(.At76c711, "at76c711", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr3,
- }),
- CpuInfo(@This(), FeatureType).create(.At86rf401, "at86rf401", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- .Lpmx,
- .Movw,
- }),
- CpuInfo(@This(), FeatureType).create(.At90c8534, "at90c8534", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90can128, "at90can128", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.At90can32, "at90can32", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90can64, "at90can64", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm1, "at90pwm1", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm161, "at90pwm161", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm2, "at90pwm2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm216, "at90pwm216", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm2b, "at90pwm2b", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm3, "at90pwm3", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm316, "at90pwm316", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm3b, "at90pwm3b", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.At90pwm81, "at90pwm81", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s1200, "at90s1200", &[_]FeatureType {
- .Avr0,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s2313, "at90s2313", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s2323, "at90s2323", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s2333, "at90s2333", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s2343, "at90s2343", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s4414, "at90s4414", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s4433, "at90s4433", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s4434, "at90s4434", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s8515, "at90s8515", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90s8535, "at90s8535", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.At90scr100, "at90scr100", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90usb1286, "at90usb1286", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.At90usb1287, "at90usb1287", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.At90usb162, "at90usb162", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.At90usb646, "at90usb646", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90usb647, "at90usb647", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.At90usb82, "at90usb82", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.At94k, "at94k", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr3,
- .Lpmx,
- .Movw,
- .Mul,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata5272, "ata5272", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata5505, "ata5505", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata5790, "ata5790", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata5795, "ata5795", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata6285, "ata6285", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata6286, "ata6286", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Ata6289, "ata6289", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega103, "atmega103", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr31,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega128, "atmega128", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega1280, "atmega1280", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega1281, "atmega1281", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega1284, "atmega1284", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega1284p, "atmega1284p", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega1284rfr2, "atmega1284rfr2", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega128a, "atmega128a", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega128rfa1, "atmega128rfa1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega128rfr2, "atmega128rfr2", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16, "atmega16", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega161, "atmega161", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr3,
- .Lpmx,
- .Movw,
- .Mul,
- .Spm,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega162, "atmega162", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega163, "atmega163", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr3,
- .Lpmx,
- .Movw,
- .Mul,
- .Spm,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega164a, "atmega164a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega164p, "atmega164p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega164pa, "atmega164pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega165, "atmega165", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega165a, "atmega165a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega165p, "atmega165p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega165pa, "atmega165pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega168, "atmega168", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega168a, "atmega168a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega168p, "atmega168p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega168pa, "atmega168pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega169, "atmega169", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega169a, "atmega169a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega169p, "atmega169p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega169pa, "atmega169pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16a, "atmega16a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16hva, "atmega16hva", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16hva2, "atmega16hva2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16hvb, "atmega16hvb", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16hvbrevb, "atmega16hvbrevb", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16m1, "atmega16m1", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16u2, "atmega16u2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega16u4, "atmega16u4", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega2560, "atmega2560", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr6,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega2561, "atmega2561", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr6,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega2564rfr2, "atmega2564rfr2", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr6,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega256rfr2, "atmega256rfr2", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr6,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32, "atmega32", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega323, "atmega323", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega324a, "atmega324a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega324p, "atmega324p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega324pa, "atmega324pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega325, "atmega325", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3250, "atmega3250", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3250a, "atmega3250a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3250p, "atmega3250p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3250pa, "atmega3250pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega325a, "atmega325a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega325p, "atmega325p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega325pa, "atmega325pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega328, "atmega328", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega328p, "atmega328p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega329, "atmega329", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3290, "atmega3290", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3290a, "atmega3290a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3290p, "atmega3290p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega3290pa, "atmega3290pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega329a, "atmega329a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega329p, "atmega329p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega329pa, "atmega329pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32a, "atmega32a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32c1, "atmega32c1", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32hvb, "atmega32hvb", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32hvbrevb, "atmega32hvbrevb", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32m1, "atmega32m1", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32u2, "atmega32u2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32u4, "atmega32u4", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega32u6, "atmega32u6", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega406, "atmega406", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega48, "atmega48", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega48a, "atmega48a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega48p, "atmega48p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega48pa, "atmega48pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega64, "atmega64", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega640, "atmega640", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega644, "atmega644", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega644a, "atmega644a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega644p, "atmega644p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega644pa, "atmega644pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega644rfr2, "atmega644rfr2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega645, "atmega645", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega6450, "atmega6450", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega6450a, "atmega6450a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega6450p, "atmega6450p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega645a, "atmega645a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega645p, "atmega645p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega649, "atmega649", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega6490, "atmega6490", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega6490a, "atmega6490a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega6490p, "atmega6490p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega649a, "atmega649a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega649p, "atmega649p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega64a, "atmega64a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega64c1, "atmega64c1", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega64hve, "atmega64hve", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega64m1, "atmega64m1", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega64rfr2, "atmega64rfr2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega8, "atmega8", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega8515, "atmega8515", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- .Lpmx,
- .Movw,
- .Mul,
- .Spm,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega8535, "atmega8535", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- .Lpmx,
- .Movw,
- .Mul,
- .Spm,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega88, "atmega88", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega88a, "atmega88a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega88p, "atmega88p", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega88pa, "atmega88pa", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega8a, "atmega8a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega8hva, "atmega8hva", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Atmega8u2, "atmega8u2", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny10, "attiny10", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny102, "attiny102", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny104, "attiny104", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny11, "attiny11", &[_]FeatureType {
- .Avr0,
- .Lpm,
- .Avr1,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny12, "attiny12", &[_]FeatureType {
- .Avr0,
- .Lpm,
- .Avr1,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny13, "attiny13", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny13a, "attiny13a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny15, "attiny15", &[_]FeatureType {
- .Avr0,
- .Lpm,
- .Avr1,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny1634, "attiny1634", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny167, "attiny167", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny20, "attiny20", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny22, "attiny22", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny2313, "attiny2313", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny2313a, "attiny2313a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny24, "attiny24", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny24a, "attiny24a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny25, "attiny25", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny26, "attiny26", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- .Lpmx,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny261, "attiny261", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny261a, "attiny261a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny28, "attiny28", &[_]FeatureType {
- .Avr0,
- .Lpm,
- .Avr1,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny4, "attiny4", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny40, "attiny40", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny4313, "attiny4313", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny43u, "attiny43u", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny44, "attiny44", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny44a, "attiny44a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny45, "attiny45", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny461, "attiny461", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny461a, "attiny461a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny48, "attiny48", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny5, "attiny5", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny828, "attiny828", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny84, "attiny84", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny84a, "attiny84a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny85, "attiny85", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny861, "attiny861", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny861a, "attiny861a", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny87, "attiny87", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny88, "attiny88", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Attiny9, "attiny9", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128a1, "atxmega128a1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128a1u, "atxmega128a1u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128a3, "atxmega128a3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128a3u, "atxmega128a3u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128a4u, "atxmega128a4u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128b1, "atxmega128b1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128b3, "atxmega128b3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128c3, "atxmega128c3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128d3, "atxmega128d3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega128d4, "atxmega128d4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega16a4, "atxmega16a4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega16a4u, "atxmega16a4u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega16c4, "atxmega16c4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega16d4, "atxmega16d4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega16e5, "atxmega16e5", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega192a3, "atxmega192a3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega192a3u, "atxmega192a3u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega192c3, "atxmega192c3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega192d3, "atxmega192d3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega256a3, "atxmega256a3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega256a3b, "atxmega256a3b", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega256a3bu, "atxmega256a3bu", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega256a3u, "atxmega256a3u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega256c3, "atxmega256c3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega256d3, "atxmega256d3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega32a4, "atxmega32a4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega32a4u, "atxmega32a4u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega32c4, "atxmega32c4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega32d4, "atxmega32d4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega32e5, "atxmega32e5", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega32x1, "atxmega32x1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega384c3, "atxmega384c3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega384d3, "atxmega384d3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64a1, "atxmega64a1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64a1u, "atxmega64a1u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64a3, "atxmega64a3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64a3u, "atxmega64a3u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64a4u, "atxmega64a4u", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64b1, "atxmega64b1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64b3, "atxmega64b3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64c3, "atxmega64c3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Rmw,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmegau,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64d3, "atxmega64d3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega64d4, "atxmega64d4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Atxmega8e5, "atxmega8e5", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr1, "avr1", &[_]FeatureType {
- .Avr0,
- .Lpm,
- .Avr1,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr2, "avr2", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Ijmpcall,
- .Avr2,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr25, "avr25", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr25,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr3, "avr3", &[_]FeatureType {
- .Lpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr3,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr31, "avr31", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Ijmpcall,
- .Avr31,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr35, "avr35", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr35,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr4, "avr4", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr4,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr5, "avr5", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr51, "avr51", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr51,
- }),
- CpuInfo(@This(), FeatureType).create(.Avr6, "avr6", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr6,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrtiny, "avrtiny", &[_]FeatureType {
- .Avr0,
- .Sram,
- .Break,
- .Tinyencoding,
- .Avrtiny,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega1, "avrxmega1", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega2, "avrxmega2", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega3, "avrxmega3", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega4, "avrxmega4", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega5, "avrxmega5", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega6, "avrxmega6", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.Avrxmega7, "avrxmega7", &[_]FeatureType {
- .Lpm,
- .Elpm,
- .Movw,
- .Elpmx,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Eijmpcall,
- .Spmx,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Des,
- .Ijmpcall,
- .Break,
- .Xmega,
- }),
- CpuInfo(@This(), FeatureType).create(.M3000, "m3000", &[_]FeatureType {
- .Lpm,
- .Movw,
- .Spm,
- .Avr0,
- .Sram,
- .Jmpcall,
- .Addsubiw,
- .Mul,
- .Lpmx,
- .Ijmpcall,
- .Break,
- .Avr5,
- }),
- };
-};
diff --git a/lib/std/target/cpu/BpfCpu.zig b/lib/std/target/cpu/BpfCpu.zig
deleted file mode 100644
index 2faecd08bd..0000000000
--- a/lib/std/target/cpu/BpfCpu.zig
+++ /dev/null
@@ -1,29 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const BpfCpu = enum {
- Generic,
- Probe,
- V1,
- V2,
- V3,
-
- const FeatureType = feature.BpfFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Probe, "probe", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.V1, "v1", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.V2, "v2", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.V3, "v3", &[_]FeatureType {
- }),
- };
-};
diff --git a/lib/std/target/cpu/HexagonCpu.zig b/lib/std/target/cpu/HexagonCpu.zig
deleted file mode 100644
index 0287eb7acf..0000000000
--- a/lib/std/target/cpu/HexagonCpu.zig
+++ /dev/null
@@ -1,103 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const HexagonCpu = enum {
- Generic,
- Hexagonv5,
- Hexagonv55,
- Hexagonv60,
- Hexagonv62,
- Hexagonv65,
- Hexagonv66,
-
- const FeatureType = feature.HexagonFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- .V5,
- .V55,
- .V60,
- .Duplex,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- CpuInfo(@This(), FeatureType).create(.Hexagonv5, "hexagonv5", &[_]FeatureType {
- .V5,
- .Duplex,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- CpuInfo(@This(), FeatureType).create(.Hexagonv55, "hexagonv55", &[_]FeatureType {
- .V5,
- .V55,
- .Duplex,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- CpuInfo(@This(), FeatureType).create(.Hexagonv60, "hexagonv60", &[_]FeatureType {
- .V5,
- .V55,
- .V60,
- .Duplex,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- CpuInfo(@This(), FeatureType).create(.Hexagonv62, "hexagonv62", &[_]FeatureType {
- .V5,
- .V55,
- .V60,
- .V62,
- .Duplex,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- CpuInfo(@This(), FeatureType).create(.Hexagonv65, "hexagonv65", &[_]FeatureType {
- .V5,
- .V55,
- .V60,
- .V62,
- .V65,
- .Duplex,
- .Mem_noshuf,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- CpuInfo(@This(), FeatureType).create(.Hexagonv66, "hexagonv66", &[_]FeatureType {
- .V5,
- .V55,
- .V60,
- .V62,
- .V65,
- .V66,
- .Duplex,
- .Mem_noshuf,
- .Memops,
- .Packets,
- .Nvj,
- .Nvs,
- .SmallData,
- }),
- };
-};
diff --git a/lib/std/target/cpu/MipsCpu.zig b/lib/std/target/cpu/MipsCpu.zig
deleted file mode 100644
index 2462e6212c..0000000000
--- a/lib/std/target/cpu/MipsCpu.zig
+++ /dev/null
@@ -1,190 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const MipsCpu = enum {
- Mips1,
- Mips2,
- Mips3,
- Mips32,
- Mips32r2,
- Mips32r3,
- Mips32r5,
- Mips32r6,
- Mips4,
- Mips5,
- Mips64,
- Mips64r2,
- Mips64r3,
- Mips64r5,
- Mips64r6,
- Octeon,
- P5600,
-
- const FeatureType = feature.MipsFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Mips1, "mips1", &[_]FeatureType {
- .Mips1,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips2, "mips2", &[_]FeatureType {
- .Mips1,
- .Mips2,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips3, "mips3", &[_]FeatureType {
- .Mips3_32r2,
- .Fp64,
- .Gp64,
- .Mips1,
- .Mips3_32,
- .Mips3,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips32, "mips32", &[_]FeatureType {
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips32,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips32r2, "mips32r2", &[_]FeatureType {
- .Mips5_32r2,
- .Mips4_32r2,
- .Mips3_32r2,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips32r2,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips32r3, "mips32r3", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips32r3,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips32r5, "mips32r5", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips32r5,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips32r6, "mips32r6", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Abs2008,
- .Nan2008,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips32r6,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips4, "mips4", &[_]FeatureType {
- .Mips3_32r2,
- .Mips4_32r2,
- .Fp64,
- .Gp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips4,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips5, "mips5", &[_]FeatureType {
- .Mips5_32r2,
- .Mips4_32r2,
- .Mips3_32r2,
- .Gp64,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips5,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips64, "mips64", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Gp64,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips64,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips64r2, "mips64r2", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Gp64,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips64r2,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips64r3, "mips64r3", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Gp64,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips64r3,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips64r5, "mips64r5", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Gp64,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips64r5,
- }),
- CpuInfo(@This(), FeatureType).create(.Mips64r6, "mips64r6", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Nan2008,
- .Abs2008,
- .Mips4_32r2,
- .Fp64,
- .Gp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Mips64r6,
- }),
- CpuInfo(@This(), FeatureType).create(.Octeon, "octeon", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Gp64,
- .Fp64,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .Cnmips,
- .Mips64r2,
- }),
- CpuInfo(@This(), FeatureType).create(.P5600, "p5600", &[_]FeatureType {
- .Mips5_32r2,
- .Mips3_32r2,
- .Mips4_32r2,
- .Mips4_32,
- .Mips1,
- .Mips3_32,
- .P5600,
- }),
- };
-};
diff --git a/lib/std/target/cpu/Msp430Cpu.zig b/lib/std/target/cpu/Msp430Cpu.zig
deleted file mode 100644
index b64e5102a8..0000000000
--- a/lib/std/target/cpu/Msp430Cpu.zig
+++ /dev/null
@@ -1,24 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const Msp430Cpu = enum {
- Generic,
- Msp430,
- Msp430x,
-
- const FeatureType = feature.Msp430Feature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Msp430, "msp430", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Msp430x, "msp430x", &[_]FeatureType {
- .Ext,
- }),
- };
-};
diff --git a/lib/std/target/cpu/NvptxCpu.zig b/lib/std/target/cpu/NvptxCpu.zig
deleted file mode 100644
index 03f36e214c..0000000000
--- a/lib/std/target/cpu/NvptxCpu.zig
+++ /dev/null
@@ -1,85 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const NvptxCpu = enum {
- Sm_20,
- Sm_21,
- Sm_30,
- Sm_32,
- Sm_35,
- Sm_37,
- Sm_50,
- Sm_52,
- Sm_53,
- Sm_60,
- Sm_61,
- Sm_62,
- Sm_70,
- Sm_72,
- Sm_75,
-
- const FeatureType = feature.NvptxFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Sm_20, "sm_20", &[_]FeatureType {
- .Sm_20,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_21, "sm_21", &[_]FeatureType {
- .Sm_21,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_30, "sm_30", &[_]FeatureType {
- .Sm_30,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_32, "sm_32", &[_]FeatureType {
- .Ptx40,
- .Sm_32,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_35, "sm_35", &[_]FeatureType {
- .Sm_35,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_37, "sm_37", &[_]FeatureType {
- .Ptx41,
- .Sm_37,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_50, "sm_50", &[_]FeatureType {
- .Ptx40,
- .Sm_50,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_52, "sm_52", &[_]FeatureType {
- .Ptx41,
- .Sm_52,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_53, "sm_53", &[_]FeatureType {
- .Ptx42,
- .Sm_53,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_60, "sm_60", &[_]FeatureType {
- .Ptx50,
- .Sm_60,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_61, "sm_61", &[_]FeatureType {
- .Ptx50,
- .Sm_61,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_62, "sm_62", &[_]FeatureType {
- .Ptx50,
- .Sm_62,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_70, "sm_70", &[_]FeatureType {
- .Ptx60,
- .Sm_70,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_72, "sm_72", &[_]FeatureType {
- .Ptx61,
- .Sm_72,
- }),
- CpuInfo(@This(), FeatureType).create(.Sm_75, "sm_75", &[_]FeatureType {
- .Ptx63,
- .Sm_75,
- }),
- };
-};
diff --git a/lib/std/target/cpu/PowerPcCpu.zig b/lib/std/target/cpu/PowerPcCpu.zig
deleted file mode 100644
index 7e34cf52cb..0000000000
--- a/lib/std/target/cpu/PowerPcCpu.zig
+++ /dev/null
@@ -1,451 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const PowerPcCpu = enum {
- Cpu440,
- Cpu450,
- Cpu601,
- Cpu602,
- Cpu603,
- E603,
- Ev603,
- Cpu604,
- E604,
- Cpu620,
- Cpu7400,
- Cpu7450,
- Cpu750,
- Cpu970,
- A2,
- A2q,
- E500,
- E500mc,
- E5500,
- G3,
- G4,
- G4plus,
- G5,
- Generic,
- Ppc,
- Ppc32,
- Ppc64,
- Ppc64le,
- Pwr3,
- Pwr4,
- Pwr5,
- Pwr5x,
- Pwr6,
- Pwr6x,
- Pwr7,
- Pwr8,
- Pwr9,
-
- const FeatureType = feature.PowerPcFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Cpu440, "440", &[_]FeatureType {
- .Icbt,
- .Booke,
- .HardFloat,
- .Fres,
- .Frsqrte,
- .Isel,
- .Msync,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu450, "450", &[_]FeatureType {
- .Icbt,
- .Booke,
- .HardFloat,
- .Fres,
- .Frsqrte,
- .Isel,
- .Msync,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu601, "601", &[_]FeatureType {
- .HardFloat,
- .Fpu,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu602, "602", &[_]FeatureType {
- .HardFloat,
- .Fpu,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu603, "603", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.E603, "603e", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Ev603, "603ev", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu604, "604", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.E604, "604e", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu620, "620", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu7400, "7400", &[_]FeatureType {
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu7450, "7450", &[_]FeatureType {
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu750, "750", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.Cpu970, "970", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- .Fsqrt,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.A2, "a2", &[_]FeatureType {
- .Bit64,
- .Icbt,
- .Booke,
- .Cmpb,
- .HardFloat,
- .Fcpsgn,
- .Fpcvt,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Isel,
- .Ldbrx,
- .Lfiwax,
- .Mfocrf,
- .Recipprec,
- .Stfiwx,
- .SlowPopcntd,
- }),
- CpuInfo(@This(), FeatureType).create(.A2q, "a2q", &[_]FeatureType {
- .Bit64,
- .Icbt,
- .Booke,
- .Cmpb,
- .HardFloat,
- .Fcpsgn,
- .Fpcvt,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Isel,
- .Ldbrx,
- .Lfiwax,
- .Mfocrf,
- .Qpx,
- .Recipprec,
- .Stfiwx,
- .SlowPopcntd,
- }),
- CpuInfo(@This(), FeatureType).create(.E500, "e500", &[_]FeatureType {
- .Icbt,
- .Booke,
- .Isel,
- }),
- CpuInfo(@This(), FeatureType).create(.E500mc, "e500mc", &[_]FeatureType {
- .Icbt,
- .Booke,
- .Isel,
- .HardFloat,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.E5500, "e5500", &[_]FeatureType {
- .Bit64,
- .Icbt,
- .Booke,
- .Isel,
- .Mfocrf,
- .HardFloat,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.G3, "g3", &[_]FeatureType {
- .HardFloat,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.G4, "g4", &[_]FeatureType {
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.G4plus, "g4+", &[_]FeatureType {
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- }),
- CpuInfo(@This(), FeatureType).create(.G5, "g5", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- .Fsqrt,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- .HardFloat,
- }),
- CpuInfo(@This(), FeatureType).create(.Ppc, "ppc", &[_]FeatureType {
- .HardFloat,
- }),
- CpuInfo(@This(), FeatureType).create(.Ppc32, "ppc32", &[_]FeatureType {
- .HardFloat,
- }),
- CpuInfo(@This(), FeatureType).create(.Ppc64, "ppc64", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- .Fsqrt,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Ppc64le, "ppc64le", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Bpermd,
- .Cmpb,
- .DirectMove,
- .Extdiv,
- .Fcpsgn,
- .Fpcvt,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Htm,
- .Icbt,
- .Isel,
- .Ldbrx,
- .Lfiwax,
- .Mfocrf,
- .Power8Altivec,
- .Crypto,
- .Power8Vector,
- .Popcntd,
- .PartwordAtomics,
- .Recipprec,
- .Stfiwx,
- .TwoConstNr,
- .Vsx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr3, "pwr3", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr4, "pwr4", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fres,
- .Frsqrte,
- .Fsqrt,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr5, "pwr5", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr5x, "pwr5x", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Mfocrf,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr6, "pwr6", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Cmpb,
- .Fcpsgn,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Lfiwax,
- .Mfocrf,
- .Recipprec,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr6x, "pwr6x", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Cmpb,
- .Fcpsgn,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Lfiwax,
- .Mfocrf,
- .Recipprec,
- .Stfiwx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr7, "pwr7", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Bpermd,
- .Cmpb,
- .Extdiv,
- .Fcpsgn,
- .Fpcvt,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Isel,
- .Ldbrx,
- .Lfiwax,
- .Mfocrf,
- .Popcntd,
- .Recipprec,
- .Stfiwx,
- .TwoConstNr,
- .Vsx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr8, "pwr8", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Bpermd,
- .Cmpb,
- .DirectMove,
- .Extdiv,
- .Fcpsgn,
- .Fpcvt,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Htm,
- .Icbt,
- .Isel,
- .Ldbrx,
- .Lfiwax,
- .Mfocrf,
- .Power8Altivec,
- .Crypto,
- .Power8Vector,
- .Popcntd,
- .PartwordAtomics,
- .Recipprec,
- .Stfiwx,
- .TwoConstNr,
- .Vsx,
- }),
- CpuInfo(@This(), FeatureType).create(.Pwr9, "pwr9", &[_]FeatureType {
- .Bit64,
- .HardFloat,
- .Altivec,
- .Bpermd,
- .Cmpb,
- .DirectMove,
- .Extdiv,
- .Fcpsgn,
- .Fpcvt,
- .Fprnd,
- .Fre,
- .Fres,
- .Frsqrte,
- .Frsqrtes,
- .Fsqrt,
- .Htm,
- .Icbt,
- .IsaV30Instructions,
- .Isel,
- .Ldbrx,
- .Lfiwax,
- .Mfocrf,
- .Power8Altivec,
- .Crypto,
- .Power8Vector,
- .Power9Altivec,
- .Power9Vector,
- .Popcntd,
- .PpcPostraSched,
- .PpcPreraSched,
- .PartwordAtomics,
- .Recipprec,
- .Stfiwx,
- .TwoConstNr,
- .Vsx,
- .VectorsUseTwoUnits,
- }),
- };
-};
diff --git a/lib/std/target/cpu/RiscVCpu.zig b/lib/std/target/cpu/RiscVCpu.zig
deleted file mode 100644
index d191e04acf..0000000000
--- a/lib/std/target/cpu/RiscVCpu.zig
+++ /dev/null
@@ -1,23 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const RiscVCpu = enum {
- GenericRv32,
- GenericRv64,
-
- const FeatureType = feature.RiscVFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.GenericRv32, "generic-rv32", &[_]FeatureType {
- .RvcHints,
- }),
- CpuInfo(@This(), FeatureType).create(.GenericRv64, "generic-rv64", &[_]FeatureType {
- .Bit64,
- .RvcHints,
- }),
- };
-};
diff --git a/lib/std/target/cpu/SparcCpu.zig b/lib/std/target/cpu/SparcCpu.zig
deleted file mode 100644
index bd5dca79ca..0000000000
--- a/lib/std/target/cpu/SparcCpu.zig
+++ /dev/null
@@ -1,216 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const SparcCpu = enum {
- At697e,
- At697f,
- F934,
- Generic,
- Gr712rc,
- Gr740,
- Hypersparc,
- Leon2,
- Leon3,
- Leon4,
- Ma2080,
- Ma2085,
- Ma2100,
- Ma2150,
- Ma2155,
- Ma2450,
- Ma2455,
- Ma2480,
- Ma2485,
- Ma2x5x,
- Ma2x8x,
- Myriad2,
- Myriad21,
- Myriad22,
- Myriad23,
- Niagara,
- Niagara2,
- Niagara3,
- Niagara4,
- Sparclet,
- Sparclite,
- Sparclite86x,
- Supersparc,
- Tsc701,
- Ultrasparc,
- Ultrasparc3,
- Ut699,
- V7,
- V8,
- V9,
-
- const FeatureType = feature.SparcFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.At697e, "at697e", &[_]FeatureType {
- .Leon,
- .Insertnopload,
- }),
- CpuInfo(@This(), FeatureType).create(.At697f, "at697f", &[_]FeatureType {
- .Leon,
- .Insertnopload,
- }),
- CpuInfo(@This(), FeatureType).create(.F934, "f934", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Gr712rc, "gr712rc", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Gr740, "gr740", &[_]FeatureType {
- .Leon,
- .Leonpwrpsr,
- .Hasleoncasa,
- .Leoncyclecounter,
- .Hasumacsmac,
- }),
- CpuInfo(@This(), FeatureType).create(.Hypersparc, "hypersparc", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Leon2, "leon2", &[_]FeatureType {
- .Leon,
- }),
- CpuInfo(@This(), FeatureType).create(.Leon3, "leon3", &[_]FeatureType {
- .Leon,
- .Hasumacsmac,
- }),
- CpuInfo(@This(), FeatureType).create(.Leon4, "leon4", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- .Hasumacsmac,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2080, "ma2080", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2085, "ma2085", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2100, "ma2100", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2150, "ma2150", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2155, "ma2155", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2450, "ma2450", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2455, "ma2455", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2480, "ma2480", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2485, "ma2485", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2x5x, "ma2x5x", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Ma2x8x, "ma2x8x", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Myriad2, "myriad2", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Myriad21, "myriad2.1", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Myriad22, "myriad2.2", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Myriad23, "myriad2.3", &[_]FeatureType {
- .Leon,
- .Hasleoncasa,
- }),
- CpuInfo(@This(), FeatureType).create(.Niagara, "niagara", &[_]FeatureType {
- .DeprecatedV8,
- .V9,
- .Vis,
- .Vis2,
- }),
- CpuInfo(@This(), FeatureType).create(.Niagara2, "niagara2", &[_]FeatureType {
- .DeprecatedV8,
- .V9,
- .Vis,
- .Vis2,
- .Popc,
- }),
- CpuInfo(@This(), FeatureType).create(.Niagara3, "niagara3", &[_]FeatureType {
- .DeprecatedV8,
- .V9,
- .Vis,
- .Vis2,
- .Popc,
- }),
- CpuInfo(@This(), FeatureType).create(.Niagara4, "niagara4", &[_]FeatureType {
- .DeprecatedV8,
- .V9,
- .Vis,
- .Vis2,
- .Vis3,
- .Popc,
- }),
- CpuInfo(@This(), FeatureType).create(.Sparclet, "sparclet", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Sparclite, "sparclite", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Sparclite86x, "sparclite86x", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Supersparc, "supersparc", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Tsc701, "tsc701", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Ultrasparc, "ultrasparc", &[_]FeatureType {
- .DeprecatedV8,
- .V9,
- .Vis,
- }),
- CpuInfo(@This(), FeatureType).create(.Ultrasparc3, "ultrasparc3", &[_]FeatureType {
- .DeprecatedV8,
- .V9,
- .Vis,
- .Vis2,
- }),
- CpuInfo(@This(), FeatureType).create(.Ut699, "ut699", &[_]FeatureType {
- .Leon,
- .NoFmuls,
- .NoFsmuld,
- .Fixallfdivsqrt,
- .Insertnopload,
- }),
- CpuInfo(@This(), FeatureType).create(.V7, "v7", &[_]FeatureType {
- .NoFsmuld,
- .SoftMulDiv,
- }),
- CpuInfo(@This(), FeatureType).create(.V8, "v8", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.V9, "v9", &[_]FeatureType {
- .V9,
- }),
- };
-};
diff --git a/lib/std/target/cpu/SystemZCpu.zig b/lib/std/target/cpu/SystemZCpu.zig
deleted file mode 100644
index 7e5b21c858..0000000000
--- a/lib/std/target/cpu/SystemZCpu.zig
+++ /dev/null
@@ -1,279 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const SystemZCpu = enum {
- Arch10,
- Arch11,
- Arch12,
- Arch13,
- Arch8,
- Arch9,
- Generic,
- Z10,
- Z13,
- Z14,
- Z15,
- Z196,
- ZEC12,
-
- const FeatureType = feature.SystemZFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Arch10, "arch10", &[_]FeatureType {
- .DfpZonedConversion,
- .DistinctOps,
- .EnhancedDat2,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .HighWord,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadStoreOnCond,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MiscellaneousExtensions,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- }),
- CpuInfo(@This(), FeatureType).create(.Arch11, "arch11", &[_]FeatureType {
- .DfpPackedConversion,
- .DfpZonedConversion,
- .DistinctOps,
- .EnhancedDat2,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .HighWord,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadAndZeroRightmostByte,
- .LoadStoreOnCond,
- .LoadStoreOnCond2,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MessageSecurityAssistExtension5,
- .MiscellaneousExtensions,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- .Vector,
- }),
- CpuInfo(@This(), FeatureType).create(.Arch12, "arch12", &[_]FeatureType {
- .DfpPackedConversion,
- .DfpZonedConversion,
- .DistinctOps,
- .EnhancedDat2,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .GuardedStorage,
- .HighWord,
- .InsertReferenceBitsMultiple,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadAndZeroRightmostByte,
- .LoadStoreOnCond,
- .LoadStoreOnCond2,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MessageSecurityAssistExtension5,
- .MessageSecurityAssistExtension7,
- .MessageSecurityAssistExtension8,
- .MiscellaneousExtensions,
- .MiscellaneousExtensions2,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- .Vector,
- .VectorEnhancements1,
- .VectorPackedDecimal,
- }),
- CpuInfo(@This(), FeatureType).create(.Arch13, "arch13", &[_]FeatureType {
- .DfpPackedConversion,
- .DfpZonedConversion,
- .DeflateConversion,
- .DistinctOps,
- .EnhancedDat2,
- .EnhancedSort,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .GuardedStorage,
- .HighWord,
- .InsertReferenceBitsMultiple,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadAndZeroRightmostByte,
- .LoadStoreOnCond,
- .LoadStoreOnCond2,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MessageSecurityAssistExtension5,
- .MessageSecurityAssistExtension7,
- .MessageSecurityAssistExtension8,
- .MessageSecurityAssistExtension9,
- .MiscellaneousExtensions,
- .MiscellaneousExtensions2,
- .MiscellaneousExtensions3,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- .Vector,
- .VectorEnhancements1,
- .VectorEnhancements2,
- .VectorPackedDecimal,
- .VectorPackedDecimalEnhancement,
- }),
- CpuInfo(@This(), FeatureType).create(.Arch8, "arch8", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Arch9, "arch9", &[_]FeatureType {
- .DistinctOps,
- .FpExtension,
- .FastSerialization,
- .HighWord,
- .InterlockedAccess1,
- .LoadStoreOnCond,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .PopulationCount,
- .ResetReferenceBitsMultiple,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Z10, "z10", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Z13, "z13", &[_]FeatureType {
- .DfpPackedConversion,
- .DfpZonedConversion,
- .DistinctOps,
- .EnhancedDat2,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .HighWord,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadAndZeroRightmostByte,
- .LoadStoreOnCond,
- .LoadStoreOnCond2,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MessageSecurityAssistExtension5,
- .MiscellaneousExtensions,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- .Vector,
- }),
- CpuInfo(@This(), FeatureType).create(.Z14, "z14", &[_]FeatureType {
- .DfpPackedConversion,
- .DfpZonedConversion,
- .DistinctOps,
- .EnhancedDat2,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .GuardedStorage,
- .HighWord,
- .InsertReferenceBitsMultiple,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadAndZeroRightmostByte,
- .LoadStoreOnCond,
- .LoadStoreOnCond2,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MessageSecurityAssistExtension5,
- .MessageSecurityAssistExtension7,
- .MessageSecurityAssistExtension8,
- .MiscellaneousExtensions,
- .MiscellaneousExtensions2,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- .Vector,
- .VectorEnhancements1,
- .VectorPackedDecimal,
- }),
- CpuInfo(@This(), FeatureType).create(.Z15, "z15", &[_]FeatureType {
- .DfpPackedConversion,
- .DfpZonedConversion,
- .DeflateConversion,
- .DistinctOps,
- .EnhancedDat2,
- .EnhancedSort,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .GuardedStorage,
- .HighWord,
- .InsertReferenceBitsMultiple,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadAndZeroRightmostByte,
- .LoadStoreOnCond,
- .LoadStoreOnCond2,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MessageSecurityAssistExtension5,
- .MessageSecurityAssistExtension7,
- .MessageSecurityAssistExtension8,
- .MessageSecurityAssistExtension9,
- .MiscellaneousExtensions,
- .MiscellaneousExtensions2,
- .MiscellaneousExtensions3,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- .Vector,
- .VectorEnhancements1,
- .VectorEnhancements2,
- .VectorPackedDecimal,
- .VectorPackedDecimalEnhancement,
- }),
- CpuInfo(@This(), FeatureType).create(.Z196, "z196", &[_]FeatureType {
- .DistinctOps,
- .FpExtension,
- .FastSerialization,
- .HighWord,
- .InterlockedAccess1,
- .LoadStoreOnCond,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .PopulationCount,
- .ResetReferenceBitsMultiple,
- }),
- CpuInfo(@This(), FeatureType).create(.ZEC12, "zEC12", &[_]FeatureType {
- .DfpZonedConversion,
- .DistinctOps,
- .EnhancedDat2,
- .ExecutionHint,
- .FpExtension,
- .FastSerialization,
- .HighWord,
- .InterlockedAccess1,
- .LoadAndTrap,
- .LoadStoreOnCond,
- .MessageSecurityAssistExtension3,
- .MessageSecurityAssistExtension4,
- .MiscellaneousExtensions,
- .PopulationCount,
- .ProcessorAssist,
- .ResetReferenceBitsMultiple,
- .TransactionalExecution,
- }),
- };
-};
diff --git a/lib/std/target/cpu/WebAssemblyCpu.zig b/lib/std/target/cpu/WebAssemblyCpu.zig
deleted file mode 100644
index a05702dac1..0000000000
--- a/lib/std/target/cpu/WebAssemblyCpu.zig
+++ /dev/null
@@ -1,28 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const WebAssemblyCpu = enum {
- BleedingEdge,
- Generic,
- Mvp,
-
- const FeatureType = feature.WebAssemblyFeature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.BleedingEdge, "bleeding-edge", &[_]FeatureType {
- .Atomics,
- .MutableGlobals,
- .NontrappingFptoint,
- .Simd128,
- .SignExt,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Mvp, "mvp", &[_]FeatureType {
- }),
- };
-};
diff --git a/lib/std/target/cpu/X86Cpu.zig b/lib/std/target/cpu/X86Cpu.zig
deleted file mode 100644
index 0a3a15f347..0000000000
--- a/lib/std/target/cpu/X86Cpu.zig
+++ /dev/null
@@ -1,1864 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const X86Cpu = enum {
- Amdfam10,
- Athlon,
- Athlon4,
- AthlonFx,
- AthlonMp,
- AthlonTbird,
- AthlonXp,
- Athlon64,
- Athlon64Sse3,
- Atom,
- Barcelona,
- Bdver1,
- Bdver2,
- Bdver3,
- Bdver4,
- Bonnell,
- Broadwell,
- Btver1,
- Btver2,
- C3,
- C32,
- Cannonlake,
- Cascadelake,
- Cooperlake,
- CoreAvxI,
- CoreAvx2,
- Core2,
- Corei7,
- Corei7Avx,
- Generic,
- Geode,
- Goldmont,
- GoldmontPlus,
- Haswell,
- I386,
- I486,
- I586,
- I686,
- IcelakeClient,
- IcelakeServer,
- Ivybridge,
- K6,
- K62,
- K63,
- K8,
- K8Sse3,
- Knl,
- Knm,
- Lakemont,
- Nehalem,
- Nocona,
- Opteron,
- OpteronSse3,
- Penryn,
- Pentium,
- PentiumM,
- PentiumMmx,
- Pentium2,
- Pentium3,
- Pentium3m,
- Pentium4,
- Pentium4m,
- Pentiumpro,
- Prescott,
- Sandybridge,
- Silvermont,
- Skx,
- Skylake,
- SkylakeAvx512,
- Slm,
- Tigerlake,
- Tremont,
- Westmere,
- WinchipC6,
- Winchip2,
- X8664,
- Yonah,
- Znver1,
- Znver2,
-
- const FeatureType = feature.X86Feature;
-
- pub fn getInfo(self: @This()) CpuInfo(@This(), FeatureType) {
- return cpu_infos[@enumToInt(self)];
- }
-
- pub const cpu_infos = [@memberCount(@This())]CpuInfo(@This(), FeatureType) {
- CpuInfo(@This(), FeatureType).create(.Amdfam10, "amdfam10", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastScalarShiftMasks,
- .Sahf,
- .Lzcnt,
- .Nopl,
- .Popcnt,
- .Sse,
- .Sse4a,
- .SlowShld,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Athlon, "athlon", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Cmov,
- .Cx8,
- .Nopl,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Athlon4, "athlon-4", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Cmov,
- .Cx8,
- .Fxsr,
- .Nopl,
- .Sse,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.AthlonFx, "athlon-fx", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.AthlonMp, "athlon-mp", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Cmov,
- .Cx8,
- .Fxsr,
- .Nopl,
- .Sse,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.AthlonTbird, "athlon-tbird", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Cmov,
- .Cx8,
- .Nopl,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.AthlonXp, "athlon-xp", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Cmov,
- .Cx8,
- .Fxsr,
- .Nopl,
- .Sse,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Athlon64, "athlon64", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Athlon64Sse3, "athlon64-sse3", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse3,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Atom, "atom", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .LeaSp,
- .LeaUsesAg,
- .Mmx,
- .Movbe,
- .Nopl,
- .PadShortFunctions,
- .Sse,
- .Ssse3,
- .IdivlToDivb,
- .IdivqToDivl,
- .SlowTwoMemOps,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Barcelona, "barcelona", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastScalarShiftMasks,
- .Sahf,
- .Lzcnt,
- .Nopl,
- .Popcnt,
- .Sse,
- .Sse4a,
- .SlowShld,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Bdver1, "bdver1", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Branchfusion,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Fast11bytenop,
- .FastScalarShiftMasks,
- .Sahf,
- .Lwp,
- .Lzcnt,
- .Mmx,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .SlowShld,
- .X87,
- .Xop,
- .Xsave,
- }),
- CpuInfo(@This(), FeatureType).create(.Bdver2, "bdver2", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Bmi,
- .Branchfusion,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fma,
- .Fxsr,
- .Fast11bytenop,
- .FastBextr,
- .FastScalarShiftMasks,
- .Sahf,
- .Lwp,
- .Lzcnt,
- .Mmx,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .SlowShld,
- .Tbm,
- .X87,
- .Xop,
- .Xsave,
- }),
- CpuInfo(@This(), FeatureType).create(.Bdver3, "bdver3", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Bmi,
- .Branchfusion,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .Fast11bytenop,
- .FastBextr,
- .FastScalarShiftMasks,
- .Sahf,
- .Lwp,
- .Lzcnt,
- .Mmx,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .SlowShld,
- .Tbm,
- .X87,
- .Xop,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Bdver4, "bdver4", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Branchfusion,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .Fast11bytenop,
- .FastBextr,
- .FastScalarShiftMasks,
- .Sahf,
- .Lwp,
- .Lzcnt,
- .Mmx,
- .Mwaitx,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .SlowShld,
- .Tbm,
- .X87,
- .Xop,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Bonnell, "bonnell", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .LeaSp,
- .LeaUsesAg,
- .Mmx,
- .Movbe,
- .Nopl,
- .PadShortFunctions,
- .Sse,
- .Ssse3,
- .IdivlToDivb,
- .IdivqToDivl,
- .SlowTwoMemOps,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Broadwell, "broadwell", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Avx,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Cmov,
- .Cx8,
- .Cx16,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .FalseDepsLzcntTzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Rdrnd,
- .Rdseed,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Btver1, "btver1", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Fast15bytenop,
- .FastScalarShiftMasks,
- .FastVectorShiftMasks,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Nopl,
- .Popcnt,
- .Prfchw,
- .Sse,
- .Sse4a,
- .Ssse3,
- .SlowShld,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Btver2, "btver2", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Avx,
- .Bmi,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fxsr,
- .Fast15bytenop,
- .FastBextr,
- .FastHops,
- .FastLzcnt,
- .FastPartialYmmOrZmmWrite,
- .FastScalarShiftMasks,
- .FastVectorShiftMasks,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .Sse4a,
- .Ssse3,
- .SlowShld,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.C3, "c3", &[_]FeatureType {
- .Mmx,
- .Dnow3,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.C32, "c3-2", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Sse,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Cannonlake, "cannonlake", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .FastGather,
- .Avx512ifma,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sha,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Avx512vbmi,
- .Avx512vl,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Cascadelake, "cascadelake", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .FastGather,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdrnd,
- .Rdseed,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Avx512vl,
- .Avx512vnni,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Cooperlake, "cooperlake", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Avx512bf16,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .FastGather,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdrnd,
- .Rdseed,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Avx512vl,
- .Avx512vnni,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.CoreAvxI, "core-avx-i", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Avx,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Rdrnd,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .SlowUnalignedMem32,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.CoreAvx2, "core-avx2", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Avx,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Cmov,
- .Cx8,
- .Cx16,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .FalseDepsLzcntTzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Rdrnd,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Core2, "core2", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .Nopl,
- .Sse,
- .Ssse3,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Corei7, "corei7", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .Nopl,
- .Popcnt,
- .Sse,
- .Sse42,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Corei7Avx, "corei7-avx", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Avx,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .SlowUnalignedMem32,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Generic, "generic", &[_]FeatureType {
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Geode, "geode", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Goldmont, "goldmont", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Clflushopt,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fsgsbase,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Movbe,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Rdrnd,
- .Rdseed,
- .Sha,
- .Sse42,
- .Ssse3,
- .SlowIncdec,
- .SlowLea,
- .SlowTwoMemOps,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.GoldmontPlus, "goldmont-plus", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Clflushopt,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fsgsbase,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Movbe,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .Ptwrite,
- .Rdpid,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sha,
- .Sse42,
- .Ssse3,
- .SlowIncdec,
- .SlowLea,
- .SlowTwoMemOps,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Haswell, "haswell", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Avx,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Cmov,
- .Cx8,
- .Cx16,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .FalseDepsLzcntTzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Rdrnd,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.I386, "i386", &[_]FeatureType {
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.I486, "i486", &[_]FeatureType {
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.I586, "i586", &[_]FeatureType {
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.I686, "i686", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.IcelakeClient, "icelake-client", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Avx512bitalg,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .Gfni,
- .FastGather,
- .Avx512ifma,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdpid,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sha,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Vaes,
- .Avx512vbmi,
- .Avx512vbmi2,
- .Avx512vl,
- .Avx512vnni,
- .Vpclmulqdq,
- .Avx512vpopcntdq,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.IcelakeServer, "icelake-server", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Avx512bitalg,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .Gfni,
- .FastGather,
- .Avx512ifma,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pconfig,
- .Pku,
- .Popcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdpid,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sha,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Vaes,
- .Avx512vbmi,
- .Avx512vbmi2,
- .Avx512vl,
- .Avx512vnni,
- .Vpclmulqdq,
- .Avx512vpopcntdq,
- .Wbnoinvd,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Ivybridge, "ivybridge", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Avx,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Rdrnd,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .SlowUnalignedMem32,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.K6, "k6", &[_]FeatureType {
- .Cx8,
- .Mmx,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.K62, "k6-2", &[_]FeatureType {
- .Mmx,
- .Dnow3,
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.K63, "k6-3", &[_]FeatureType {
- .Mmx,
- .Dnow3,
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.K8, "k8", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.K8Sse3, "k8-sse3", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse3,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Knl, "knl", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx512f,
- .Bmi,
- .Bmi2,
- .Avx512cd,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512er,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastPartialYmmOrZmmWrite,
- .FastGather,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Nopl,
- .Pclmul,
- .Avx512pf,
- .Popcnt,
- .Prefetchwt1,
- .Prfchw,
- .Rdrnd,
- .Rdseed,
- .Slow3opsLea,
- .IdivqToDivl,
- .SlowIncdec,
- .SlowPmaddwd,
- .SlowTwoMemOps,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Knm, "knm", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx512f,
- .Bmi,
- .Bmi2,
- .Avx512cd,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512er,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastPartialYmmOrZmmWrite,
- .FastGather,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Nopl,
- .Pclmul,
- .Avx512pf,
- .Popcnt,
- .Prefetchwt1,
- .Prfchw,
- .Rdrnd,
- .Rdseed,
- .Slow3opsLea,
- .IdivqToDivl,
- .SlowIncdec,
- .SlowPmaddwd,
- .SlowTwoMemOps,
- .Avx512vpopcntdq,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Lakemont, "lakemont", &[_]FeatureType {
- }),
- CpuInfo(@This(), FeatureType).create(.Nehalem, "nehalem", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .Nopl,
- .Popcnt,
- .Sse,
- .Sse42,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Nocona, "nocona", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .Sse3,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Opteron, "opteron", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.OpteronSse3, "opteron-sse3", &[_]FeatureType {
- .Mmx,
- .Dnowa3,
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastScalarShiftMasks,
- .Nopl,
- .Sse,
- .Sse3,
- .SlowShld,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Penryn, "penryn", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .Nopl,
- .Sse,
- .Sse41,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentium, "pentium", &[_]FeatureType {
- .Cx8,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.PentiumM, "pentium-m", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.PentiumMmx, "pentium-mmx", &[_]FeatureType {
- .Cx8,
- .Mmx,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentium2, "pentium2", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentium3, "pentium3", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentium3m, "pentium3m", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentium4, "pentium4", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentium4m, "pentium4m", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .Sse2,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Pentiumpro, "pentiumpro", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Nopl,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Prescott, "prescott", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .Sse3,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Sandybridge, "sandybridge", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Avx,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .SlowUnalignedMem32,
- .X87,
- .Xsave,
- .Xsaveopt,
- }),
- CpuInfo(@This(), FeatureType).create(.Silvermont, "silvermont", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Movbe,
- .Nopl,
- .Sse,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Rdrnd,
- .Sse42,
- .Ssse3,
- .IdivqToDivl,
- .SlowIncdec,
- .SlowLea,
- .SlowPmulld,
- .SlowTwoMemOps,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Skx, "skx", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .FastGather,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdrnd,
- .Rdseed,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Avx512vl,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Skylake, "skylake", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Clflushopt,
- .Cmov,
- .Cx8,
- .Cx16,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .FastGather,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.SkylakeAvx512, "skylake-avx512", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .FastGather,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdrnd,
- .Rdseed,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Avx512vl,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Slm, "slm", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Movbe,
- .Nopl,
- .Sse,
- .Pclmul,
- .Popcnt,
- .FalseDepsPopcnt,
- .Prfchw,
- .Rdrnd,
- .Sse42,
- .Ssse3,
- .IdivqToDivl,
- .SlowIncdec,
- .SlowLea,
- .SlowPmulld,
- .SlowTwoMemOps,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Tigerlake, "tigerlake", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx,
- .Avx2,
- .Avx512f,
- .Avx512bitalg,
- .Bmi,
- .Bmi2,
- .Avx512bw,
- .Avx512cd,
- .Clflushopt,
- .Clwb,
- .Cmov,
- .Cx8,
- .Cx16,
- .Avx512dq,
- .Ermsb,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .FastShldRotate,
- .FastScalarFsqrt,
- .FastVariableShuffle,
- .FastVectorFsqrt,
- .Gfni,
- .FastGather,
- .Avx512ifma,
- .Invpcid,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Movdir64b,
- .Movdiri,
- .Macrofusion,
- .MergeToThreewayBranch,
- .Nopl,
- .Pclmul,
- .Pku,
- .Popcnt,
- .Prfchw,
- .Prefer256Bit,
- .Rdpid,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sha,
- .Shstk,
- .Sse42,
- .Slow3opsLea,
- .IdivqToDivl,
- .Vaes,
- .Avx512vbmi,
- .Avx512vbmi2,
- .Avx512vl,
- .Avx512vnni,
- .Avx512vp2intersect,
- .Vpclmulqdq,
- .Avx512vpopcntdq,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Tremont, "tremont", &[_]FeatureType {
- .Bit64,
- .Sse,
- .Aes,
- .Cldemote,
- .Clflushopt,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fsgsbase,
- .Fxsr,
- .Gfni,
- .Sahf,
- .Mmx,
- .Movbe,
- .Movdir64b,
- .Movdiri,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .Ptwrite,
- .Rdpid,
- .Rdrnd,
- .Rdseed,
- .Sgx,
- .Sha,
- .Sse42,
- .Ssse3,
- .SlowIncdec,
- .SlowLea,
- .SlowTwoMemOps,
- .Waitpkg,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Westmere, "westmere", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Cx16,
- .Fxsr,
- .Sahf,
- .Mmx,
- .Macrofusion,
- .Nopl,
- .Sse,
- .Pclmul,
- .Popcnt,
- .Sse42,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.WinchipC6, "winchip-c6", &[_]FeatureType {
- .Mmx,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Winchip2, "winchip2", &[_]FeatureType {
- .Mmx,
- .Dnow3,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.X8664, "x86-64", &[_]FeatureType {
- .Bit64,
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Macrofusion,
- .Nopl,
- .Sse,
- .Sse2,
- .Slow3opsLea,
- .SlowIncdec,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Yonah, "yonah", &[_]FeatureType {
- .Cmov,
- .Cx8,
- .Fxsr,
- .Mmx,
- .Nopl,
- .Sse,
- .Sse3,
- .SlowUnalignedMem16,
- .X87,
- }),
- CpuInfo(@This(), FeatureType).create(.Znver1, "znver1", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Branchfusion,
- .Clflushopt,
- .Clzero,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .Fast15bytenop,
- .FastBextr,
- .FastLzcnt,
- .FastScalarShiftMasks,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Mwaitx,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .Rdrnd,
- .Rdseed,
- .Sha,
- .Sse4a,
- .SlowShld,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- CpuInfo(@This(), FeatureType).create(.Znver2, "znver2", &[_]FeatureType {
- .Bit64,
- .Adx,
- .Sse,
- .Aes,
- .Avx2,
- .Bmi,
- .Bmi2,
- .Branchfusion,
- .Clflushopt,
- .Clwb,
- .Clzero,
- .Cmov,
- .Cx8,
- .Cx16,
- .F16c,
- .Fma,
- .Fsgsbase,
- .Fxsr,
- .Fast15bytenop,
- .FastBextr,
- .FastLzcnt,
- .FastScalarShiftMasks,
- .Sahf,
- .Lzcnt,
- .Mmx,
- .Movbe,
- .Mwaitx,
- .Nopl,
- .Pclmul,
- .Popcnt,
- .Prfchw,
- .Rdpid,
- .Rdrnd,
- .Rdseed,
- .Sha,
- .Sse4a,
- .SlowShld,
- .Wbnoinvd,
- .X87,
- .Xsave,
- .Xsavec,
- .Xsaveopt,
- .Xsaves,
- }),
- };
-};
diff --git a/lib/std/target/cpu/empty.zig b/lib/std/target/cpu/empty.zig
deleted file mode 100644
index e35eaaf41d..0000000000
--- a/lib/std/target/cpu/empty.zig
+++ /dev/null
@@ -1,6 +0,0 @@
-const feature = @import("std").target.feature;
-const CpuInfo = @import("std").target.cpu.CpuInfo;
-
-pub const EmptyCpu = struct {
- pub const cpu_infos = [0]CpuInfo(@This(), feature.EmptyFeature) {};
-};