diff mbox

Fix couple of ACATS failures

Message ID 3866700.MMJZAb1hG8@polaris
State New
Headers show

Commit Message

Eric Botcazou Nov. 21, 2013, 9:11 a.m. UTC
This fixes the couple of ACATS failures

		=== acats tests ===
FAIL:	c45531j
FAIL:	c45531l

		=== acats Summary ===
# of expected passes		2318
# of unexpected failures	2

introduced by Jeff's latest threading patches.  The Tree-SSA tail merging pass 
was wrongly spotting basic blocks as duplicate but one of them had a statement 
that could throw and the other hadn't.

Tested on x86_64-suse-linux, applied on the mainline as obvious.


2013-11-21  Eric Botcazou  <ebotcazou@adacore.com>

	* tree-ssa-tail-merge.c (stmt_local_def): Return false if the statement
	could throw.
diff mbox

Patch

Index: tree-ssa-tail-merge.c
===================================================================
--- tree-ssa-tail-merge.c	(revision 205090)
+++ tree-ssa-tail-merge.c	(working copy)
@@ -309,6 +309,7 @@  stmt_local_def (gimple stmt)
   def_operand_p def_p;
 
   if (gimple_has_side_effects (stmt)
+      || stmt_could_throw_p (stmt)
       || gimple_vdef (stmt) != NULL_TREE)
     return false;