diff --git a/gcc/ChangeLog b/gcc/ChangeLog index cdc724b7cea..184b44d2afe 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-01-15 Richard Earnshaw + + PR optimization/13375 + * gcse.c (handle_avail_expr): Just return if the source is not a + single set. + 2004-01-15 Richard Earnshaw Daniel Jacobowitz diff --git a/gcc/gcse.c b/gcc/gcse.c index f3656c19d47..6053dffe833 100644 --- a/gcc/gcse.c +++ b/gcc/gcse.c @@ -3381,8 +3381,11 @@ handle_avail_expr (rtx insn, struct expr *expr) if (insn_computes_expr == NULL) return 0; expr_set = single_set (insn_computes_expr); + /* The set might be in a parallel with multiple sets; we could + probably handle that, but there's currently no easy way to find + the relevant sub-expression. */ if (!expr_set) - abort (); + return 0; found_setting = 0; use_src = 0;