diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2020-08-07 01:31:38 +0000 |
---|---|---|
committer | Segher Boessenkool <segher@kernel.crashing.org> | 2020-09-09 16:55:22 +0000 |
commit | 69ca5f3a988266da8905aef9cf22aa02807e0471 (patch) | |
tree | 661a3de4c286667c65fa793edf8a63e48399540b /gcc/tree-ssa-loop-split.c | |
parent | ad2a37157d3476dffb3baf93ca5001c9f6c44bda (diff) | |
download | gcc-69ca5f3a988266da8905aef9cf22aa02807e0471.zip gcc-69ca5f3a988266da8905aef9cf22aa02807e0471.tar.gz gcc-69ca5f3a988266da8905aef9cf22aa02807e0471.tar.bz2 |
bb-reorder: Remove a misfiring micro-optimization (PR96475)
When the compgotos pass copies the tail of blocks ending in an indirect
jump, there is a micro-optimization to not copy the last one, since the
original block will then just be deleted. This does not work properly
if cleanup_cfg does not merge all pairs of blocks we expect it to. It
also does not work if that last block can be merged into multiple
predecessors.
2020-09-09 Segher Boessenkool <segher@kernel.crashing.org>
PR rtl-optimization/96475
* bb-reorder.c (maybe_duplicate_computed_goto): Remove single_pred_p
micro-optimization.
Diffstat (limited to 'gcc/tree-ssa-loop-split.c')
0 files changed, 0 insertions, 0 deletions