http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46931

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-12-14 
08:04:54 UTC ---
I think the actual problem was introduced in PR46172 commit, with the addition
of remove_dead_stmts_from_loop, as we now DCE what we have created during the
vectorization.
This function gsi_removes a stmt and then calls release_defs, which does
nothing though, because the SSA_NAME is name_registered_for_update_p, so the
release of it is deferred.  But when delete_update_ssa attempts to release the
SSANAME afterwards, the bb for the stmt is already NULL and so gsi_for_stmt
fails.

Not sure if there is something wrong on the remove_dead_stmts_from_loop side,
or if just releasing what has been created in the same pass has never been done
before and we should make insert_debug_temp_for_var_def do nothing if
gsi is NULL and def_stmt has NULL gimple_bb and the RHS isn't a constant.

Reply via email to