public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/34255]  New: scope-blocks-on-a-diet patch diverges -g from non-g output code
@ 2007-11-28  0:53 aoliva at gcc dot gnu dot org
  2007-11-28  0:53 ` [Bug bootstrap/34255] " aoliva at gcc dot gnu dot org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: aoliva at gcc dot gnu dot org @ 2007-11-28  0:53 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01745.html regresses the property
that code output with -g must be the same as that without -g.  make
bootstrap-debug demonstrates that several files miscompare after this patch,
and don't if the patch is reversed.

The patch not only causes -g divergence, it also accidentally drops subblocks
that need to be kept around for the sake of generating debug information for
them.

Both problems are fixed with the patch at
http://gcc.gnu.org/ml/gcc-patches/2007-10/msg00608.html


-- 
           Summary: scope-blocks-on-a-diet patch diverges -g from non-g
                    output code
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: blocker
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: aoliva at gcc dot gnu dot org


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


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

* [Bug bootstrap/34255] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
@ 2007-11-28  0:53 ` aoliva at gcc dot gnu dot org
  2007-11-28 10:15 ` rguenth at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: aoliva at gcc dot gnu dot org @ 2007-11-28  0:53 UTC (permalink / raw)
  To: gcc-bugs



-- 

aoliva at gcc dot gnu dot org changed:

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


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


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

* [Bug bootstrap/34255] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
  2007-11-28  0:53 ` [Bug bootstrap/34255] " aoliva at gcc dot gnu dot org
@ 2007-11-28 10:15 ` rguenth at gcc dot gnu dot org
  2007-11-28 12:16 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-11-28 10:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from rguenth at gcc dot gnu dot org  2007-11-28 10:14 -------
Confirmed.  The mentioned patch has been applied to the trunk already.

> The patch not only causes -g divergence, it also accidentally drops subblocks
> that need to be kept around for the sake of generating debug information for
> them.

This is certainly bad and needs to be (is already) fixed.

> http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01745.html regresses the property
> that code output with -g must be the same as that without -g.  make
> bootstrap-debug demonstrates that several files miscompare after this patch,
> and don't if the patch is reversed.

This causes memory-usage regressions for non-debug builds, for example for
tramp3d-v4 at -O2 -Dleafify=flatten which (peak) memory-usage grows from 807MB
to 1248MB.  (Worse if you also add -fopenmp, less worse if you drop
-Dleafify=flatten)

The following two patches

http://gcc.gnu.org/ml/gcc-patches/2007-11/msg00523.html
http://gcc.gnu.org/ml/gcc-patches/2007-11/msg00524.html

probably address the latter problem in a more efficient way.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-11-28 10:14:58
               date|                            |


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


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

* [Bug bootstrap/34255] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
  2007-11-28  0:53 ` [Bug bootstrap/34255] " aoliva at gcc dot gnu dot org
  2007-11-28 10:15 ` rguenth at gcc dot gnu dot org
@ 2007-11-28 12:16 ` rguenth at gcc dot gnu dot org
  2007-11-28 21:54 ` [Bug middle-end/34255] [4.3 Regression] " pinskia at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-11-28 12:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from rguenth at gcc dot gnu dot org  2007-11-28 12:15 -------
The two patches reduce the boostrap-debug failures that re-appear with
reverting
the part that fixes

> http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01745.html regresses the property
> that code output with -g must be the same as that without -g.  make
> bootstrap-debug demonstrates that several files miscompare after this patch,
> and don't if the patch is reversed.

to

./lcm.o differs
./cfghooks.o differs
./postreload.o differs
./cfgloopmanip.o differs

from several dozen miscompares.  My bet is that this is because we process
the unexpanded_vars list in non-UID order at expansion time.  I'm testing
a patch that sorts them after UID before expanding (we could also keep
a bitmap now with the first patch, but that would be more work now).


-- 


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


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

* [Bug middle-end/34255] [4.3 Regression] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2007-11-28 12:16 ` rguenth at gcc dot gnu dot org
@ 2007-11-28 21:54 ` pinskia at gcc dot gnu dot org
  2007-11-28 22:08 ` rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-11-28 21:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2007-11-28 21:54 -------
Only the RM should change the priority.  And I don't think this is blocking as
the difference is not different in working vs not working code.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|blocker                     |normal
          Component|bootstrap                   |middle-end
           Priority|P1                          |P3
            Summary|scope-blocks-on-a-diet patch|[4.3 Regression] scope-
                   |diverges -g from non-g      |blocks-on-a-diet patch
                   |output code                 |diverges -g from non-g
                   |                            |output code
   Target Milestone|---                         |4.3.0


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


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

* [Bug middle-end/34255] [4.3 Regression] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2007-11-28 21:54 ` [Bug middle-end/34255] [4.3 Regression] " pinskia at gcc dot gnu dot org
@ 2007-11-28 22:08 ` rguenth at gcc dot gnu dot org
  2007-12-04 19:39 ` jakub at gcc dot gnu dot org
  2007-12-04 20:09 ` rguenth at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-11-28 22:08 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from rguenth at gcc dot gnu dot org  2007-11-28 22:08 -------
Also there isn't any regression now, but it works because the patch is (still)
in.


-- 


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


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

* [Bug middle-end/34255] [4.3 Regression] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2007-11-28 22:08 ` rguenth at gcc dot gnu dot org
@ 2007-12-04 19:39 ` jakub at gcc dot gnu dot org
  2007-12-04 20:09 ` rguenth at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu dot org @ 2007-12-04 19:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from jakub at gcc dot gnu dot org  2007-12-04 19:39 -------
Alex's patch has not been reverted and it seems it was agreed on to keep it for
4.3 and only try something different, like Richard's patches, for 4.4.
If so, this isn't a 4.3 regression, because 4.2 was AFAIK eating even more
memory, so this should be just a target 4.4 non-regression memory saving
request.


-- 


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


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

* [Bug middle-end/34255] [4.3 Regression] scope-blocks-on-a-diet patch diverges -g from non-g output code
  2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2007-12-04 19:39 ` jakub at gcc dot gnu dot org
@ 2007-12-04 20:09 ` rguenth at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2007-12-04 20:09 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2007-12-04 20:09 -------
No need to keep this bug open, the issue is fixed with Alex's patch.


-- 

rguenth at gcc dot gnu dot org changed:

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


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


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

end of thread, other threads:[~2007-12-04 20:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-11-28  0:53 [Bug bootstrap/34255] New: scope-blocks-on-a-diet patch diverges -g from non-g output code aoliva at gcc dot gnu dot org
2007-11-28  0:53 ` [Bug bootstrap/34255] " aoliva at gcc dot gnu dot org
2007-11-28 10:15 ` rguenth at gcc dot gnu dot org
2007-11-28 12:16 ` rguenth at gcc dot gnu dot org
2007-11-28 21:54 ` [Bug middle-end/34255] [4.3 Regression] " pinskia at gcc dot gnu dot org
2007-11-28 22:08 ` rguenth at gcc dot gnu dot org
2007-12-04 19:39 ` jakub at gcc dot gnu dot org
2007-12-04 20:09 ` rguenth 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).