[Bug tree-optimization/71261] [7 Regression] Trunk GCC hangs on knl and broadwell targets
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jun 1 13:09:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71261
--- Comment #19 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed Jun 1 13:08:24 2016
New Revision: 236989
URL: https://gcc.gnu.org/viewcvs?rev=236989&root=gcc&view=rev
Log:
2016-06-01 Richard Biener <rguenther@suse.de>
PR tree-optimization/71261
* tree-vect-patterns.c (check_bool_pattern): Gather a hash-set
of stmts successfully put in the bool pattern. Remove
single-use restriction.
(adjust_bool_pattern_cast): Add cast at the use site via the
pattern def sequence.
(adjust_bool_pattern): Remove recursion, maintain a hash-map
of patterned defs. Use the pattern def seqence instead of
multiple independent patterns.
(sort_after_uid): New qsort compare function.
(adjust_bool_stmts): New function to process stmts in the bool
pattern in IL order.
(vect_recog_bool_pattern): Adjust.
* tree-if-conv.c (ifcvt_split_def_stmt): Remove.
(ifcvt_walk_pattern_tree): Likewise.
(stmt_is_root_of_bool_pattern): Likewise.
(ifcvt_repair_bool_pattern): Likewise.
(tree_if_conversion): Do not call ifcvt_repair_bool_pattern.
* gcc.dg/torture/vect-bool-1.c: New testcase.
Added:
trunk/gcc/testsuite/gcc.dg/torture/vect-bool-1.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-if-conv.c
trunk/gcc/tree-vect-patterns.c
More information about the Gcc-bugs
mailing list