PR tree-optimization/56541
commit9ab8df54d1d38d1f5c82995147927ddc0a85e01f
authoramker <amker@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 May 2016 09:04:46 +0000 (3 09:04 +0000)
committeramker <amker@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 May 2016 09:04:46 +0000 (3 09:04 +0000)
tree5411de44c126dfd942b7250b8f84f5f31dbfa368
parent5e129d6b1f3e1a9d06218669d356f0a65e9af4c6
PR tree-optimization/56541
* doc/invoke.texi (@item max-tree-if-conversion-phi-args): New item.
* params.def (PARAM_MAX_TREE_IF_CONVERSION_PHI_ARGS): new param.
* tree-if-conv.c (MAX_PHI_ARG_NUM): new macro.
(any_complicated_phi): new static variable.
(aggressive_if_conv): delete.
(if_convertible_phi_p): support phis with more than two arguments.
(if_convertible_bb_p): remvoe check on aggressive_if_conv and
critical pred edges.
(ifcvt_split_critical_edges): support phis with more than two
arguments by checking new parameter.  only split critical edges
if needed.
(tree_if_conversion): handle simd pragma marked loop using new
local variable aggressive_if_conv.  check any_complicated_phi.

gcc/testsuite
PR tree-optimization/56541
* gcc.dg/tree-ssa/ifc-pr56541.c: new test.
* gcc.dg/vect/pr56541.c: new test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235808 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/doc/invoke.texi
gcc/params.def
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/ifc-pr56541.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/vect/pr56541.c [new file with mode: 0644]
gcc/tree-if-conv.c