This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa]: Overlap of variable with same variable?
- From: Andrew MacLeod <amacleod at redhat dot com>
- To: Daniel Berlin <dberlin at dberlin dot org>
- Cc: gcc mailing list <gcc at gcc dot gnu dot org>
- Date: 29 May 2003 23:42:12 -0400
- Subject: Re: [tree-ssa]: Overlap of variable with same variable?
- References: <2A6B8CAF-9231-11D7-9C2D-000A95A34564@dberlin.org>
On Thu, 2003-05-29 at 19:56, Daniel Berlin wrote:
> When I hit the abort, it says there is an overlap between t and var
> Except that:
>
> (gdb) p debug_generic_expr (t)
> pretmp.389_37
> $1 = void
> (gdb) p debug_generic_expr (var)
> pretmp.389
>
> This is not a possible overlap, they are the same variable.
Actually it can be an overlap. pretmp.389_XXX has been coalesced with
pretmp.389 already, and it interfered with pretmp.389_37. That forces
_37 to get a new variable. Look in the list of coalesces And I bet its
there. I should providea better mechanism for debugging all the bits
that have gone on... perhaps a dump of the conflict graph, but the
mechanism it provides wasnt very helpful.
>
> If it helps, it could be we aren't updating the end of the bb tree
> properly either , since in this case, pretmp.389_37 is saved only to a
> statement at the end of a bb, and thus, if end_bb wasn't updated
> properly, the out-of-ssa dropper would miss it.
>
> Any ideas?
>
First, look back, Im sure you'll find pretmp.389 coalesced with
something which interferes with _37
I'll think about what better debugging could be available.
Andrew