Hello! Apparently, not all Haswell processors have TSX. Attached patch removes PTA_RTM from default Haswell flags. PTA_HLX still makes sense for Haswell processors, since the prefix is ignored on non-TSX processors.
2014-05-08 Uros Bizjak <ubiz...@gmail.com> PR target/59952 * config/i386/i386.c (PTA_HASWELL): Remove PTA_RTM. Bootstrapped and regression tested on x86_64-pc-linux-gnu. The patch is committed on mainline, will be backported to all relevant release branches. Uros.
Index: config/i386/i386.c =================================================================== --- config/i386/i386.c (revision 210231) +++ config/i386/i386.c (working copy) @@ -3130,7 +3130,7 @@ ix86_option_override_internal (bool main_args_p, (PTA_SANDYBRIDGE | PTA_FSGSBASE | PTA_RDRND | PTA_F16C) #define PTA_HASWELL \ (PTA_IVYBRIDGE | PTA_AVX2 | PTA_BMI | PTA_BMI2 | PTA_LZCNT \ - | PTA_FMA | PTA_MOVBE | PTA_RTM | PTA_HLE) + | PTA_FMA | PTA_MOVBE | PTA_HLE) #define PTA_BROADWELL \ (PTA_HASWELL | PTA_ADX | PTA_PRFCHW | PTA_RDSEED) #define PTA_BONNELL \