[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 "= .* \+ -"
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251 Andrew Pinski changed: What|Removed |Added Target Milestone|--- |4.7.0 Status|NEW |RESOLVED Resolution|--- |FIXED Keywords||missed-optimization --- Comment #13 from Andrew Pinski --- Closing as fixed for GCC 4.7.0.
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251 Andrew Pinski pinskia at gcc dot gnu.org changed: What|Removed |Added Known to fail|| --- Comment #11 from Andrew Pinski pinskia at gcc dot gnu.org 2012-09-23 22:21:06 UTC --- This testcase works for me in 4.7.0 or was removed. Can we close this bug report?
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251 --- Comment #12 from dave.anglin at bell dot net 2012-09-23 22:40:10 UTC --- Test hasn't been removed. I also don't see the fail anymore. -- John David Anglindave.ang...@bell.net
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #9 from ramana at gcc dot gnu dot org 2010-01-15 09:05 --- (In reply to comment #8) Hi Mark, Many thanks for looking into this. However, if this is behaving different on ARM from (say) x86, I think that the ABI is a likely cause because, as you say, the C++ ABI for these bits is subtly different. Do we know that this is ARM-specific? I've compared this with the mips port and the x86 port and in both cases the first bit where there is a difference is after lowering into gimple - i.e there is no address calculation like this sequence that comes in the ARM port. D.1844_3 = (unsigned int *) D.1824_2; D.1845_4 = D.1844_3 + 4; D.1846_5 = D.1845_4 + -4; So yes it does look ARM specific . Also peeking at results on gcc-testresults doesn't show this failure on x86. cheers Ramana -- ramana at gcc dot gnu dot org changed: What|Removed |Added Known to fail|4.5.0 |4.4.2 4.5.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #10 from mark at codesourcery dot com 2010-01-15 15:05 --- Subject: Re: FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ - ramana at gcc dot gnu dot org wrote: So yes it does look ARM specific . Also peeking at results on gcc-testresults doesn't show this failure on x86. Thanks for looking at that. I will investigate this bug, but it might not be until week after next, as I will be out of the office this coming week. Thanks, -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #6 from ramana at gcc dot gnu dot org 2010-01-15 01:09 --- Created an attachment (id=19603) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=19603action=view) Dumps from testcase. dumps attached. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #7 from ramana at gcc dot gnu dot org 2010-01-15 01:15 --- With trunk I still see the dump as per the original attachment . I think these 3 lines in the dump cause it to fail . The question though is why the +4 and -4 are not folded out on the ARM port D.1844_3 = (unsigned int *) D.1824_2; D.1845_4 = D.1844_3 + 4; D.1846_5 = D.1845_4 + -4; Looking at .004t.gimple I can see that this is generated out of it for the following expression. D.1820 = operator new [] (15); try { D.1846 = (unsigned int *) D.1820; D.1847 = D.1846 + 4; D.1848 = D.1847 + -4; *D.1848 = 1; D.1846 = (unsigned int *) D.1820; D.1847 = D.1846 + 4; *D.1847 = 7; D.1849 = (struct D *) D.1820; D.1850 = D.1849 + 8; smart_ptr::smart_ptr (p, D.1850); } for ;; Function int test01() (null) ;; enabled by -tree-original { struct smart_ptr p; struct smart_ptr p; cleanup_point Unknown tree: expr_stmt (void) smart_ptr::smart_ptr (p, (TARGET_EXPR D.1820, operator new [] (15);, *(((unsigned int *) D.1820 + 4) + -4) = 1;, *((unsigned int *) D.1820 + 4) = 7;;, (struct D *) D.1820 + 8;)) ; try { return retval = 0; } finally { (void) smart_ptr::~smart_ptr (p); } } Is this a problem with the fix for PR36633 not being implemented for ARM ? Knowing that the ARM C++ ABI is slightly off in comparison to the standard but not knowing enough of the ARM C++ ABI , it appears as though the fix for PR36633 doesn't apply on the ARM EABI port. Mark : could you take a quick look and comment on this, please ? cheers Ramana -- ramana at gcc dot gnu dot org changed: What|Removed |Added CC||mark at codesourcery dot com Known to fail||4.5.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #8 from mmitchel at gcc dot gnu dot org 2010-01-15 03:26 --- Ramana -- If I'm reading the log correctly for PR36633 the change that Jason made there didn't actually fix the bug; it was just a cleanup. He commented that something else had changed which made the bug go away. However, if this is behaving different on ARM from (say) x86, I think that the ABI is a likely cause because, as you say, the C++ ABI for these bits is subtly different. Do we know that this is ARM-specific? Thanks, -- Mark -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #3 from ramana at gcc dot gnu dot org 2009-05-13 10:10 --- Appears on trunk as of r147467. -- ramana at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-05-13 10:10:12 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-05-13 13:35 --- trunk or 4.4? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251
[Bug tree-optimization/39251] FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ -
--- Comment #5 from dave at hiauly1 dot hia dot nrc dot ca 2009-05-13 15:20 --- Subject: Re: FAIL: g++.dg/tree-ssa/new1.C scan-tree-dump-not forwprop1 = .* \+ - trunk or 4.4? I see it in trunk revision 147374. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39251