https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68583
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Wed Dec 9 13:30:41 2015 New Revision: 231453 URL: https://gcc.gnu.org/viewcvs?rev=231453&root=gcc&view=rev Log: 2015-12-09 Richard Biener <rguent...@suse.de> PR tree-optimization/68583 * tree-if-conv.c (if_convertible_phi_p): Drop flag_tree_loop_if_convert_stores check in favor of the existing any_mask_load_store check. (insert_gimplified_predicates): Likewise. (combine_blocks): Likewise. (tree_if_conversion): Likewise. (ifcvt_memrefs_wont_trap): Properly check flag_tree_loop_if_convert_stores in all places that can end up introducing store-data-races. (if_convertible_gimple_assign_stmt_p): Remove restriction on flag_tree_loop_if_convert_stores for stores we can if-convert without introducing store-data-races. Force versioning for all if-converted stores. * gcc.dg/tree-ssa/ifc-pr68583.c: New testcase. * gcc.dg/vect/vect-72.c: Adjust. * gcc.dg/vect/vect-cselim-2.c: Likewise. * gcc.dg/vect/vect-strided-store-a-u8-i2.c: Likewise. Added: trunk/gcc/testsuite/gcc.dg/tree-ssa/ifc-pr68583.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/vect/vect-72.c trunk/gcc/testsuite/gcc.dg/vect/vect-cselim-2.c trunk/gcc/testsuite/gcc.dg/vect/vect-strided-store-a-u8-i2.c trunk/gcc/tree-if-conv.c