summaryrefslogtreecommitdiff
path: root/gcc/tree-pretty-print.c
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2017-12-12 02:15:44 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2017-12-12 02:15:44 +0000
commiteb8b347423582a66758699748ffc3c499f6bdde2 (patch)
tree95241bed540bcd201bd588ac089b1c96ac706147 /gcc/tree-pretty-print.c
parent65f4b8759bda30d63404acb381b24a2ec960e667 (diff)
[SFN] stabilize find_bb_boundaries
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. From-SVN: r255567
Diffstat (limited to 'gcc/tree-pretty-print.c')
0 files changed, 0 insertions, 0 deletions