| if (TARGET_64BIT) |
| ADD_TARGET_INFO ("target_arch", "x86_64"); |
| else |
| ADD_TARGET_INFO ("target_arch", "x86"); |
| |
| // features officially "stabilised" in rustc |
| if (TARGET_MMX) |
| ADD_TARGET_INFO ("target_feature", "mmx"); |
| if (TARGET_SSE) |
| ADD_TARGET_INFO ("target_feature", "sse"); |
| if (TARGET_SSE2) |
| ADD_TARGET_INFO ("target_feature", "sse2"); |
| if (TARGET_SSE3) |
| ADD_TARGET_INFO ("target_feature", "sse3"); |
| if (TARGET_SSSE3) |
| ADD_TARGET_INFO ("target_feature", "ssse3"); |
| if (TARGET_SSE4_1) |
| ADD_TARGET_INFO ("target_feature", "sse4.1"); |
| if (TARGET_SSE4_2) |
| ADD_TARGET_INFO ("target_feature", "sse4.2"); |
| if (TARGET_AES) |
| ADD_TARGET_INFO ("target_feature", "aes"); |
| if (TARGET_SHA) |
| ADD_TARGET_INFO ("target_feature", "sha"); |
| if (TARGET_AVX) |
| ADD_TARGET_INFO ("target_feature", "avx"); |
| if (TARGET_AVX2) |
| ADD_TARGET_INFO ("target_feature", "avx2"); |
| if (TARGET_AVX512F) |
| ADD_TARGET_INFO ("target_feature", "avx512f"); |
| if (TARGET_AVX512CD) |
| ADD_TARGET_INFO ("target_feature", "avx512cd"); |
| if (TARGET_AVX512DQ) |
| ADD_TARGET_INFO ("target_feature", "avx512dq"); |
| if (TARGET_AVX512BW) |
| ADD_TARGET_INFO ("target_feature", "avx512bw"); |
| if (TARGET_AVX512VL) |
| ADD_TARGET_INFO ("target_feature", "avx512vl"); |
| if (TARGET_AVX512VBMI) |
| ADD_TARGET_INFO ("target_feature", "avx512vbmi"); |
| if (TARGET_AVX512IFMA) |
| ADD_TARGET_INFO ("target_feature", "avx512ifma"); |
| if (TARGET_AVX512VPOPCNTDQ) |
| ADD_TARGET_INFO ("target_feature", "avx512vpopcntdq"); |
| if (TARGET_FMA) |
| ADD_TARGET_INFO ("target_feature", "fma"); |
| if (TARGET_RTM) |
| ADD_TARGET_INFO ("target_feature", "rtm"); |
| if (TARGET_SSE4A) |
| ADD_TARGET_INFO ("target_feature", "sse4a"); |
| if (TARGET_BMI) |
| { |
| ADD_TARGET_INFO ("target_feature", "bmi1"); |
| ADD_TARGET_INFO ("target_feature", "bmi"); |
| } |
| if (TARGET_BMI2) |
| ADD_TARGET_INFO ("target_feature", "bmi2"); |
| if (TARGET_LZCNT) |
| ADD_TARGET_INFO ("target_feature", "lzcnt"); |
| if (TARGET_TBM) |
| ADD_TARGET_INFO ("target_feature", "tbm"); |
| if (TARGET_POPCNT) |
| ADD_TARGET_INFO ("target_feature", "popcnt"); |
| if (TARGET_RDRND) |
| { |
| ADD_TARGET_INFO ("target_feature", "rdrand"); |
| ADD_TARGET_INFO ("target_feature", "rdrnd"); |
| } |
| if (TARGET_F16C) |
| ADD_TARGET_INFO ("target_feature", "f16c"); |
| if (TARGET_RDSEED) |
| ADD_TARGET_INFO ("target_feature", "rdseed"); |
| if (TARGET_ADX) |
| ADD_TARGET_INFO ("target_feature", "adx"); |
| if (TARGET_FXSR) |
| ADD_TARGET_INFO ("target_feature", "fxsr"); |
| if (TARGET_XSAVE) |
| ADD_TARGET_INFO ("target_feature", "xsave"); |
| if (TARGET_XSAVEOPT) |
| ADD_TARGET_INFO ("target_feature", "xsaveopt"); |
| if (TARGET_XSAVEC) |
| ADD_TARGET_INFO ("target_feature", "xsavec"); |
| if (TARGET_XSAVES) |
| ADD_TARGET_INFO ("target_feature", "xsaves"); |
| if (TARGET_VPCLMULQDQ) |
| { |
| ADD_TARGET_INFO ("target_feature", "pclmulqdq"); |
| ADD_TARGET_INFO ("target_feature", "vpclmulqdq"); |
| } |
| if (TARGET_CMPXCHG16B) |
| ADD_TARGET_INFO ("target_feature", "cmpxchg16b"); |
| if (TARGET_MOVBE) |
| ADD_TARGET_INFO ("target_feature", "movbe"); |