diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2014-08-15 01:36:22 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2014-08-14 23:36:22 +0000 |
commit | 80b6ba28787d32f5ca63d9a643c110474ba79160 (patch) | |
tree | f6a1bda569f302e135bad3e65c640895625724a3 /gcc/ipa-devirt.c | |
parent | 56b1f114de93c27600b9b295ff7efcf9caedfc72 (diff) | |
download | gcc-80b6ba28787d32f5ca63d9a643c110474ba79160.zip gcc-80b6ba28787d32f5ca63d9a643c110474ba79160.tar.gz gcc-80b6ba28787d32f5ca63d9a643c110474ba79160.tar.bz2 |
re PR tree-optimization/62091 (ice in before_dom_children)
PR tree-optimization/62091
* g++.dg/ipa/devirt-38.C: New testcase.
* tree-ssa-alias.c (walk_aliased_vdefs_1): Do not clear
function_entry_reached.
(walk_aliased_vdefs): Clear it here.
* ipa-devirt.c (check_stmt_for_type_change): Handle static storage.
From-SVN: r213991
Diffstat (limited to 'gcc/ipa-devirt.c')
-rw-r--r-- | gcc/ipa-devirt.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/ipa-devirt.c b/gcc/ipa-devirt.c index 2d356ad..ff206ee 100644 --- a/gcc/ipa-devirt.c +++ b/gcc/ipa-devirt.c @@ -2777,6 +2777,8 @@ check_stmt_for_type_change (ao_ref *ao ATTRIBUTE_UNUSED, tree vdef, void *data) * BITS_PER_UNIT; op = TREE_OPERAND (op, 0); } + else if (DECL_P (op)) + ; else { tci->speculative = true; |