public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/57379] New: [4.9 Regression]: Segfault in invalidate_any_buried_refs (x=0x0) at ../../gcc-svn/trunk/gcc/gcse.c:3850
@ 2013-05-22 19:42 ubizjak at gmail dot com
  2013-05-22 22:11 ` [Bug target/57379] " ubizjak at gmail dot com
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: ubizjak at gmail dot com @ 2013-05-22 19:42 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 57379
           Summary: [4.9 Regression]: Segfault in
                    invalidate_any_buried_refs (x=0x0) at
                    ../../gcc-svn/trunk/gcc/gcse.c:3850
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ubizjak at gmail dot com
            Target: alpha-linux-gnu

Created attachment 30167
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30167&action=edit
Preprocessed source

This is recent regression.

The segfault can be triggered with crosscompiler to alpha-linux-gnu, configured
with:

 "../gcc-svn/trunk/configure --target=alpha-linux-gnu --with-long-double-128"

$ ~/gcc-build-alpha/gcc/cc1 -O2 -fpreprocessed -quiet libgcc2.i -o libgcc2.s

../../../gcc-svn/trunk/libgcc/libgcc2.c: In function ‘__multc3’:
../../../gcc-svn/trunk/libgcc/libgcc2.c:1927:1: internal compiler error:
Segmentation fault
0x8a5c0f crash_signal
        ../../gcc-svn/trunk/gcc/toplev.c:333
0x6fa870 invalidate_any_buried_refs
        ../../gcc-svn/trunk/gcc/gcse.c:3850
0x6fa924 invalidate_any_buried_refs
        ../../gcc-svn/trunk/gcc/gcse.c:3862
0x6fa924 invalidate_any_buried_refs
        ../../gcc-svn/trunk/gcc/gcse.c:3862

gdb session:

(gdb) r
Starting program: /home/uros/gcc-build-alpha/gcc/cc1 -O2 -fpreprocessed -quiet
libgcc2.i -o libgcc2.s

Program received signal SIGSEGV, Segmentation fault.
invalidate_any_buried_refs (x=0x0) at ../../gcc-svn/trunk/gcc/gcse.c:3850
3850      if (MEM_P (x) && simple_mem (x))

(gdb) b
#0  invalidate_any_buried_refs (x=0x0) at ../../gcc-svn/trunk/gcc/gcse.c:3850
#1  0x00000000006fa925 in invalidate_any_buried_refs (x=0x7ffff1884690) at
../../gcc-svn/trunk/gcc/gcse.c:3862
#2  0x00000000006fa925 in invalidate_any_buried_refs (x=0x7ffff1884678) at
../../gcc-svn/trunk/gcc/gcse.c:3862
#3  0x00000000006fa925 in invalidate_any_buried_refs (x=x@entry=0x7ffff1884660)
at ../../gcc-svn/trunk/gcc/gcse.c:3862
#4  0x00000000006fb4c2 in compute_ld_motion_mems () at
../../gcc-svn/trunk/gcc/gcse.c:3922
#5  one_pre_gcse_pass () at ../../gcc-svn/trunk/gcc/gcse.c:2679
#6  execute_rtl_pre () at ../../gcc-svn/trunk/gcc/gcse.c:4119
#7  0x00000000008033f0 in execute_one_pass (pass=pass@entry=0x10765c0
<pass_rtl_pre>) at ../../gcc-svn/trunk/gcc/passes.c:2337
#8  0x0000000000803855 in execute_pass_list (pass=0x10765c0 <pass_rtl_pre>) at
../../gcc-svn/trunk/gcc/passes.c:2389
...

(gdb) f 1
#1  0x00000000006fa925 in invalidate_any_buried_refs (x=0x7ffff1884690) at
../../gcc-svn/trunk/gcc/gcse.c:3862
3862            invalidate_any_buried_refs (XEXP (x, i));
(gdb) p debug_rtx (x)
(expr_list:REG_DEP_TRUE (reg/v:TF 70 [ x ])
    (nil))
$1 = void

(gdb) f 4
#4  0x00000000006fb4c2 in compute_ld_motion_mems () at
../../gcc-svn/trunk/gcc/gcse.c:3922
3922                        invalidate_any_buried_refs (src_eq);
(gdb) p debug_rtx (src_eq)
(expr_list:REG_DEP_TRUE (symbol_ref:DI ("_OtsEqlX") [flags 0x41])
    (expr_list:REG_DEP_TRUE (reg/v:TF 70 [ x ])
        (expr_list:REG_DEP_TRUE (reg/v:TF 70 [ x ])
            (nil))))
$2 = void

(gdb) p debug_rtx (insn)
(insn 65 64 66 2 (set (reg:DI 148)
        (reg:DI 0 $0)) ../../../gcc-svn/trunk/libgcc/libgcc2.c:1882 226
{*movdi}
     (expr_list:REG_DEAD (reg:DI 0 $0)
        (expr_list:REG_EQUAL (expr_list:REG_DEP_TRUE (symbol_ref:DI
("_OtsEqlX") [flags 0x41])
                (expr_list:REG_DEP_TRUE (reg/v:TF 70 [ x ])
                    (expr_list:REG_DEP_TRUE (reg/v:TF 70 [ x ])
                        (nil))))
            (nil))))
$3 = void

It looks like recursion doesn't check for NULL_RTX when processing expr_list.
>From gcc-bugs-return-422920-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed May 22 20:17:49 2013
Return-Path: <gcc-bugs-return-422920-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 29421 invoked by alias); 22 May 2013 20:17:49 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 29394 invoked by uid 48); 22 May 2013 20:17:45 -0000
From: "fabien at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/37140] type inherited from base class not recognized
Date: Wed, 22 May 2013 20:17:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: c++
X-Bugzilla-Version: 4.4.0
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: fabien at gcc dot gnu.org
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: fabien at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: assigned_to
Message-ID: <bug-37140-4-BAJi0UxEkS@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-37140-4@http.gcc.gnu.org/bugzilla/>
References: <bug-37140-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2013-05/txt/msg01593.txt.bz2
Content-length: 525

http://gcc.gnu.org/bugzilla/show_bug.cgi?id7140

fabien at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Assignee|unassigned at gcc dot gnu.org      |fabien at gcc dot gnu.org

--- Comment #5 from fabien at gcc dot gnu.org ---
(In reply to Paolo Carlini from comment #4)
> PR14258 is fixed and this is still rejected. Maybe Fabien wants to have a
> look?!?

Sure, I'll have a look. Thank you Paolo!


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-06-10 18:46 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-22 19:42 [Bug rtl-optimization/57379] New: [4.9 Regression]: Segfault in invalidate_any_buried_refs (x=0x0) at ../../gcc-svn/trunk/gcc/gcse.c:3850 ubizjak at gmail dot com
2013-05-22 22:11 ` [Bug target/57379] " ubizjak at gmail dot com
2013-05-23  8:41 ` rguenth at gcc dot gnu.org
2013-06-10 18:46 ` ubizjak at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).