Commit 5872662b by Richard Henderson Committed by Richard Henderson

re PR middle-end/24049 (compiler error: Segmentation fault In function 'DESX_CBCUpdate')

        PR 24049
        * passes.c (init_optimization_passes): Move pass_lower_vector_ssa
        under pass_vectorize.  Clear TODO_ggc_collect from the dce pass
        under pass_vectorize.

From-SVN: r105029
parent d6b27b56
2005-10-06 Richard Henderson <rth@redhat.com>
PR 24049
* passes.c (init_optimization_passes): Move pass_lower_vector_ssa
under pass_vectorize. Clear TODO_ggc_collect from the dce pass
under pass_vectorize.
2005-10-05 Devang Patel <dpatel@apple.com>
PR Debug/23205
......
......@@ -588,14 +588,19 @@ init_optimization_passes (void)
/* NEXT_PASS (pass_may_alias) cannot be done again because the
vectorizer creates alias relations that are not supported by
pass_may_alias. */
NEXT_PASS (pass_lower_vector_ssa);
NEXT_PASS (pass_complete_unroll);
NEXT_PASS (pass_iv_optimize);
NEXT_PASS (pass_tree_loop_done);
*p = NULL;
p = &pass_vectorize.sub;
NEXT_PASS (pass_lower_vector_ssa);
/* ??? The loop optimizers are not GC safe. See PR 21805.
Turn off GC while registering this pass. */
pass_dce.todo_flags_finish &= ~TODO_ggc_collect;
NEXT_PASS (pass_dce);
pass_dce.todo_flags_finish |= TODO_ggc_collect;
gcc_assert (p != &pass_dce.next);
*p = NULL;
p = &pass_loop2.sub;
......
/* { dg-do compile } */
/* { dg-options "-O1 -ftree-vectorize --param ggc-min-heapsize=0 --param ggc-min-expand=0" } */
int DES_CBCUpdate(unsigned char * output, int len)
{
int work[2];
unsigned int i;
for(i = 0;i < len/8;i++)
unscrunch (&output[8*i], work);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment