Hi! This fixes stdarg-2.c failures on i?86-linux, bootstrapped/regtested on i686-linux, will commit as obvious tonight.
2011-11-11 Jakub Jelinek <ja...@redhat.com> PR tree-optimization/51091 * tree-stdarg.c (execute_optimize_stdarg): Ignore TREE_CLOBBER_P rhs also in the va_list_simple_ptr case. --- gcc/tree-stdarg.c.jj 2011-11-08 23:35:12.000000000 +0100 +++ gcc/tree-stdarg.c 2011-11-11 15:02:59.005511553 +0100 @@ -847,8 +847,12 @@ execute_optimize_stdarg (void) if (get_gimple_rhs_class (gimple_assign_rhs_code (stmt)) == GIMPLE_SINGLE_RHS) { + /* Check for ap ={v} {}. */ + if (TREE_CLOBBER_P (rhs)) + continue; + /* Check for tem = ap. */ - if (va_list_ptr_read (&si, rhs, lhs)) + else if (va_list_ptr_read (&si, rhs, lhs)) continue; /* Check for the last insn in: @@ -875,6 +879,7 @@ execute_optimize_stdarg (void) /* Check for ap ={v} {}. */ if (TREE_CLOBBER_P (rhs)) continue; + /* Check for ap[0].field = temp. */ else if (va_list_counter_struct_op (&si, lhs, rhs, true)) continue; Jakub