On 11/09/2017 07:34 PM, Alexandre Oliva wrote:
> If find_bb_boundaries is given a block with zero or one nondebug insn
> beside debug insns, it shouldn't purge dead edges, because without
> debug insns we wouldn't purge them at that point.  Doing so may change
> the order in which edges are processed, and ultimately lead to
> different transformations to the CFG and then to different
> optimizations.
> 
> We shouldn't, however, retain debug insns after control flow insns, so
> if we find debug insns after a single insn that happens to be a
> control flow insn, do the debug insn cleanups, but still refrain from
> purging dead edges at that point.
> 
> 
> for  gcc/ChangeLog
> 
>       * cfgbuild.c (find_bb_boundaries): Don't purge dead edges if,
>       without debug insns, we wouldn't, but clean up debug insns
>       after a control flow insn nevertheless.
OK.  Seems to me like it's independent of the rest of the work and
should go in immediately.

jeff

Reply via email to