From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23542 invoked by alias); 22 Jan 2013 09:43:07 -0000 Received: (qmail 23484 invoked by uid 48); 22 Jan 2013 09:42:49 -0000 From: "ro at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug middle-end/56074] New: [4.8 regression] ICE compiling gcc.dg/vect/pr49093.c Date: Tue, 22 Jan 2013 09:43:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: middle-end X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: ro at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2013-01/txt/msg02053.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56074 Bug #: 56074 Summary: [4.8 regression] ICE compiling gcc.dg/vect/pr49093.c Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned@gcc.gnu.org ReportedBy: ro@gcc.gnu.org CC: tejohnson@gcc.gnu.org Host: *-*-solaris2.{9,10} Target: *-*-solaris2.{9,10} Build: *-*-solaris2.{9,10} Between 20130102 and 20130104, several gcc.dg/vect testcases started failing: FAIL: gcc.dg/vect/pr49093.c (internal compiler error) FAIL: gcc.dg/vect/pr49093.c (test for excess errors) on both Solaris/SPARC and x86, many others only on Solaris/x86: FAIL: gcc.dg/vect/bb-slp-1.c (internal compiler error) FAIL: gcc.dg/vect/bb-slp-1.c (test for excess errors) WARNING: gcc.dg/vect/bb-slp-1.c compilation failed to produce executable FAIL: gcc.dg/vect/bb-slp-1.c scan-tree-dump-times slp "basic block vectorized using SLP" 1 I'm always seeing a SEGV in strlen, probably from strlen(NULL): Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] 0xfee163ec in strlen () from /lib/libc.so.1 (gdb) where #0 0xfee163ec in strlen () from /lib/libc.so.1 #1 0xfee7199e in _ndoprnt () from /lib/libc.so.1 #2 0xfee7454e in fprintf () from /lib/libc.so.1 #3 0x082f1fa8 in dump_loc (dump_kind=, dfile=0x914b140 <_iob+64>, loc=2147483648) at /vol/gcc/src/hg/trunk/local/gcc/dumpfile.c:270 #4 0x082f261a in dump_printf_loc (dump_kind=268435456, loc=2147483648, format=0x8dab89c ) at /vol/gcc/src/hg/trunk/local/gcc/dumpfile.c:370 #5 0x08798336 in vect_analyze_loop (loop=0xfea9a7d0) at /vol/gcc/src/hg/trunk/local/gcc/tree-vect-loop.c:1749 #6 0x087adf64 in vectorize_loops () at /vol/gcc/src/hg/trunk/local/gcc/tree-vectorizer.c:113 #7 0x08520bdb in execute_one_pass (pass=pass@entry=0x90be020 ) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2333 #8 0x08520fed in execute_pass_list (pass=) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2381 #9 0x08521000 in execute_pass_list (pass=) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2382 #10 0x08521000 in execute_pass_list (pass=) at /vol/gcc/src/hg/trunk/local/gcc/passes.c:2382 #11 0x082b4630 in expand_function (node=0xfea0e3f0) at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:1640 #12 0x082b664d in expand_all_functions () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:1744 #13 compile () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:2042 #14 0x082b6d2a in finalize_compilation_unit () at /vol/gcc/src/hg/trunk/local/gcc/cgraphunit.c:2119 #15 0x0818aced in c_write_global_declarations () at /vol/gcc/src/hg/trunk/local/gcc/c/c-decl.c:10118 #16 0x085c36cd in compile_file () at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:557 #17 0x085c56a5 in do_compile () at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:1876 #18 toplev_main (argc=9, argv=0x804751c) at /vol/gcc/src/hg/trunk/local/gcc/toplev.c:1952 #19 0x08cfcc2b in main (argc=9, argv=0x804751c) at /vol/gcc/src/hg/trunk/local/gcc/main.c:36 On Solaris 11 and Linux/x86_64 I don't see those SEGVs, but the dump file contains (null):0: note: ===== analyze_loop_nest ===== (null):0: note: === vect_analyze_loop_form === (null):0: note: not vectorized: control flow in loop. (null):0: note: bad loop form. which clearly indicates that NULL was passed as %s argument. I strongly suppose this is from the following patch: 2013-01-02 Teresa Johnson * dumpfile.c (dump_loc): Print filename with location. [...] Please fix; this is a regression from 4.7. Rainer