diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b20204dd16b..a9efa52b45b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2001-08-03 Richard Henderson + + * rtlanal.c (find_first_parameter_load): Stop if we + reach a CODE_LABEL at BOUNDARY. + 2001-08-03 Richard Henderson * config/alpha/alpha.md (force_movdi): New insn. diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c index 9762f9eaa55..0502b85cf79 100644 --- a/gcc/rtlanal.c +++ b/gcc/rtlanal.c @@ -2851,12 +2851,16 @@ find_first_parameter_load (call_insn, boundary) if (GET_CODE (before) == CALL_INSN) break; - /* Our caller needs eighter ensure, that we will find all sets + /* Our caller needs either ensure that we will find all sets (in case code has not been optimized yet), or take care for possible labels in a way by setting boundary to preceeding CODE_LABEL. */ - if (GET_CODE (before) == CODE_LABEL && before != boundary) - abort (); + if (GET_CODE (before) == CODE_LABEL) + { + if (before != boundary) + abort (); + break; + } note_stores (PATTERN (before), parms_set, &parm); }