This is the mail archive of the
mailing list for the GCC project.
Re: 03/03: Keep dominance info up to date
- From: Andrey Belevantsev <abel at ispras dot ru>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: "Vladimir N. Makarov" <vmakarov at redhat dot com>
- Date: Tue, 09 Nov 2010 20:31:56 +0300
- Subject: Re: 03/03: Keep dominance info up to date
- References: <4CA9F3DB.firstname.lastname@example.org> <4CA9F69F.email@example.com> <4CC1427E.firstname.lastname@example.org>
Ping^2. There is a duplication PR about this bug now (46384). Testing was
fine, I didn't mention it in the previous ping.
On 22.10.2010 11:51, Andrey Belevantsev wrote:
On 04.10.2010 19:45, Andrey Belevantsev wrote:
This main patch uses set_immediate_dominator and iterate_fix_dominators
when updating control flow in selective scheduler. The difficulty I had is
that when an unreachable block may be created, you need to defer the update
until the block is removed, so sometimes we avoid updating dominance info
in sel_redirect_edge_and_branch and postpone it to maybe_tidy_empty_bb
instead. I will add testcase from PR 43603, and I need to minimize one from
Bootstrapped with the other two patches, testing is in progress. Ok for
trunk if it succeeds? Ok for 4.5/4.4 after a week or two?
2010-10-04 Andrey Belevantsev <email@example.com>
* haifa-sched.c (sched_create_recovery_edges): Update
* sel-sched-ir.c (maybe_tidy_empty_bb): Update dominator info
after deleting an empty block.
(sel_remove_bb): Update dominator info after removing a block.
(sel_redirect_edge_and_branch_force): Assert that no unreachable
blocks will be created. Update dominator info.
(sel_redirect_edge_and_branch): Update dominator info when
basic blocks do not become unreachable.
(sel_remove_loop_preheader): Update dominator info.