1 // This is a generated file. DO NOT EDIT. 2 // Please see util/x86simdgen/generate.pl 3 #include "qsimd_p.h" 4 5 static const char features_string[] = 6 " sse2\0" 7 " sse3\0" 8 " ssse3\0" 9 " fma\0" 10 " sse4.1\0" 11 " sse4.2\0" 12 " movbe\0" 13 " popcnt\0" 14 " aes\0" 15 " avx\0" 16 " f16c\0" 17 " rdrnd\0" 18 " bmi\0" 19 " hle\0" 20 " avx2\0" 21 " bmi2\0" 22 " rtm\0" 23 " avx512f\0" 24 " avx512dq\0" 25 " rdseed\0" 26 " avx512ifma\0" 27 " avx512pf\0" 28 " avx512er\0" 29 " avx512cd\0" 30 " sha\0" 31 " avx512bw\0" 32 " avx512vl\0" 33 " avx512vbmi\0" 34 " avx512vbmi2\0" 35 " gfni\0" 36 " vaes\0" 37 " avx512vnni\0" 38 " avx512bitalg\0" 39 " avx512vpopcntdq\0" 40 " avx5124nniw\0" 41 " avx5124fmaps\0" 42 "\0"; 43 44 static const quint16 features_indices[] = { 45 306, 0, 6, 12, 19, 24, 32, 40, 46 47, 55, 60, 65, 71, 78, 83, 88, 47 94, 100, 105, 114, 124, 132, 144, 154, 48 164, 174, 179, 189, 199, 211, 224, 230, 49 236, 248, 262, 279, 292 50 }; 51 52 enum X86CpuidLeaves { 53 Leaf1ECX, 54 Leaf1EDX, 55 Leaf7_0EBX, 56 Leaf7_0ECX, 57 Leaf7_0EDX, 58 X86CpuidMaxLeaf 59 }; 60 61 static const quint8 x86_locators[] = { 62 Leaf1EDX*32 + 26, // sse2 63 Leaf1ECX*32 + 0, // sse3 64 Leaf1ECX*32 + 9, // ssse3 65 Leaf1ECX*32 + 12, // fma 66 Leaf1ECX*32 + 19, // sse4.1 67 Leaf1ECX*32 + 20, // sse4.2 68 Leaf1ECX*32 + 22, // movbe 69 Leaf1ECX*32 + 23, // popcnt 70 Leaf1ECX*32 + 25, // aes 71 Leaf1ECX*32 + 28, // avx 72 Leaf1ECX*32 + 29, // f16c 73 Leaf1ECX*32 + 30, // rdrnd 74 Leaf7_0EBX*32 + 3, // bmi 75 Leaf7_0EBX*32 + 4, // hle 76 Leaf7_0EBX*32 + 5, // avx2 77 Leaf7_0EBX*32 + 8, // bmi2 78 Leaf7_0EBX*32 + 11, // rtm 79 Leaf7_0EBX*32 + 16, // avx512f 80 Leaf7_0EBX*32 + 17, // avx512dq 81 Leaf7_0EBX*32 + 18, // rdseed 82 Leaf7_0EBX*32 + 21, // avx512ifma 83 Leaf7_0EBX*32 + 26, // avx512pf 84 Leaf7_0EBX*32 + 27, // avx512er 85 Leaf7_0EBX*32 + 28, // avx512cd 86 Leaf7_0EBX*32 + 29, // sha 87 Leaf7_0EBX*32 + 30, // avx512bw 88 Leaf7_0EBX*32 + 31, // avx512vl 89 Leaf7_0ECX*32 + 1, // avx512vbmi 90 Leaf7_0ECX*32 + 6, // avx512vbmi2 91 Leaf7_0ECX*32 + 8, // gfni 92 Leaf7_0ECX*32 + 9, // vaes 93 Leaf7_0ECX*32 + 11, // avx512vnni 94 Leaf7_0ECX*32 + 12, // avx512bitalg 95 Leaf7_0ECX*32 + 14, // avx512vpopcntdq 96 Leaf7_0EDX*32 + 2, // avx5124nniw 97 Leaf7_0EDX*32 + 3 // avx5124fmaps 98 }; 99 100 // List of AVX512 features (see detectProcessorFeatures()) 101 static const quint64 AllAVX512 = 0 102 | CpuFeatureAVX512F 103 | CpuFeatureAVX512DQ 104 | CpuFeatureAVX512IFMA 105 | CpuFeatureAVX512PF 106 | CpuFeatureAVX512ER 107 | CpuFeatureAVX512CD 108 | CpuFeatureAVX512BW 109 | CpuFeatureAVX512VL 110 | CpuFeatureAVX512VBMI 111 | CpuFeatureAVX512VBMI2 112 | CpuFeatureAVX512VNNI 113 | CpuFeatureAVX512BITALG 114 | CpuFeatureAVX512VPOPCNTDQ 115 | CpuFeatureAVX5124NNIW 116 | CpuFeatureAVX5124FMAPS; 117