Commit de0b4ad5 by Richard Guenther Committed by Richard Biener

re PR middle-end/39941 (ice in passes.c:execute_todo())

2009-04-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/39941
	* tree-ssa-pre.c (eliminate): Schedule update-ssa after
	eliminating an indirect call.

	* gcc.c-torture/compile/pr39941.c: New testcase.

From-SVN: r146948
parent 3a19701a
2009-04-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/39941
* tree-ssa-pre.c (eliminate): Schedule update-ssa after
eliminating an indirect call.
2009-04-29 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_types_in_gimple_reference): Add require_lvalue
parameter. Allow invariants as base if !require_lvalue.
(verify_gimple_assign_single): Adjust.
......
2009-04-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/39941
* gcc.c-torture/compile/pr39941.c: New testcase.
2009-04-29 Bernd Schmidt <bernd.schmidt@analog.com>
* gcc.target/bfin/20090411-1.c: New test.
......
typedef void (*entry_func) (void) __attribute__ ((noreturn));
extern entry_func entry_addr;
static void bsd_boot_entry (void)
{
stop ();
}
void bsd_boot (void)
{
entry_addr = (entry_func) bsd_boot_entry;
(*entry_addr) ();
}
......@@ -4131,6 +4131,11 @@ eliminate (void)
update_stmt (stmt);
if (maybe_clean_or_replace_eh_stmt (stmt, stmt))
gimple_purge_dead_eh_edges (b);
/* Changing an indirect call to a direct call may
have exposed different semantics. This may
require an SSA update. */
todo |= TODO_update_ssa;
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment