Bug 28251 - dumped addresses makes diffing dumps unusable
Summary: dumped addresses makes diffing dumps unusable
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: other (show other bugs)
Version: 4.2.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-07-04 21:10 UTC by Jorn Wolfgang Rennecke
Modified: 2006-07-17 16:00 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments
Tentative patch (1.66 KB, patch)
2006-07-04 21:24 UTC, Jorn Wolfgang Rennecke
Details | Diff
Tentative patch (2.23 KB, patch)
2006-07-04 22:50 UTC, Jorn Wolfgang Rennecke
Details | Diff
dump diff for mainline r115174 bootstrap failure (3.29 KB, text/plain)
2006-07-05 13:42 UTC, Jorn Wolfgang Rennecke
Details
patch with test case & unroller fix (3.53 KB, patch)
2006-07-11 17:23 UTC, Jorn Wolfgang Rennecke
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jorn Wolfgang Rennecke 2006-07-04 21:10:36 UTC
The introduction of tree addresses in debugging dumps has caused
most lines of debugging dumps to differ.
What we had before was that ordinary dumps produced with the same input &
options by compilers produced in different stages of a bootstrap were reasonably diffable; Slightly different compilations where generally reasonably diffable
with -fdump-unnumbered
Comment 1 Jorn Wolfgang Rennecke 2006-07-04 21:24:06 UTC
Created attachment 11818 [details]
Tentative patch

I'm currently testing this patch.  Hopefully this will allow to pinpoint the
insns that stage3 of current mainline fails to eliminate with peephole2.
Comment 2 Jorn Wolfgang Rennecke 2006-07-04 22:50:57 UTC
Created attachment 11819 [details]
Tentative patch

This one compiles...
Comment 3 Jorn Wolfgang Rennecke 2006-07-05 13:42:30 UTC
Created attachment 11833 [details]
dump diff for mainline r115174 bootstrap failure

The diff with -fdump-noaddr is indeed much more useful to track down make compare failures that either the diff with full information and the one from -fdump-unnumbered.
Comment 4 Jorn Wolfgang Rennecke 2006-07-11 17:23:58 UTC
Created attachment 11860 [details]
patch with test case & unroller fix

I've added a testcase, and it showed failures due to unstable loop unrolling.
It looks like this should be trivial to fix by hashing on insn uids rather
than insn pointers.  I'm currently testing this patch.
Comment 5 patchapp@dberlin.org 2006-07-12 14:15:19 UTC
Subject: Bug number PR other/28251

A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is http://gcc.gnu.org/ml/gcc-patches/2006-07/msg00517.html
Comment 6 Jorn Wolfgang Rennecke 2006-07-17 14:44:57 UTC
Subject: Bug 28251

Author: amylaar
Date: Mon Jul 17 14:44:48 2006
New Revision: 115519

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=115519
Log:
gcc:
	PR other/28251
	* tree.h (dump_addr): Declare.
	* print-tree.c (dump_addr): New function.
	(print_node_brief, print_node): Use it.
	* print-rtl.c (print_rtx): Likewise.
	* common.opt (-fdump-noaddr): New option.
	* doc/invoke.texi (-fdump-noaddr): Document.
	* loop-unroll.c (si_info_hash): Make hash independent of addresses.
	(ve_info_hash): Likewise.
gcc/testsuite:
	PR other/28251
	gcc.c-torture/unsorted/dump-noaddr.c: New test.
	gcc.c-torture/unsorted/dump-noaddr.x: New driver.

Added:
    trunk/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.c
    trunk/gcc/testsuite/gcc.c-torture/unsorted/dump-noaddr.x
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/common.opt
    trunk/gcc/doc/invoke.texi
    trunk/gcc/loop-unroll.c
    trunk/gcc/print-rtl.c
    trunk/gcc/print-tree.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree.h

Comment 7 Jorn Wolfgang Rennecke 2006-07-17 16:00:03 UTC
Fixed in mainline.