public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/32855]  New: [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
@ 2007-07-22 16:44 hjl at lucon dot org
  2007-07-22 19:29 ` [Bug target/32855] " pinskia at gcc dot gnu dot org
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: hjl at lucon dot org @ 2007-07-22 16:44 UTC (permalink / raw)
  To: gcc-bugs

The dataflow merge:

http://gcc.gnu.org/ml/gcc-cvs/2007-06/msg00384.html

caused

[hjl@gnu-14 bin]$ ./g++ -static -O2
../../src/gcc/testsuite/g++.dg/tree-ssa/pr28003.C
[hjl@gnu-14 bin]$ ./a.out
Segmentation fault
[hjl@gnu-14 bin]$

This happens on Linux/ia64.


-- 
           Summary: [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hjl at lucon dot org
GCC target triplet: ia64-unknown-linux-gnu


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


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

* [Bug target/32855] [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
  2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
@ 2007-07-22 19:29 ` pinskia at gcc dot gnu dot org
  2007-08-10  0:51 ` mmitchel at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-07-22 19:29 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-22 19:29 -------
This is most likely the dwarf2 vs ia64 unwinding code issue.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
          Component|tree-optimization           |target
   Target Milestone|---                         |4.3.0


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


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

* [Bug target/32855] [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
  2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
  2007-07-22 19:29 ` [Bug target/32855] " pinskia at gcc dot gnu dot org
@ 2007-08-10  0:51 ` mmitchel at gcc dot gnu dot org
  2007-08-20 16:40 ` jakub at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-08-10  0:51 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


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


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

* [Bug target/32855] [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
  2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
  2007-07-22 19:29 ` [Bug target/32855] " pinskia at gcc dot gnu dot org
  2007-08-10  0:51 ` mmitchel at gcc dot gnu dot org
@ 2007-08-20 16:40 ` jakub at gcc dot gnu dot org
  2007-08-20 18:26 ` jakub at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-08-20 16:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from jakub at gcc dot gnu dot org  2007-08-20 16:40 -------
This has nothing to do with dwarf2 nor unwinding.
Things break during reload which decides to reload something into the b0
register (which is live at that point and not very general purpose register
anyway).


-- 


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


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

* [Bug target/32855] [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
  2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
                   ` (2 preceding siblings ...)
  2007-08-20 16:40 ` jakub at gcc dot gnu dot org
@ 2007-08-20 18:26 ` jakub at gcc dot gnu dot org
  2007-08-20 18:46 ` vmakarov at redhat dot com
  2007-09-05  9:41 ` jakub at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-08-20 18:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from jakub at gcc dot gnu dot org  2007-08-20 18:25 -------
Wow, scheduling plus reload does extremely horrible job here.
This is
  b[0] = {};
  b[0].a.j[0] = 0;
  b[0].a.j[1] = 0;
  b[0].a.j[2] = 0;
  b[0].a.j[3] = 0;
  b[0].a.j[4] = 0;
  b[0].a.j[5] = 0;
  b[0].a.j[6] = 0;
  b[0].a.j[7] = 0;
  b[0].a.j[8] = 0;
  b[0].a.i = 1;
repeated 25 times in *.optimized dump, in *.expand that's 250 stores to b
array,
in the increasing index order and we are storing just 0s or 1s.  So ideally
on IA-64 we would use just 1 reg to store 1, and two or 4 registers to store
pointers and use auto-increment.  But after scheduling we have huge amount of
overlapping live ranges for the many pointer pseudos and reload decides to put
them wherever possible, all kinds of general regs, reg window regs, and after
the dataflow even into b0 without bothering to restore it properly.

Vlad, is your RA capable of handling this more sanely?


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vmakarov at gcc dot gnu dot
                   |                            |org


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


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

* [Bug target/32855] [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
  2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
                   ` (3 preceding siblings ...)
  2007-08-20 18:26 ` jakub at gcc dot gnu dot org
@ 2007-08-20 18:46 ` vmakarov at redhat dot com
  2007-09-05  9:41 ` jakub at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: vmakarov at redhat dot com @ 2007-08-20 18:46 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from vmakarov at redhat dot com  2007-08-20 18:46 -------
Yes, I belive my RA should manage the situation and use not only b0 register.

But in general, I think we need also register pressure heuristics in insn
scheduler before the register allocation to constrain insn movements resulting
in  too many spills and reloads.



-- 


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


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

* [Bug target/32855] [4.3 Regression]  g++.dg/tree-ssa/pr28003.C
  2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
                   ` (4 preceding siblings ...)
  2007-08-20 18:46 ` vmakarov at redhat dot com
@ 2007-09-05  9:41 ` jakub at gcc dot gnu dot org
  5 siblings, 0 replies; 7+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-09-05  9:41 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from jakub at gcc dot gnu dot org  2007-09-05 09:41 -------


*** This bug has been marked as a duplicate of 32552 ***


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |DUPLICATE


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


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

end of thread, other threads:[~2007-09-05  9:41 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-07-22 16:44 [Bug tree-optimization/32855] New: [4.3 Regression] g++.dg/tree-ssa/pr28003.C hjl at lucon dot org
2007-07-22 19:29 ` [Bug target/32855] " pinskia at gcc dot gnu dot org
2007-08-10  0:51 ` mmitchel at gcc dot gnu dot org
2007-08-20 16:40 ` jakub at gcc dot gnu dot org
2007-08-20 18:26 ` jakub at gcc dot gnu dot org
2007-08-20 18:46 ` vmakarov at redhat dot com
2007-09-05  9:41 ` jakub 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).