This is the mail archive of the
mailing list for the GCC project.
Re: Fix GCC bug causing bootstrap failure with vectorizer turned on
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: Cong Hou <congh at google dot com>, gcc-patches at gcc dot gnu dot org, David Li <davidxl at google dot com>
- Date: Thu, 18 Jul 2013 19:18:23 +0200
- Subject: Re: Fix GCC bug causing bootstrap failure with vectorizer turned on
- References: <CAK=A3=3vpmrMex1++0p54Z_8f6fHATDLZE+1tAWhKBtXdpdi+g at mail dot gmail dot com> <51E81B9F dot 5020602 at redhat dot com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Thu, Jul 18, 2013 at 10:45:19AM -0600, Jeff Law wrote:
> If I understand you correctly, you're claiming that the DECL_UID can
> vary based on whether or not we're emitting debug info. This can be
> seen in iterative_hash_expr:
Yes, for e.g. SSA_NAME_VERSION, we require that it is the same in between
-g -fvar-tracking-assignments and -g0, for DECL_UIDs, only the relative
ordering must be preserved, as in, for VTA the gaps between DECL_UID
of decls seen both in -g0 and -g code can be bigger.
So -g0 can use for decls a, c, b uids say 12 13 14, while -g can use
12 27 39. Thus hashing the DECL_UID if e.g. the hash table is later on
traversed could lead to -fcompare-debug failures.