PATCH: register coalescing in SSA

Alex Samuel
Thu Apr 6 22:45:00 GMT 2000

Richard Henderson <> writes:

  > + for_each_successor_phi (bb->index, &set_phi_alternative_reg,
  > +     new_live_at_end);

  Richard> Please use a basic_block rather than an index where ever
  Richard> possible.

I did this because rtl.h is included before basic-block.h.  However,
it seems sensible to move declarations of ssa.c functions to the
latter.  Yes?

  > !  /* Don't eliminate dead code here.  The CFG we computed above must 
  > !     remain unchanged until we are finished emerging from SSA form -- 
  > !     the phi node representation depends on it.  */ 
  > !  life_analysis (get_insns (), max_reg_num (), NULL, 0);

  Richard> Dead code elimination does not change the CFG.  I have
  Richard> cases where it should, but I have never addressed that.
  Richard> What was the real bug?

If I recall correctly, there were cases in which the next call to
find_basic_blocks numbered the blocks differently.


More information about the Gcc-patches mailing list