{ "microarchitectures": { "x86": { "from": [], "vendor": "generic", "features": [] }, "i686": { "from": ["x86"], "vendor": "GenuineIntel", "features": [] }, "pentium2": { "from": ["i686"], "vendor": "GenuineIntel", "features": [ "mmx" ] }, "pentium3": { "from": ["pentium2"], "vendor": "GenuineIntel", "features": [ "mmx", "sse" ] }, "pentium4": { "from": ["pentium3"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2" ] }, "prescott": { "from": ["pentium4"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "sse3" ] }, "x86_64": { "from": [], "vendor": "generic", "features": [], "compilers": { "gcc": [ { "versions": "4.2.0:", "name": "x86-64", "flags": "-march={name} -mtune=generic" }, { "versions": ":4.1.2", "name": "x86-64", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": ":", "name": "x86-64", "flags": "-march={name}" } ], "clang": [ { "versions": ":", "name": "x86-64", "flags": "-march={name} -mtune=generic" } ], "aocc": [ { "versions": "2.2:", "name": "x86-64", "flags": "-march={name} -mtune=generic" } ], "intel": [ { "versions": ":", "name": "pentium4", "flags": "-march={name} -mtune=generic" } ] } }, "nocona": { "from": ["x86_64"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "sse3" ], "compilers": { "gcc": [ { "versions": "4.0.4:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune=generic" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "name": "pentium4", "flags": "-march={name} -mtune=generic" } ] } }, "core2": { "from": ["nocona"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3" ], "compilers": { "gcc": [ { "versions": "4.3.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune=generic" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "flags": "-march={name} -mtune={name}}" } ] } }, "nehalem": { "from": ["core2"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt" ], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-march={name} -mtune={name}" }, { "versions": "4.6:4.8.5", "name": "corei7", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune=generic" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "name": "corei7", "flags": "-march={name} -mtune={name}" } ] } }, "westmere": { "from": ["nehalem"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq" ], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune=generic" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "name": "corei7", "flags": "-march={name} -mtune={name}" } ] } }, "sandybridge": { "from": ["westmere"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx" ], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-march={name} -mtune={name}" }, { "versions": "4.6:4.8.5", "name": "corei7-avx", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:17.9.0", "name": "corei7-avx", "flags": "-march={name} -mtune={name}" }, { "versions": "18.0:", "flags": "-march={name} -mtune={name}" } ] } }, "ivybridge": { "from": ["sandybridge"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c" ], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-march={name} -mtune={name}" }, { "versions": "4.6:4.8.5", "name": "core-avx-i", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:17.9.0", "name": "core-avx-i", "flags": "-march={name} -mtune={name}" }, { "versions": "18.0:", "flags": "-march={name} -mtune={name}" } ] } }, "haswell": { "from": ["ivybridge"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2" ], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-march={name} -mtune={name}" }, { "versions": "4.8:4.8.5", "name": "core-avx2", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:17.9.0", "name": "core-avx2", "flags": "-march={name} -mtune={name}" }, { "versions": "18.0:", "flags": "-march={name} -mtune={name}" } ] } }, "broadwell": { "from": ["haswell"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx" ], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "18.0:", "flags": "-march={name} -mtune={name}" } ] } }, "skylake": { "from": ["broadwell"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx", "clflushopt", "xsavec", "xsaveopt" ], "compilers": { "gcc": [ { "versions": "6.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "18.0:", "flags": "-march={name} -mtune={name}" } ] } }, "mic_knl": { "from": ["broadwell"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "avx2", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx", "avx512f", "avx512pf", "avx512er", "avx512cd" ], "compilers": { "gcc": [ { "versions": "5.1:", "name": "knl", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "knl", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "knl", "flags": "-march={name} -mtune=generic" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "18.0:", "name": "knl", "flags": "-march={name} -mtune={name}" } ] } }, "skylake_avx512": { "from": ["skylake"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx", "clflushopt", "xsavec", "xsaveopt", "avx512f", "clwb", "avx512vl", "avx512bw", "avx512dq", "avx512cd" ], "compilers": { "gcc": [ { "name": "skylake-avx512", "versions": "6.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "skylake-avx512", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "skylake-avx512", "flags": "-march={name} -mtune=generic" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "18.0:", "name": "skylake-avx512", "flags": "-march={name} -mtune={name}" } ] } }, "cannonlake": { "from": ["skylake"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx", "clflushopt", "xsavec", "xsaveopt", "avx512f", "avx512vl", "avx512bw", "avx512dq", "avx512cd", "avx512vbmi", "avx512ifma", "sha", "umip" ], "compilers": { "gcc": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "18.0:", "flags": "-march={name} -mtune={name}" } ] } }, "cascadelake": { "from": ["skylake_avx512"], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx", "clflushopt", "xsavec", "xsaveopt", "avx512f", "clwb", "avx512vl", "avx512bw", "avx512dq", "avx512cd", "avx512_vnni" ], "compilers": { "gcc": [ { "versions": "9.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "11.0:", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "19.0:", "flags": "-march={name} -mtune={name}" } ] } }, "icelake": { "from": [ "cascadelake", "cannonlake" ], "vendor": "GenuineIntel", "features": [ "mmx", "sse", "sse2", "ssse3", "sse4_1", "sse4_2", "popcnt", "aes", "pclmulqdq", "avx", "rdrand", "f16c", "movbe", "fma", "avx2", "bmi1", "bmi2", "rdseed", "adx", "clflushopt", "xsavec", "xsaveopt", "avx512f", "avx512vl", "avx512bw", "avx512dq", "avx512cd", "avx512vbmi", "avx512ifma", "sha_ni", "umip", "clwb", "rdpid", "gfni", "avx512_vbmi2", "avx512_vpopcntdq", "avx512_bitalg", "avx512_vnni", "vpclmulqdq", "vaes" ], "compilers": { "gcc": [ { "name": "icelake-client", "versions": "8.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "7.0:", "name": "icelake-client", "flags": "-march={name} -mtune={name}" }, { "versions": "6.0:6.9", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "icelake-client", "flags": "-march={name} -mtune={name}" } ], "apple-clang": [ { "versions": "10.0.1:", "name": "icelake-client", "flags": "-march={name} -mtune={name}" }, { "versions": "10.0.0:10.0.99", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "18.0:", "name": "icelake-client", "flags": "-march={name} -mtune={name}" } ] } }, "k10": { "from": ["x86_64"], "vendor": "AuthenticAMD", "features": [ "mmx", "sse", "sse2", "sse4a", "abm", "cx16", "3dnow", "3dnowext" ], "compilers": { "gcc": [ { "name": "amdfam10", "versions": "4.3:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "amdfam10", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "amdfam10", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "flags": "-msse2" } ] } }, "bulldozer": { "from": ["x86_64"], "vendor": "AuthenticAMD", "features": [ "mmx", "sse", "sse2", "sse4a", "abm", "avx", "xop", "fma4", "aes", "pclmulqdq", "cx16", "ssse3", "sse4_1", "sse4_2" ], "compilers": { "gcc": [ { "name": "bdver1", "versions": "4.7:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "bdver1", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "bdver1", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "flags": "-msse3" } ] } }, "piledriver": { "from": ["bulldozer"], "vendor": "AuthenticAMD", "features": [ "mmx", "sse", "sse2", "sse4a", "abm", "avx", "xop", "fma4", "aes", "pclmulqdq", "cx16", "ssse3", "sse4_1", "sse4_2", "bmi1", "f16c", "fma", "tbm" ], "compilers": { "gcc": [ { "name": "bdver2", "versions": "4.7:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "bdver2", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "bdver2", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "flags": "-msse3" } ] } }, "steamroller": { "from": ["piledriver"], "vendor": "AuthenticAMD", "features": [ "mmx", "sse", "sse2", "sse4a", "abm", "avx", "xop", "fma4", "aes", "pclmulqdq", "cx16", "ssse3", "sse4_1", "sse4_2", "bmi1", "f16c", "fma", "fsgsbase", "tbm" ], "compilers": { "gcc": [ { "name": "bdver3", "versions": "4.8:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "bdver3", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "bdver3", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "flags": "-msse4.2" } ] } }, "excavator": { "from": ["steamroller"], "vendor": "AuthenticAMD", "features": [ "mmx", "sse", "sse2", "sse4a", "abm", "avx", "xop", "fma4", "aes", "pclmulqdq", "cx16", "ssse3", "sse4_1", "sse4_2", "bmi1", "f16c", "fma", "fsgsbase", "bmi2", "avx2", "movbe", "tbm" ], "compilers": { "gcc": [ { "name": "bdver4", "versions": "4.9:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "name": "bdver4", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "bdver4", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "name": "core-avx2", "flags": "-march={name} -mtune={name}" } ] } }, "zen": { "from": ["x86_64"], "vendor": "AuthenticAMD", "features": [ "bmi1", "bmi2", "f16c", "fma", "fsgsbase", "avx", "avx2", "rdseed", "clzero", "aes", "pclmulqdq", "cx16", "movbe", "mmx", "sse", "sse2", "sse4a", "ssse3", "sse4_1", "sse4_2", "abm", "xsavec", "xsaveopt", "clflushopt", "popcnt" ], "compilers": { "gcc": [ { "name": "znver1", "versions": "6.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "4.0:", "name": "znver1", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "znver1", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "name": "core-avx2", "flags": "-march={name} -mtune={name}" } ] } }, "zen2": { "from": ["zen"], "vendor": "AuthenticAMD", "features": [ "bmi1", "bmi2", "f16c", "fma", "fsgsbase", "avx", "avx2", "rdseed", "clzero", "aes", "pclmulqdq", "cx16", "movbe", "mmx", "sse", "sse2", "sse4a", "ssse3", "sse4_1", "sse4_2", "abm", "xsavec", "xsaveopt", "clflushopt", "popcnt", "clwb" ], "compilers": { "gcc": [ { "name": "znver2", "versions": "9.0:", "flags": "-march={name} -mtune={name}" } ], "clang": [ { "versions": "9.0:", "name": "znver2", "flags": "-march={name} -mtune={name}" } ], "aocc": [ { "versions": "2.2:", "name": "znver2", "flags": "-march={name} -mtune={name}" } ], "intel": [ { "versions": "16.0:", "warnings": "Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors", "name": "core-avx2", "flags": "-march={name} -mtune={name}" } ] } }, "ppc64": { "from": [], "vendor": "generic", "features": [], "compilers": { "gcc": [ { "name": "powerpc64", "versions": ":", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": ":", "flags": "-mcpu={name} -mtune={name}" } ] } }, "power7": { "from": ["ppc64"], "vendor": "IBM", "generation": 7, "features": [], "compilers": { "gcc": [ { "versions": "4.4:", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-mcpu={name} -mtune={name}" } ] } }, "power8": { "from": ["power7"], "vendor": "IBM", "generation": 8, "features": [], "compilers": { "gcc": [ { "versions": "4.9:", "flags": "-mcpu={name} -mtune={name}" }, { "versions": "4.8:4.8.5", "warnings": "Using GCC 4.8 to optimize for Power 8 might not work if you are not on Red Hat Enterprise Linux 7, where a custom backport of the feature has been done. Upstream support from GCC starts in version 4.9", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-mcpu={name} -mtune={name}" } ] } }, "power9": { "from": ["power8"], "vendor": "IBM", "generation": 9, "features": [], "compilers": { "gcc": [ { "versions": "6.0:", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "flags": "-mcpu={name} -mtune={name}" } ] } }, "ppc64le": { "from": [], "vendor": "generic", "features": [], "compilers": { "gcc": [ { "name": "powerpc64le", "versions": "4.8:", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": ":", "flags": "-mcpu={name} -mtune={name}" } ] } }, "power8le": { "from": ["ppc64le"], "vendor": "IBM", "generation": 8, "features": [], "compilers": { "gcc": [ { "versions": "4.9:", "name": "power8", "flags": "-mcpu={name} -mtune={name}" }, { "versions": "4.8:4.8.5", "warnings": "Using GCC 4.8 to optimize for Power 8 might not work if you are not on Red Hat Enterprise Linux 7, where a custom backport of the feature has been done. Upstream support from GCC starts in version 4.9", "name": "power8", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "family": "ppc64le", "name": "power8", "flags": "-mcpu={name} -mtune={name}" } ] } }, "power9le": { "from": ["power8le"], "vendor": "IBM", "generation": 9, "features": [], "compilers": { "gcc": [ { "name": "power9", "versions": "6.0:", "flags": "-mcpu={name} -mtune={name}" } ], "clang": [ { "versions": "3.9:", "family": "ppc64le", "name": "power9", "flags": "-mcpu={name} -mtune={name}" } ] } }, "aarch64": { "from": [], "vendor": "generic", "features": [], "compilers": { "gcc": [ { "versions": "4.8.0:", "flags": "-march=armv8-a -mtune=generic" } ], "clang": [ { "versions": ":", "flags": "-march=armv8-a -mtune=generic" } ] } }, "thunderx2": { "from": ["aarch64"], "vendor": "Cavium", "features": [ "fp", "asimd", "evtstrm", "aes", "pmull", "sha1", "sha2", "crc32", "atomics", "cpuid", "asimdrdm" ], "compilers": { "gcc": [ { "versions": "4.8:4.8.9", "flags": "-march=armv8-a" }, { "versions": "4.9:5.9", "flags": "-march=armv8-a+crc+crypto" }, { "versions": "6:6.9", "flags": "-march=armv8.1-a+crc+crypto" }, { "versions": "7:", "flags": "-mcpu=thunderx2t99" } ], "clang": [ { "versions": "3.9:4.9", "flags": "-march=armv8.1-a+crc+crypto" }, { "versions": "5:", "flags": "-mcpu=thunderx2t99" } ] } }, "a64fx": { "from": ["aarch64"], "vendor": "Fujitsu", "features": [ "fp", "asimd", "evtstrm", "aes", "pmull", "sha1", "sha2", "crc32", "atomics", "cpuid", "asimdrdm", "fphp", "asimdhp", "fcma", "dcpop", "sve" ], "compilers": { "gcc": [ { "versions": "4.8:4.8.9", "flags": "-march=armv8-a" }, { "versions": "4.9:5.9", "flags": "-march=armv8-a+crc+crypto" }, { "versions": "6:6.9", "flags": "-march=armv8.1-a+crc+crypto" }, { "versions": "7:7.9", "flags": "-march=armv8.2-a+crc+crypto+fp16" }, { "versions": "8:", "flags": "-march=armv8.2-a+crc+aes+sha2+fp16+sve -msve-vector-bits=512" } ], "clang": [ { "versions": "3.9:4.9", "flags": "-march=armv8.2-a+crc+crypto+fp16" }, { "versions": "5:", "flags": "-march=armv8.2-a+crc+crypto+fp16+sve" } ] } }, "graviton": { "from": ["aarch64"], "vendor": "ARM", "features": [ "fp", "asimd", "evtstrm", "aes", "pmull", "sha1", "sha2", "crc32", "cpuid" ], "compilers" : { "gcc": [ { "versions": "4.8:4.8.9", "flags" : "-march=armv8-a" }, { "versions": "4.9:5.9", "flags" : "-march=armv8-a+crc+crypto" }, { "versions": "6:", "flags" : "-march=armv8-a+crc+crypto -mtune=cortex-a72" } ], "clang" : [ { "versions": "3.9:", "flags" : "-march=armv8-a+crc+crypto" } ] } }, "graviton2": { "from": ["aarch64"], "vendor": "ARM", "features": [ "fp", "asimd", "evtstrm", "aes", "pmull", "sha1", "sha2", "crc32", "atomics", "fphp", "asimdhp", "cpuid", "asimdrdm", "lrcpc", "dcpop", "asimddp", "ssbs" ], "compilers" : { "gcc": [ { "versions": "4.8:4.8.9", "flags": "-march=armv8-a" }, { "versions": "4.9:5.9", "flags": "-march=armv8-a+crc+crypto" }, { "versions": "6:6.9", "flags" : "-march=armv8.1-a" }, { "versions": "7:7.9", "flags" : "-march=armv8.2-a+fp16 -mtune=cortex-a72" }, { "versions": "8.0:8.0", "flags" : "-march=armv8.2-a+fp16+dotprod+crypto -mtune=cortex-a72" }, { "versions": "8.1:8.9", "flags" : "-march=armv8.2-a+fp16+rcpc+dotprod+crypto -mtune=cortex-a72" }, { "versions": "9.0:", "flags" : "-march=armv8.2-a+fp16+rcpc+dotprod+crypto -mtune=neoverse-n1" } ], "clang" : [ { "versions": "3.9:4.9", "flags" : "-march=armv8.2-a+fp16+crc+crypto" }, { "versions": "5:", "flags" : "-march=armv8.2-a+fp16+rcpc+dotprod+crypto" } ] } }, "arm": { "from": [], "vendor": "generic", "features": [], "compilers": { "clang": [ { "versions": ":", "family": "arm", "flags": "-march={family} -mcpu=generic" } ] } }, "ppc": { "from": [], "vendor": "generic", "features": [], "compilers": { } }, "ppcle": { "from": [], "vendor": "generic", "features": [], "compilers": { } }, "sparc": { "from": [], "vendor": "generic", "features": [], "compilers": { } }, "sparc64": { "from": [], "vendor": "generic", "features": [], "compilers": { } } }, "feature_aliases": { "sse3": { "reason": "ssse3 is a superset of sse3 and might be the only one listed", "any_of": [ "ssse3" ] }, "avx512": { "reason": "avx512 indicates generic support for any of the avx512 instruction sets", "any_of": [ "avx512f", "avx512vl", "avx512bw", "avx512dq", "avx512cd" ] }, "altivec": { "reason": "altivec is supported by Power PC architectures, but might not be listed in features", "families": [ "ppc64le", "ppc64" ] }, "vsx": { "reason": "VSX alitvec extensions are supported by PowerISA from v2.06 (Power7+), but might not be listed in features", "families": [ "ppc64le", "ppc64" ] }, "fma": { "reason": "FMA has been supported by PowerISA since Power1, but might not be listed in features", "families": [ "ppc64le", "ppc64" ] }, "sse4.1": { "reason": "permits to refer to sse4_1 also as sse4.1", "any_of": [ "sse4_1" ] }, "sse4.2": { "reason": "permits to refer to sse4_2 also as sse4.2", "any_of": [ "sse4_2" ] }, "neon": { "reason": "NEON is required in all standard ARMv8 implementations", "families": [ "aarch64" ] } }, "conversions": { "description": "Conversions that map some platform specific values to canonical values", "arm_vendors": { "0x41": "ARM", "0x42": "Broadcom", "0x43": "Cavium", "0x44": "DEC", "0x46": "Fujitsu", "0x48": "HiSilicon", "0x49": "Infineon Technologies AG", "0x4d": "Motorola", "0x4e": "Nvidia", "0x50": "APM", "0x51": "Qualcomm", "0x53": "Samsung", "0x56": "Marvell", "0x61": "Apple", "0x66": "Faraday", "0x68": "HXT", "0x69": "Intel" }, "darwin_flags": { "sse4.1": "sse4_1", "sse4.2": "sse4_2", "avx1.0": "avx", "clfsopt": "clflushopt", "xsave": "xsavec xsaveopt" } } }