2016-01-21 Yuri Rumyantsev <ysrumyan@gmail.com>
PR rtl-optimization/68920
* ifcvt.c (cond_move_process_if_block): Limit number of conditional
moves.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232680
138bc75d-0d04-0410-961f-
82ee72b054a4
+2016-01-21 Yuri Rumyantsev <ysrumyan@gmail.com>
+
+ PR rtl-optimization/68920
+ * ifcvt.c (cond_move_process_if_block): Limit number of conditional
+ moves.
+
2016-01-21 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/68990
vec<rtx> else_regs = vNULL;
unsigned int i;
int success_p = FALSE;
+ int limit = PARAM_VALUE (PARAM_MAX_RTL_IF_CONVERSION_INSNS);
/* Build a mapping for each block to the value used for each
register. */
is the number of assignments currently made in only one of the
branches, since if we convert we are going to always execute
them. */
- if (c > MAX_CONDITIONAL_EXECUTE)
+ if (c > MAX_CONDITIONAL_EXECUTE
+ || c > limit)
goto done;
/* Try to emit the conditional moves. First do the then block,