On 12/3/21 11:46, Richard Biener wrote:
On December 3, 2021 3:15:25 PM GMT+01:00, Andrew MacLeod <amacl...@redhat.com> 
wrote:
When something like the loop unswitching code adds elements to the CFGs,
does this invalidate the dominators? or are they updated?  or is it in
an in between state.

Im curious because a) the relation code uses it under the covers, and b)
Im looking to add a ranger caching improvement which also uses
dominators if they are available.

When blocks are added, I wonder what will happen to

   1) dom_info_available_p (CDI_DOMINATORS)  (is it still true), and
then what happens to

   2) get_immediate_dominator (CDI_DOMINATORS, bb);  for one of the
newly added BBs.
Dominators are generally updated by most high level CFG manipulations, just the 
fast queries are invalidated. If a pass uses CFG manipulation that does not 
update dominators you will get ICEs or silent wron code...

Richard.

Are post dominators generally available as well?  ie, does the presence of one imply the other?  or do I need to call calculate_dominance _info with CDI_POST_DOMINATORS?

Thanks

Andrew


Reply via email to