public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
@ 2012-06-15 10:45 doko at gcc dot gnu.org
  2012-06-15 11:41 ` [Bug target/53682] " jakub at gcc dot gnu.org
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: doko at gcc dot gnu.org @ 2012-06-15 10:45 UTC (permalink / raw)
  To: gcc-bugs

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

             Bug #: 53682
           Summary: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on
                    i586-linux-gnu
    Classification: Unclassified
           Product: gcc
           Version: 4.7.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: doko@gcc.gnu.org


Created attachment 27625
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27625
test case

works with 4.6 branch, fails with 4.7.1 on i586-linux-gnu, works on
x86_64-linux-gnu.

omitting one of the -fPIC, -fvisibility=hidden, -funroll-loops options avoids
the ice.

$ gcc -c -g -O2 -fPIC -fvisibility=hidden -funroll-loops  mini_q_math.c 
mini_q_math.c: In function 'ByteToDir':
mini_q_math.c:124:1: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.


Program received signal SIGSEGV, Segmentation fault.
0x081e657b in cselib_lookup(rtx_def*, machine_mode, int, machine_mode) ()
(gdb) bt
#0  0x081e657b in cselib_lookup(rtx_def*, machine_mode, int, machine_mode) ()
#1  0x081e7034 in ?? ()
#2  0x08590da2 in ?? ()
#3  0x085a8680 in ?? ()
#4  0x08189983 in find_base_term(rtx_def*) ()
#5  0x08189a28 in find_base_term(rtx_def*) ()
#6  0x08189b69 in find_base_term(rtx_def*) ()
#7  0x0818b3e8 in ?? ()
#8  0x081e7820 in ?? ()
#9  0x081e88f7 in ?? ()
#10 0x081e9183 in cselib_process_insn(rtx_def*) ()
#11 0x0856c723 in ?? ()
#12 0x0857323c in variable_tracking_main() ()
#13 0x0836e2bc in execute_one_pass(opt_pass*) ()
#14 0x0836e615 in execute_pass_list(opt_pass*) ()
#15 0x0836e628 in execute_pass_list(opt_pass*) ()
#16 0x0836e628 in execute_pass_list(opt_pass*) ()
#17 0x0844d434 in tree_rest_of_compilation(tree_node*) ()
#18 0x081dd654 in ?? ()
#19 0x081deeb5 in cgraph_optimize() ()
#20 0x081df3ef in cgraph_finalize_compilation_unit() ()
#21 0x081185fc in c_write_global_declarations() ()
#22 0x0840661a in toplev_main(int, char**) ()
#23 0x0810712b in main ()


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
@ 2012-06-15 11:41 ` jakub at gcc dot gnu.org
  2012-06-15 12:00 ` jakub at gcc dot gnu.org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-06-15 11:41 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2012-06-15
                 CC|                            |aoliva at gcc dot gnu.org,
                   |                            |jakub at gcc dot gnu.org
   Target Milestone|---                         |4.7.2
     Ever Confirmed|0                           |1

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-06-15 11:41:37 UTC ---
Probably started with http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182760


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
  2012-06-15 11:41 ` [Bug target/53682] " jakub at gcc dot gnu.org
@ 2012-06-15 12:00 ` jakub at gcc dot gnu.org
  2012-06-18 10:31 ` aoliva at gcc dot gnu.org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-06-15 12:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-06-15 12:00:45 UTC ---
Possible the second two calls of promote_debug_loc should be replaced by a loop
over the locs, looking for the right l->loc that -g0 would have created in that
case.  Anyway, it needs to be debugged how exactly -g0 vs. -g behaves in these
cases.


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
  2012-06-15 11:41 ` [Bug target/53682] " jakub at gcc dot gnu.org
  2012-06-15 12:00 ` jakub at gcc dot gnu.org
@ 2012-06-18 10:31 ` aoliva at gcc dot gnu.org
  2012-06-18 10:32 ` aoliva at gcc dot gnu.org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-18 10:31 UTC (permalink / raw)
  To: gcc-bugs

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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED

--- Comment #3 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-18 10:31:09 UTC ---
Mine.  AFAICT the problem is that promote_debug_loc crashes when the loc list
for a VALUE is temporarily cleared within alias.c to avoid infinite recursion. 
Getting it to return if passed a NULL pointer seems to be the correct fix. 
AFAICT we won't run into this except within var-tracking.


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2012-06-18 10:31 ` aoliva at gcc dot gnu.org
@ 2012-06-18 10:32 ` aoliva at gcc dot gnu.org
  2012-06-22  1:29 ` aoliva at gcc dot gnu.org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-18 10:32 UTC (permalink / raw)
  To: gcc-bugs

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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
         AssignedTo|unassigned at gcc dot       |aoliva at gcc dot gnu.org
                   |gnu.org                     |

--- Comment #3 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-18 10:31:09 UTC ---
Mine.  AFAICT the problem is that promote_debug_loc crashes when the loc list
for a VALUE is temporarily cleared within alias.c to avoid infinite recursion. 
Getting it to return if passed a NULL pointer seems to be the correct fix. 
AFAICT we won't run into this except within var-tracking.

--- Comment #4 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-18 10:32:01 UTC ---
Mine.  AFAICT the problem is that promote_debug_loc crashes when the loc list
for a VALUE is temporarily cleared within alias.c to avoid infinite recursion. 
Getting it to return if passed a NULL pointer seems to be the correct fix. 
AFAICT we won't run into this except within var-tracking.


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2012-06-18 10:32 ` aoliva at gcc dot gnu.org
@ 2012-06-22  1:29 ` aoliva at gcc dot gnu.org
  2012-06-22 16:17 ` aoliva at gcc dot gnu.org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-22  1:29 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-22 01:29:33 UTC ---
Author: aoliva
Date: Fri Jun 22 01:29:28 2012
New Revision: 188866

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=188866
Log:
PR debug/53682
* cselib.c (promote_debug_loc): Don't crash on NULL argument.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/cselib.c


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2012-06-22  1:29 ` aoliva at gcc dot gnu.org
@ 2012-06-22 16:17 ` aoliva at gcc dot gnu.org
  2012-06-24 13:02 ` mikpe at it dot uu.se
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-22 16:17 UTC (permalink / raw)
  To: gcc-bugs

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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #6 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-22 16:17:01 UTC ---
Fixed


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2012-06-22 16:17 ` aoliva at gcc dot gnu.org
@ 2012-06-24 13:02 ` mikpe at it dot uu.se
  2012-06-25  3:56 ` aoliva at gcc dot gnu.org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: mikpe at it dot uu.se @ 2012-06-24 13:02 UTC (permalink / raw)
  To: gcc-bugs

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

Mikael Pettersson <mikpe at it dot uu.se> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mikpe at it dot uu.se

--- Comment #7 from Mikael Pettersson <mikpe at it dot uu.se> 2012-06-24 13:02:36 UTC ---
I think this was closed as fixed too soon, as the regression is still present
in 4.7-20120623.  Backporting the 4.8 patch eliminates the ICE in 4.7 too.


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2012-06-24 13:02 ` mikpe at it dot uu.se
@ 2012-06-25  3:56 ` aoliva at gcc dot gnu.org
  2012-06-26 20:22 ` aoliva at gcc dot gnu.org
  2012-06-26 20:25 ` aoliva at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-25  3:56 UTC (permalink / raw)
  To: gcc-bugs

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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |

--- Comment #8 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-25 03:54:48 UTC ---
Yeah, sorry, closing it was a mistake.  Testing it on the 4.7 branch now.


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2012-06-25  3:56 ` aoliva at gcc dot gnu.org
@ 2012-06-26 20:22 ` aoliva at gcc dot gnu.org
  2012-06-26 20:25 ` aoliva at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-26 20:22 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-26 20:22:05 UTC ---
Author: aoliva
Date: Tue Jun 26 20:21:58 2012
New Revision: 188997

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=188997
Log:
PR debug/53682
* cselib.c (promote_debug_loc): Don't crash on NULL argument.

Modified:
    branches/gcc-4_7-branch/gcc/ChangeLog
    branches/gcc-4_7-branch/gcc/cselib.c


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

* [Bug target/53682] [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu
  2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2012-06-26 20:22 ` aoliva at gcc dot gnu.org
@ 2012-06-26 20:25 ` aoliva at gcc dot gnu.org
  9 siblings, 0 replies; 11+ messages in thread
From: aoliva at gcc dot gnu.org @ 2012-06-26 20:25 UTC (permalink / raw)
  To: gcc-bugs

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

Alexandre Oliva <aoliva at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #10 from Alexandre Oliva <aoliva at gcc dot gnu.org> 2012-06-26 20:24:54 UTC ---
Fixed in the 4.7 branch too.


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

end of thread, other threads:[~2012-06-26 20:25 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-06-15 10:45 [Bug target/53682] New: [4.7/4.8 Regression] ICE in cselib_lookup (SEGV) on i586-linux-gnu doko at gcc dot gnu.org
2012-06-15 11:41 ` [Bug target/53682] " jakub at gcc dot gnu.org
2012-06-15 12:00 ` jakub at gcc dot gnu.org
2012-06-18 10:31 ` aoliva at gcc dot gnu.org
2012-06-18 10:32 ` aoliva at gcc dot gnu.org
2012-06-22  1:29 ` aoliva at gcc dot gnu.org
2012-06-22 16:17 ` aoliva at gcc dot gnu.org
2012-06-24 13:02 ` mikpe at it dot uu.se
2012-06-25  3:56 ` aoliva at gcc dot gnu.org
2012-06-26 20:22 ` aoliva at gcc dot gnu.org
2012-06-26 20:25 ` aoliva at gcc dot gnu.org

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).