This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/21639] poisoned ggc memory used for -ftree-vectorize
- From: "rakdver at atrey dot karlin dot mff dot cuni dot cz" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 24 May 2005 14:24:18 -0000
- Subject: [Bug tree-optimization/21639] poisoned ggc memory used for -ftree-vectorize
- References: <20050518001348.21639.janis@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From rakdver at atrey dot karlin dot mff dot cuni dot cz 2005-05-24 14:24 -------
Subject: Re: poisoned ggc memory used for -ftree-vectorize
> > Is there a rule that ggc_collect should not be called during loop
> optimizations?
>
> I don't know. (Zdenek?)
there are several places in loop opts that are not GGC-safe (in
particular the tree nodes refered from loop structures are not
seen by garbage collector, and I think there are some other instances).
So at the moment, you cannot run ggc_collect inside loop opts.
> I think passes within the loop optimizer can assume that the scev information
> cached in the scev htab can be safely used. During vectorization analysis some
> new entries in the scev htab are initialized, and these are valid to be used by
> subsequent passes. If no transformation takes place during vectorization then
> there's no need to invalidate this information. So I don't think we're missing
> a call to scev_reset in the vectorizer.
>
> The problem is more likely around the fact that ggc_collect, for some reason
> seems to free up data that is still pointed to from scalar_evolution_info.
>
>
> > If you have some time to spare, use a --enable-checking=gcac compiler,
> and the failure will likely happen much earlier.
>
> thanks for the tip
>
>
> > You have to make sure that ... the contents of
> the scalar evolution hash table are reached during garbage collection.
>
> any (other) hints on how to do that?
>
> (by the way, I actually found a few places where don't properly free up
> information in the vectorizer, but fixing those didn't solve this particular
> problem).
>
> --
> What |Removed |Added
> ----------------------------------------------------------------------------
> CC| |rakdver at atrey dot karlin
> | |dot mff dot cuni dot cz
>
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21639
>
> ------- You are receiving this mail because: -------
> You are on the CC list for the bug, or are watching someone who is.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21639