[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread law at redhat dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 Jeffrey A. Law changed: What|Removed |Added CC||law at redhat dot com --- Comment #16

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread jamborm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 Martin Jambor changed: What|Removed |Added Assignee|unassigned at gcc dot gnu.org |jamborm at gcc dot gnu.org ---

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 Jakub Jelinek changed: What|Removed |Added CC||jamborm at gcc dot gnu.org --- Comment

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #12 from Richard Biener --- (In reply to Jakub Jelinek from comment #11) > --- gcc/tree-dfa.c.jj 2016-01-04 14:55:50.0 +0100 > +++ gcc/tree-dfa.c2016-01-20 11:06:15.226682927 +0100 > @@ -395,7 +395,7 @@

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #13 from Jakub Jelinek --- So, without the tree-dfa.c change current trunk in esra transforms: G, Sz> div(U&, double) [with int Sz = 3] (struct U & p1, double p2) { + const double * SR.27; + const double * SR.26; + const

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #10 from Jakub Jelinek --- Reduced testcase: template struct A; template <> struct A<1> {}; template struct B { template struct C { typedef T *iterator; C (iterator p1) : m_iter (p1) {} void operator, (T p1) {

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #14 from Jakub Jelinek --- Note the above dumps are with -O1 -g0 -fno-asynchronous-unwind-tables -fno-exceptions (what I've been using in the testsuite reduction).

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-19 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 Richard Biener changed: What|Removed |Added Target||x86_64-*-* Known to work|

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #6 from Jakub Jelinek --- --- pr69355.ii 2016-01-19 13:00:26.772400572 +0100 +++ pr69355-1.ii2016-01-19 15:54:26.790557524 +0100 @@ -30334,10 +30334,17 @@ namespace std __attribute__ ((__visibili # 4 "mytest.cpp" typedef

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 Jakub Jelinek changed: What|Removed |Added CC||dj at gcc dot gnu.org,

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #8 from Jakub Jelinek --- Note, -fno-tree-sra fixes the issue, so I bet it is the get_ref_base_and_extent calls in tree-sra.c that matter.

[Bug c++/69355] [5/6 Regression] Wrong results with -O1 optimization

2016-01-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69355 --- Comment #9 from Jakub Jelinek --- Note get_inner_reference uses mode = TYPE_MODE (TREE_TYPE (exp)); *punsignedp = TYPE_UNSIGNED (TREE_TYPE (exp)); if (mode == BLKmode) size_tree = TYPE_SIZE (TREE_TYPE (exp));