On 12/04/2011 01:27 PM, Richard Sandiford wrote:

> OK, here it is.  As well as switching to the backward scan and incremental
> liveness updates, I added a test for another case that I stumbled over:
> 
>   /* Reject targets of abnormal edges.  This is needed for correctness
>      on ports like Alpha and MIPS, whose pic_offset_table_rtx can die on
>      exception edges even though it is generally treated as call-saved
>      for the majority of the compilation.  Moving across abnormal edges
>      isn't going to be interesting for shrink-wrap usage anyway.  */
>   if (live_edge->flags & EDGE_ABNORMAL)
>     return NULL;
> 

>       * sched-int.h (bb_note): Move to...
>       * basic-block.h: ...here.
>       * haifa-sched.c (bb_note): Move to...
>       * cfgrtl.c: ...here.
>       * function.c (next_block_for_reg): New function.
>       (move_insn_for_shrink_wrap): Likewise.
>       (prepare_shrink_wrap): Rewrite to use the above.

Ok and thanks.


Bernd

Reply via email to