public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/24624]  New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
@ 2005-11-01 21:47 rguenth at gcc dot gnu dot org
  2005-11-01 21:48 ` [Bug target/24624] " rguenth at gcc dot gnu dot org
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-01 21:47 UTC (permalink / raw)
  To: gcc-bugs

We ICE compiling the linux kernel.

/usr/lib64/gcc/s390x-suse-linux/4.1.0/cc1 -fpreprocessed inetpeer.i -quiet
-dumpbase inetpeer.c -m64 -mbackchain -msoft-float -march=z900 -mpacked-stack
-mstack-size=8192 -mstack-guard=256 -mwarn-dynamicstack -mwarn-framesize=256
-mzarch -auxbase-strip net/ipv4/.tmp_inetpeer.o -O2 -Wall -Wundef
-Wstrict-prototypes -Wno-trigraphs -Werror-implicit-function-declaration
-Wno-sign-compare -Wdeclaration-after-statement -Wno-pointer-sign -version
-fno-strict-aliasing -fno-common -ffreestanding -fomit-frame-pointer
-finline-limit=10000 -fno-strength-reduce -o inetpeer.s

net/ipv4/inetpeer.c: In function 'peer_check_expire':
net/ipv4/inetpeer.c:461: internal compiler error: in reload, at reload1.c:1071
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.suse.de/feedback> for instructions.


-- 
           Summary: [4.1 Regression] internal compiler error: in reload, at
                    reload1.c:1071
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: critical
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rguenth at gcc dot gnu dot org
GCC target triplet: s390x-*-*


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
@ 2005-11-01 21:48 ` rguenth at gcc dot gnu dot org
  2005-11-01 22:49 ` pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2005-11-01 21:48 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2005-11-01 21:48 -------
Created an attachment (id=10105)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10105&action=view)
reduced testcase

testcase


-- 


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
  2005-11-01 21:48 ` [Bug target/24624] " rguenth at gcc dot gnu dot org
@ 2005-11-01 22:49 ` pinskia at gcc dot gnu dot org
  2005-11-03  1:28 ` janis at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-01 22:49 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.1.0


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
  2005-11-01 21:48 ` [Bug target/24624] " rguenth at gcc dot gnu dot org
  2005-11-01 22:49 ` pinskia at gcc dot gnu dot org
@ 2005-11-03  1:28 ` janis at gcc dot gnu dot org
  2005-11-03  2:04 ` uweigand at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: janis at gcc dot gnu dot org @ 2005-11-03  1:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from janis at gcc dot gnu dot org  2005-11-03 01:28 -------
A regression hunt using a cross compiler identified the following patch:

http://gcc.gnu.org/viewcvs?view=rev&rev=101381

2005-06-28  Andreas Krebbel  <krebbel1@de.ibm.com>

        * config/s390/s390.c (machine_function): New field has_landing_pad_p.
        (s390_set_has_landing_pad_p, s390_reg_clobbered_rtx,
         s390_regs_ever_clobbered): New functions.
        (s390_return_addr_rtx): Use get_hard_reg_initial_value.
        (s390_register_info, s390_init_frame_layout, s390_update_frame_layout):
        Use s390_regs_ever_clobbered.
        (s390_emit_prologue): Don't use r14 as temp reg if its content is used
        for builtin_return_address.
        * config/s390/s390.md ("exception_receiver"): New expander.
        * config/s390/s390-protos.h (s390_set_has_landing_pad_p): Prototype
        added.

Only the following options are needed to reproduce the failure with
the reduced testcase: -m64 -mpacked-stack -mstack-size=8192 -mstack-guard=256


-- 


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2005-11-03  1:28 ` janis at gcc dot gnu dot org
@ 2005-11-03  2:04 ` uweigand at gcc dot gnu dot org
  2005-11-03  6:43 ` mmitchel at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: uweigand at gcc dot gnu dot org @ 2005-11-03  2:04 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from uweigand at gcc dot gnu dot org  2005-11-03 02:04 -------
Likely backend problem, investigating ...


-- 

uweigand at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |uweigand at gcc dot gnu dot
                   |dot org                     |org
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-11-03 02:04:45
               date|                            |


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2005-11-03  2:04 ` uweigand at gcc dot gnu dot org
@ 2005-11-03  6:43 ` mmitchel at gcc dot gnu dot org
  2005-11-03  6:44 ` mmitchel at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-11-03  6:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from mmitchel at gcc dot gnu dot org  2005-11-03 06:43 -------
Downgraded to P5; S390 is not a primary or secondary target.


-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|uweigand at gcc dot gnu dot |unassigned at gcc dot gnu
                   |org                         |dot org
             Status|ASSIGNED                    |NEW
           Priority|P3                          |P5


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2005-11-03  6:43 ` mmitchel at gcc dot gnu dot org
@ 2005-11-03  6:44 ` mmitchel at gcc dot gnu dot org
  2005-11-04  7:56 ` krebbel1 at de dot ibm dot com
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-11-03  6:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from mmitchel at gcc dot gnu dot org  2005-11-03 06:44 -------
Correcting accidental un-assignment.


-- 

mmitchel at gcc dot gnu dot org changed:

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


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2005-11-03  6:44 ` mmitchel at gcc dot gnu dot org
@ 2005-11-04  7:56 ` krebbel1 at de dot ibm dot com
  2005-11-09 12:01 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: krebbel1 at de dot ibm dot com @ 2005-11-04  7:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from krebbel1 at de dot ibm dot com  2005-11-04 07:56 -------
My patch introduced the s390_regs_ever_clobbered function
which is used instead of regs_ever_live for determining
which registers need saving in function prologue.
This function is called during reload when the elimination
offsets of eliminable registers are calculated. Whithin the
first phase of reload where the reloads only are recorded in
struct reloads without modifying the insn itself the back end
function only sees the registers assigned by global alloc.
Whenever a call clobbered register assigned by global alloc
is changed to a call saved register by reload the back end
can not see this change in the first phase of reload but
afterwards when the changes are applied to the insn. Hence
the elimination offset for the arg pointer can change what
causes the ICE.

Using regs_ever_live is safe even in this first reload phase
because that array is updated when reload information is
recorded in spill_hard_reg.

I've tried a back end hack in s390_regs_ever_clobbered walking 
through the reload_insn_chain if reload_in_progress is set.
For all reload structs I've marked the used reload regs in my
regs_ever_clobbered array. But this is probably wrong because
reload is not bound to the decisions made in the first phase.
It is only assured that the regs in used_spill_regs are sufficient
for covering all spill decisions which will be made later on.
So the better choice should be to look into the used_spill_regs
array which unfortunately is set up after verify_initial_elim_offsets
is called (in select_reload_regs).

For now I don't see how this can be fixed easily. I will discuss the
issue with Ulrich. If we aren't able to come up with a solution I will
revert my patch :(


-- 


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2005-11-04  7:56 ` krebbel1 at de dot ibm dot com
@ 2005-11-09 12:01 ` pinskia at gcc dot gnu dot org
  2005-11-09 12:02 ` pinskia at gcc dot gnu dot org
  2005-11-09 12:18 ` krebbel at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-09 12:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from pinskia at gcc dot gnu dot org  2005-11-09 12:01 -------
Fixed by:
http://gcc.gnu.org/ml/gcc-cvs/2005-11/msg00389.html


-- 

pinskia at gcc dot gnu dot org changed:

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


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (7 preceding siblings ...)
  2005-11-09 12:01 ` pinskia at gcc dot gnu dot org
@ 2005-11-09 12:02 ` pinskia at gcc dot gnu dot org
  2005-11-09 12:18 ` krebbel at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-11-09 12:02 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pinskia at gcc dot gnu dot org  2005-11-09 12:02 -------
Note your testcase will fail on every target except for s390:
/* { dg-do compile } */
/* { dg-options "-O1 -mpacked-stack" } */


-- 


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


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

* [Bug target/24624] [4.1 Regression] internal compiler error: in reload, at reload1.c:1071
  2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
                   ` (8 preceding siblings ...)
  2005-11-09 12:02 ` pinskia at gcc dot gnu dot org
@ 2005-11-09 12:18 ` krebbel at gcc dot gnu dot org
  9 siblings, 0 replies; 11+ messages in thread
From: krebbel at gcc dot gnu dot org @ 2005-11-09 12:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from krebbel at gcc dot gnu dot org  2005-11-09 12:18 -------
Ups sorry. I've fixed that now.


-- 


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


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

end of thread, other threads:[~2005-11-09 12:18 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-01 21:47 [Bug target/24624] New: [4.1 Regression] internal compiler error: in reload, at reload1.c:1071 rguenth at gcc dot gnu dot org
2005-11-01 21:48 ` [Bug target/24624] " rguenth at gcc dot gnu dot org
2005-11-01 22:49 ` pinskia at gcc dot gnu dot org
2005-11-03  1:28 ` janis at gcc dot gnu dot org
2005-11-03  2:04 ` uweigand at gcc dot gnu dot org
2005-11-03  6:43 ` mmitchel at gcc dot gnu dot org
2005-11-03  6:44 ` mmitchel at gcc dot gnu dot org
2005-11-04  7:56 ` krebbel1 at de dot ibm dot com
2005-11-09 12:01 ` pinskia at gcc dot gnu dot org
2005-11-09 12:02 ` pinskia at gcc dot gnu dot org
2005-11-09 12:18 ` krebbel at gcc dot gnu dot 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).