Command line: gcc -O2 -ftracer testcase.c or gcc -O1 -freorder-blocks -ftracer -c testcase.c Tested revisions: r157460 - crash r157386 - OK r157326 - OK r153685 - OK 4.4 r157395 - OK (with checking) Compiler output: $ /mnt/svn/gcc-trunk/binary-157460-lto/bin/gcc -O2 -ftracer -c testcase.c testcase.c: In function 'foo': testcase.c:6:3: warning: function returns address of local variable testcase.c:1:7: error: SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set for SSA_NAME: .MEM_7 in statement: .MEM_4(ab) = PHI <.MEM_6(D)(0), .MEM_5(ab)(4), .MEM_7(3)> PHI argument .MEM_7 for PHI node .MEM_4(ab) = PHI <.MEM_6(D)(0), .MEM_5(ab)(4), .MEM_7(3)> testcase.c:1:7: internal compiler error: verify_ssa failed Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Valgrind: no errors reported
Created attachment 20109 [details] reduced testcase Command line: gcc -O2 -ftracer -c pr43379.c
It is introduced between revision 157457 and revision 157460.
It is caused by revision 157458: http://gcc.gnu.org/ml/gcc-cvs/2010-03/msg00295.html
Mine.
Subject: Bug 43379 Author: rguenth Date: Tue Mar 16 12:31:38 2010 New Revision: 157478 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=157478 Log: 2010-03-16 Richard Guenther <rguenther@suse.de> PR middle-end/43379 * tree-cfg.c (gimple_merge_blocks): When propagating virtual PHI operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI properly. * gcc.dg/pr43379.c: New testcase. Added: trunk/gcc/testsuite/gcc.dg/pr43379.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-cfg.c
Fixed.
New test fails with: Executing on host: /space/uros/gcc-build/gcc/xgcc -B/space/uros/gcc-build/gcc/ /home/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/pr43379.c -O2 -ftracer -S -o pr43379.s (timeout = 300) /home/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/pr43379.c: In function 'foo':^M /home/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/pr43379.c:9:3: warning: function returns address of local variable^M output is: /home/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/pr43379.c: In function 'foo':^M /home/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/pr43379.c:9:3: warning: function returns address of local variable^M FAIL: gcc.dg/pr43379.c (test for excess errors) Excess errors: /home/uros/gcc-svn/trunk/gcc/testsuite/gcc.dg/pr43379.c:9:3: warning: function returns address of local variable
I fixed htat.
Subject: Bug 43379 Author: hjl Date: Thu Mar 25 16:39:51 2010 New Revision: 157726 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=157726 Log: Backport regression testcases from mainline. 2010-03-25 H.J. Lu <hongjiu.lu@intel.com> Backport from mainline: 2010-03-22 Jason Merrill <jason@redhat.com> PR c++/43333 * g++.dg/ext/is_pod_98.C: New. 2010-03-22 Michael Matz <matz@suse.de> PR middle-end/43475 * gfortran.dg/pr43475.f90: New testcase. 2010-03-22 Richard Guenther <rguenther@suse.de> PR tree-optimization/43390 * gfortran.fortran-torture/execute/pr43390.f90: New testcase. 2010-03-20 Dodji Seketeli <dodji@redhat.com> PR c++/43375 * g++.dg/abi/mangle42.C: New test. 2010-03-19 Andrew Pinski <andrew_pinski@caviumnetworks.com> PR C/43211 * gcc.dg/pr43211.c: New test. 2010-03-18 Martin Jambor <mjambor@suse.cz> PR middle-end/42450 * g++.dg/torture/pr42450.C: New test. 2010-03-18 Michael Matz <matz@suse.de> PR tree-optimization/43402 * gcc.dg/pr43402.c: New testcase. 2010-03-17 Peter Bergner <bergner@vnet.ibm.com> PR target/42427 * gcc.dg/pr42427.c: New test. 2010-03-16 Richard Guenther <rguenther@suse.de> PR middle-end/43379 * gcc.dg/pr43379.c: New testcase. 2010-03-15 Michael Matz <matz@suse.de> PR middle-end/43300 * gcc.dg/pr43300.c: New testcase. 2010-03-15 Richard Guenther <rguenther@suse.de> PR tree-optimization/43367 * gcc.c-torture/compile/pr43367.c: New testcase. Added: branches/gcc-4_4-branch/gcc/testsuite/g++.dg/abi/mangle42.C - copied unchanged from r157725, trunk/gcc/testsuite/g++.dg/abi/mangle42.C branches/gcc-4_4-branch/gcc/testsuite/g++.dg/ext/is_pod_98.C - copied unchanged from r157725, trunk/gcc/testsuite/g++.dg/ext/is_pod_98.C branches/gcc-4_4-branch/gcc/testsuite/g++.dg/torture/pr42450.C - copied unchanged from r157725, trunk/gcc/testsuite/g++.dg/torture/pr42450.C branches/gcc-4_4-branch/gcc/testsuite/gcc.c-torture/compile/pr43367.c - copied unchanged from r157725, trunk/gcc/testsuite/gcc.c-torture/compile/pr43367.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr42427.c - copied unchanged from r157725, trunk/gcc/testsuite/gcc.dg/pr42427.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr43211.c - copied unchanged from r157725, trunk/gcc/testsuite/gcc.dg/pr43211.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr43300.c - copied unchanged from r157725, trunk/gcc/testsuite/gcc.dg/pr43300.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr43379.c - copied unchanged from r157725, trunk/gcc/testsuite/gcc.dg/pr43379.c branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/pr43402.c - copied unchanged from r157725, trunk/gcc/testsuite/gcc.dg/pr43402.c branches/gcc-4_4-branch/gcc/testsuite/gfortran.dg/pr43475.f90 - copied unchanged from r157725, trunk/gcc/testsuite/gfortran.dg/pr43475.f90 branches/gcc-4_4-branch/gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f90 - copied unchanged from r157725, trunk/gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f90 Modified: branches/gcc-4_4-branch/gcc/testsuite/ChangeLog