On Fri, 2012-06-22 at 10:44 +0200, Richard Guenther wrote: > On Thu, 21 Jun 2012, William J. Schmidt wrote:
> > I ran into a glitch with multiply_by_const_cost. The original code > > declared a static htab_t in the function and allocated it on demand. > > When I tried adding a second one in the same manner, I ran into a > > locking problem in the memory management library code during a call to > > delete_htab. The original implementation seemed a bit dicey to me > > anyway, so I changed this to explicitly allocate and deallocate the hash > > tables on (entry to/exit from) IVOPTS. > > Huh. That's weird and should not happen. Still it makes sense to > move this to a per-function cache given that its size is basically > unbound. > Hm, this appears not to be related to my changes. I ran into the same issue when bootstrapping some other change without any of the IVOPTS changes committed. In both cases the stuck lock occurred when compiling tree-vect-stmts.c. I'll try to debug this when I get some time, unless somebody else figures it out sooner. Bill