[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc-bugs
Subject:    [Bug middle-end/54759] New: [4.8 regression] segfault for gcc.dg/vect/pr49093.c on Solaris
From:       "ebotcazou at gcc dot gnu.org" <gcc-bugzilla () gcc ! gnu ! org>
Date:       2012-09-30 10:35:57
Message-ID: bug-54759-4 () http ! gcc ! gnu ! org/bugzilla/
[Download RAW message or body]


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54759

             Bug #: 54759
           Summary: [4.8 regression] segfault for gcc.dg/vect/pr49093.c on
                    Solaris
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ebotcazou@gcc.gnu.org
                CC: dehao@gcc.gnu.org
              Host: sparc-sun-solaris2.10
            Target: sparc-sun-solaris2.10
             Build: sparc-sun-solaris2.10


We have a segfault for gcc.dg/vect/pr49093.c on SPARC/Solaris:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1 (LWP 1)]
0xff0ae9b0 in strlen () from /lib/libc.so.1
(gdb) bt
#0  0xff0ae9b0 in strlen () from /lib/libc.so.1
#1  0xff1134d8 in _ndoprnt () from /lib/libc.so.1
#2  0xff1154a0 in fprintf () from /lib/libc.so.1
#3  0x00743778 in vectorize_loops ()
    at /nile.build/botcazou/gcc-head/src/gcc/tree-vectorizer.c:198
#4  0x0067739c in tree_vectorize ()
    at /nile.build/botcazou/gcc-head/src/gcc/tree-ssa-loop.c:215

(gdb) frame 3
#3  0x00743778 in vectorize_loops ()
    at /nile.build/botcazou/gcc-head/src/gcc/tree-vectorizer.c:198
198                 LOC_FILE (vect_location), LOC_LINE (vect_location));
(gdb) list
193     
194             vect_location = find_loop_location (loop);
195             if (vect_location != UNKNOWN_LOC
196                 && vect_verbosity_level > REPORT_NONE)
197               fprintf (vect_dump, "\nAnalyzing loop at %s:%d\n",
198                 LOC_FILE (vect_location), LOC_LINE (vect_location));
199     
200             loop_vinfo = vect_analyze_loop (loop);
201             loop->aux = loop_vinfo;
202     
(gdb) p vect_location 
$1 = 2147483648
(gdb) call expand_location(vect_location)
$4 = {file = 0x0, line = 0, column = 0, data = 0xfb4a5ad0, sysp = false}

This is reproducible with a bare cross-compiler on x86_64-suse-linux:

gdb --args gcc/cc1 -quiet -O1 -ftree-vectorize -fdump-tree-vect-details
-fno-tree-fre -mcpu=v9 pr49093.c

(gdb) b tree-vectorizer.c:197

Breakpoint 1, vectorize_loops ()
    at /home/eric/svn/gcc/gcc/tree-vectorizer.c:198
198                 LOC_FILE (vect_location), LOC_LINE (vect_location));
(gdb) call expand_location(vect_location)
$4 = {file = 0x0, line = 0, column = 0, data = 0x7ffff68dfaa0, sysp = false}
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic