From 74ab45d60991913557f51b720afec10592c22976 Mon Sep 17 00:00:00 2001 From: ienkovich Date: Fri, 16 Jan 2015 15:38:21 +0000 Subject: [PATCH] gcc/ PR middle-end/64353 * tree-cfg.c (pass_data_fixup_cfg): Update SSA for virtuals on start. gcc/testsuite/ PR middle-end/64353 * g++.dg/pr64353.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219748 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 ++++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/g++.dg/pr64353.C | 15 +++++++++++++++ gcc/tree-cfg.c | 2 +- 4 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/g++.dg/pr64353.C diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a28a578..b77b827 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-01-16 Ilya Enkovich + + PR middle-end/64353 + * tree-cfg.c (pass_data_fixup_cfg): Update SSA for + virtuals on start. + 2015-01-16 James Greenhalgh * config/arm/cortex-a57.md: Remove duplicate of file accidentally diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 231b947..57e4936 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-01-16 Ilya Enkovich + + PR middle-end/64353 + * g++.dg/pr64353.C: New. + 2015-01-16 Kyrylo Tkachov PR target/64263 diff --git a/gcc/testsuite/g++.dg/pr64353.C b/gcc/testsuite/g++.dg/pr64353.C new file mode 100644 index 0000000..7859918 --- /dev/null +++ b/gcc/testsuite/g++.dg/pr64353.C @@ -0,0 +1,15 @@ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ + +class C +{ + int y, x; + void i (); + bool __attribute__((const)) xx () { return x; } +}; + +void C::i () +{ + if (xx ()) + x = 1; +} diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 006bc08..2e23553 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -8754,7 +8754,7 @@ const pass_data pass_data_fixup_cfg = PROP_cfg, /* properties_required */ 0, /* properties_provided */ 0, /* properties_destroyed */ - 0, /* todo_flags_start */ + TODO_update_ssa_only_virtuals, /* todo_flags_start */ 0, /* todo_flags_finish */ }; -- 2.7.4