http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46172
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-11-02 13:18:57 UTC --- Ah, if this is in dead code created by vectorizer that really shouldn't be ever expanded, then either we need to arrange for DCE to be performed after vectorizer even if flag_tree_vectorize && !flag_tree_dce (e.g. by using a different pass structure e.g. instead of pass_dce_loop and use a different gate for it right after vectorizer), or vectorizer shouldn't create garbage. -fno-tree-dce is sometimes useful for compiler testing to write testcases e.g. for expansion and RTL passes bugs, so making it unconditional is not a good idea.