https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68583
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Author: rguenth Date: Wed Dec 9 08:32:49 2015 New Revision: 231444 URL: https://gcc.gnu.org/viewcvs?rev=231444&root=gcc&view=rev Log: 2015-12-09 Richard Biener <rguent...@suse.de> PR tree-optimization/68583 * tree-if-conv.c (ifc_dr): Make flags bool, add w_unconditionally flag and rename predicates to w_predicate, rw_predicate and base_w_predicate. (DR_WRITTEN_AT_LEAST_ONCE): Rename to ... (DR_BASE_W_UNCONDITIONALLY): ... this. (DR_W_UNCONDITIONALLY): Add. (hash_memrefs_baserefs_and_store_DRs_read): Adjust. Compute unconditionally written separately from read or written. (ifcvt_memrefs_wont_trap): Properly treat reads. (ifcvt_could_trap_p): Inline ... (if_convertible_gimple_assign_stmt_p): ... here. Refactor to avoid code duplication. (if_convertible_loop_p_1): Adjust and properly initialize predicates. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-if-conv.c