aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vector-builder.cc
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2022-09-14 13:53:56 +0200
committerRichard Biener <rguenther@suse.de>2022-09-14 14:50:36 +0200
commitcd14c97cd92ca11c66ee3d8dc4dd543c5aa8e024 (patch)
tree9936c7b2d0245ae14a1ec0eb179adc356eea8a67 /gcc/tree-vector-builder.cc
parent12a8d5e2f2e7d7535115e4e105c0f9eb4d50fdad (diff)
downloadgcc-cd14c97cd92ca11c66ee3d8dc4dd543c5aa8e024.zip
gcc-cd14c97cd92ca11c66ee3d8dc4dd543c5aa8e024.tar.gz
gcc-cd14c97cd92ca11c66ee3d8dc4dd543c5aa8e024.tar.bz2
tree-optimization/106938 - cleanup abnormal edges after inlining
After inlining and IPA transforms we run fixup_cfg to fixup CFG effects in other functions. But that fails to clean abnormal edges from non-pure/const calls which might no longer be necessary when ->calls_setjmp is false. The following ensures this happens and refactors things so we call EH/abnormal cleanup only on the last stmt in a block. PR tree-optimization/106938 * tree-cfg.cc (execute_fixup_cfg): Purge dead abnormal edges for all last stmts in a block. Do EH cleanup only on the last stmt in a block. * gcc.dg/pr106938.c: New testcase.
Diffstat (limited to 'gcc/tree-vector-builder.cc')
0 files changed, 0 insertions, 0 deletions