rcpufetch 0.0.5

[ALPHA] A rusty crossplatform, but simple CLI binutil for reading CPU information.
#![allow(dead_code)] // exactly one of these tables is used per target_arch build
// Generated from cpufetch's src/arm/uarch.c (MIDR implementer+part[+variant+revision] -> uarch name)
pub type Entry = (
    u8,
    u32,
    Option<u32>,
    Option<u32>,
    &'static str,
    &'static str,
);
pub static ARM_UARCH: &[Entry] = &[
    (b'A', 0xB36, None, None, "ARM1136", "ARM"),
    (b'A', 0xB56, None, None, "ARM1156", "ARM"),
    (b'A', 0xB76, None, None, "ARM1176", "ARM"),
    (b'A', 0xB02, None, None, "ARM11 MPCore", "ARM"),
    (b'A', 0xC05, None, None, "Cortex-A5", "ARM"),
    (b'A', 0xC07, None, None, "Cortex-A7", "ARM"),
    (b'A', 0xC08, None, None, "Cortex-A8", "ARM"),
    (b'A', 0xC09, None, None, "Cortex-A9", "ARM"),
    (b'A', 0xC0C, None, None, "Cortex-A12", "ARM"),
    (b'A', 0xC0E, None, None, "Cortex-A17", "ARM"),
    (b'A', 0xC0D, None, None, "Cortex-A12", "ARM"),
    (b'A', 0xC0F, None, None, "Cortex-A15", "ARM"),
    (b'A', 0xD01, None, None, "Cortex-A32", "ARM"),
    (b'A', 0xD03, None, None, "Cortex-A53", "ARM"),
    (b'A', 0xD04, None, None, "Cortex-A35", "ARM"),
    (b'A', 0xD05, None, Some(0), "Cortex-A55", "ARM"),
    (b'A', 0xD05, None, None, "Cortex-A55", "ARM"),
    (b'A', 0xD06, None, None, "Cortex-A65", "ARM"),
    (b'A', 0xD07, None, None, "Cortex-A57", "ARM"),
    (b'A', 0xD08, None, None, "Cortex-A72", "ARM"),
    (b'A', 0xD09, None, None, "Cortex-A73", "ARM"),
    (b'A', 0xD0A, None, None, "Cortex-A75", "ARM"),
    (b'A', 0xD0B, None, None, "Cortex-A76", "ARM"),
    (b'A', 0xD0C, None, None, "Neoverse N1", "ARM"),
    (b'A', 0xD0D, None, None, "Cortex-A77", "ARM"),
    (b'A', 0xD0E, None, None, "Cortex-A76", "ARM"),
    (b'A', 0xD40, None, None, "Neoverse V1", "ARM"),
    (b'A', 0xD41, None, None, "Cortex-A78", "ARM"),
    (b'A', 0xD42, None, None, "Cortex-A78AE", "ARM"),
    (b'A', 0xD44, None, None, "Cortex-X1", "ARM"),
    (b'A', 0xD46, None, None, "Cortex‑A510", "ARM"),
    (b'A', 0xD47, None, None, "Cortex‑A710", "ARM"),
    (b'A', 0xD48, None, None, "Cortex-X2", "ARM"),
    (b'A', 0xD49, None, None, "Neoverse N2", "ARM"),
    (b'A', 0xD4A, None, None, "Neoverse E1", "ARM"),
    (b'A', 0xD4B, None, None, "Cortex-A78C", "ARM"),
    (b'A', 0xD4C, None, None, "Cortex-X1C", "ARM"),
    (b'A', 0xD4D, None, None, "Cortex-A715", "ARM"),
    (b'A', 0xD4E, None, None, "Cortex-X3", "ARM"),
    (b'A', 0xD4F, None, None, "Neoverse V2", "ARM"),
    (b'A', 0xD80, None, None, "Cortex-A520", "ARM"),
    (b'A', 0xD81, None, None, "Cortex-A720", "ARM"),
    (b'A', 0xD82, None, None, "Cortex-X4", "ARM"),
    (b'A', 0xD84, None, None, "Neoverse V3", "ARM"),
    (b'A', 0xD85, None, None, "Cortex-X925", "ARM"),
    (b'A', 0xD87, None, None, "Cortex-A725", "ARM"),
    (b'B', 0x00F, None, None, "Brahma B15", "BROADCOM"),
    (b'B', 0x100, None, None, "Brahma B53", "BROADCOM"),
    (b'B', 0x516, None, None, "ThunderX2", "CAVIUM"),
    (b'C', 0x0A0, None, None, "ThunderX", "CAVIUM"),
    (b'C', 0x0A1, None, None, "ThunderX 88XX", "CAVIUM"),
    (b'C', 0x0A2, None, None, "ThunderX 81XX", "CAVIUM"),
    (b'C', 0x0A3, None, None, "ThunderX 81XX", "CAVIUM"),
    (b'C', 0x0AF, None, None, "ThunderX2 99XX", "CAVIUM"),
    (b'H', 0xD01, None, None, "TaiShan v110", "HUAWEI"),
    (b'H', 0xD02, Some(2), Some(2), "TaiShan v120", "HUAWEI"),
    (b'H', 0xD02, None, None, "TaiShan v200", "HUAWEI"),
    (b'H', 0xD40, None, None, "Cortex-A76", "ARM"),
    (b'H', 0xD42, None, None, "TaiShan v120", "HUAWEI"),
    (b'N', 0x000, None, None, "Denver", "NVIDIA"),
    (b'N', 0x003, None, None, "Denver2", "NVIDIA"),
    (b'N', 0x004, None, None, "Carmel", "NVIDIA"),
    (b'P', 0x000, None, None, "Xgene", "APM"),
    (b'Q', 0x00F, None, None, "Scorpion", "QUALCOMM"),
    (b'Q', 0x02D, None, None, "Scorpion", "QUALCOMM"),
    (b'Q', 0x04D, Some(1), Some(0), "Krait 200", "QUALCOMM"),
    (b'Q', 0x04D, Some(1), Some(4), "Krait 200", "QUALCOMM"),
    (b'Q', 0x04D, Some(2), Some(0), "Krait 300", "QUALCOMM"),
    (b'Q', 0x06F, Some(0), Some(1), "Krait 200", "QUALCOMM"),
    (b'Q', 0x06F, Some(0), Some(2), "Krait 200", "QUALCOMM"),
    (b'Q', 0x06F, Some(1), Some(0), "Krait 300", "QUALCOMM"),
    (b'Q', 0x06F, Some(2), Some(0), "Krait 400", "QUALCOMM"),
    (b'Q', 0x06F, Some(2), Some(1), "Krait 400", "QUALCOMM"),
    (b'Q', 0x06F, Some(3), Some(1), "Krait 450", "QUALCOMM"),
    (b'Q', 0x201, None, None, "Kryo Silver", "QUALCOMM"),
    (b'Q', 0x205, None, None, "Kryo Gold", "QUALCOMM"),
    (b'Q', 0x211, None, None, "Kryo Silver", "QUALCOMM"),
    (b'Q', 0x800, Some(10), None, "Kryo 260 / 280 Gold", "ARM"),
    (b'Q', 0x801, Some(10), None, "Kryo 260 / 280 Silver", "ARM"),
    (b'Q', 0x802, None, None, "Kryo 385 Gold", "ARM"),
    (b'Q', 0x803, None, None, "Kryo 385 Silver", "ARM"),
    (b'Q', 0x804, None, None, "Kryo 485 Gold", "ARM"),
    (b'Q', 0x805, None, None, "Kryo 485 Silver", "ARM"),
    (b'Q', 0xC00, None, None, "Falkor", "QUALCOMM"),
    (b'Q', 0xC01, None, None, "Saphira", "QUALCOMM"),
    (b'S', 0x001, Some(1), None, "Exynos M1", "SAMSUNG"),
    (b'S', 0x001, Some(4), None, "Exynos M2", "SAMSUNG"),
    (b'S', 0x002, Some(1), None, "Exynos M3", "SAMSUNG"),
    (b'S', 0x003, Some(1), None, "Exynos M4", "SAMSUNG"),
    (b'S', 0x004, Some(1), None, "Exynos M5", "SAMSUNG"),
    (b'p', 0x663, Some(1), None, "Xiaomi", "PHYTIUM"),
    (b'a', 0x022, None, None, "Icestorm", "APPLE"),
    (b'a', 0x023, None, None, "Firestorm", "APPLE"),
    (b'a', 0x024, None, None, "Icestorm", "APPLE"),
    (b'a', 0x025, None, None, "Firestorm", "APPLE"),
    (b'a', 0x030, None, None, "Blizzard", "APPLE"),
    (b'a', 0x031, None, None, "Avalanche", "APPLE"),
    (b'a', 0x048, None, None, "Sawtooth", "APPLE"),
    (b'a', 0x049, None, None, "Everest", "APPLE"),
    (b'V', 0x581, None, None, "PJ4", "MARVELL"),
    (b'V', 0x584, None, None, "PJ4B-MP", "MARVELL"),
];