This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug lto/42088] flag_gtoggle in free_lang_data hides -fcompare-debug errors
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Nov 2009 16:51:36 -0000
- Subject: [Bug lto/42088] flag_gtoggle in free_lang_data hides -fcompare-debug errors
- References: <bug-42088-334@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from rguenther at suse dot de 2009-11-18 16:51 -------
Subject: Re: flag_gtoggle in free_lang_data hides -fcompare-debug
errors
On Wed, 18 Nov 2009, aoliva at gcc dot gnu dot org wrote:
> ------- Comment #3 from aoliva at gcc dot gnu dot org 2009-11-18 16:30 -------
> Different UIDs affect hash table walks, which in turn may affect codegen.
> We've had several -g/-g0 codegen differences ultimately caused by decl UID
> differences, and they were detected and fixed long before -fcompare-debug was
> even introduced, i.e., they were detected with the compare-debug script that
> compares actual generated code.
>
> That's why -fcompare-debug must report such differences. Even if the code ends
> up the same in one particular testcase, supersets of that testcase would likely
> diverge. Disregarding the UIDs in -fcompare-debug would hide errors.
Sorry, but hashtable walks are always broken if codegen depends on them
and you do not ensure proper ordering. Enforcing same UIDs for -g/-g0
just forces us to use more memory than necessary.
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42088