cause of all the mainline Sparc regressions

Jan Hubicka jh@suse.cz
Thu May 23 07:23:00 GMT 2002


> 
> It is this change:
> 
> +Wed Mar  6 10:59:39 CET 2002  Jan Hubicka  <jh@suse.cz>
> +
> +       * cfgcleanup.c (try_optimize_cfg): Kill blocks.
> +       (try_optimize_cfg): Do not update liveness.
> +       (cleanup-cfg): Loop until try_optimize_cfg and dead code
> +       removal stabilizes; use delete_trivially_dead_insns.
> 
> Specifically the bit that makes delete_trivially_dead_insns
> get invoked from cleanup_cfg.
> 
> It avoids this when CLEANUP_PRE_SIBCALL is set, but there is
> another case where we either have to avoid delete_trivially_dead_insns
> or make it smarter.  That is when we are being called from
> finish_eh_generation().

Hmm, unless I am mistaken, only purpose for finish_eh_gneration to
cleanup cfg is to kill unreachable code.  I guess in that case, it would
be better to dirrectly call delete_unreachable_blocks and since this is
already done, perhaps we don't need anything.

Richard, does this sound sane?

Sorry for the breakage, another early compilation detail I was
completely ignorant off, uhh.

Honza



More information about the Gcc-bugs mailing list