[Bug c++/92475] [8/9/10 Regression] incorrect code with optimization

2019-11-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92475 Jonathan Wakely changed: What|Removed |Added Status|UNCONFIRMED |NEW Known to work|

[Bug c++/92475] [8/9/10 Regression] incorrect code with optimization

2019-11-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92475 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment #4

[Bug c++/92475] [8/9/10 Regression] incorrect code with optimization

2019-11-12 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92475 --- Comment #5 from Jonathan Wakely --- You're right, sorry for not checking 9 and 10 properly. I also see it working again after r263875.

[Bug c++/92475] [8/9/10 Regression] incorrect code with optimization

2019-11-12 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92475 Richard Biener changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned

[Bug c++/92475] [8/9/10 Regression] incorrect code with optimization

2019-11-12 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92475 --- Comment #7 from Jakub Jelinek --- Reduced C testcase: __attribute__((noipa)) void quux (unsigned long x) { static int cnt; unsigned long v = cnt++ ? 6 : 0; if (x != v) __builtin_abort (); } __attribute__((noipa)) void foo (const ch

[Bug c++/92475] [8/9/10 Regression] incorrect code with optimization

2019-11-13 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92475 --- Comment #8 from Richard Biener --- So while we clear range info from _5 when Setting value number of g_16 to _5 (changed) clearing range info of _5 we're not clearing range info from all defs leading to it and since # RANGE [0, 7] NONZER