Thoughts about semantics of BB_VISITED
Zdenek Dvorak
rakdver@atrey.karlin.mff.cuni.cz
Fri Jan 7 17:51:00 GMT 2005
Hello,
> >>>If the state of the mark would be undefined, you would need either to
> >>>clean them up first (over whole cfg), or use bitmaps for the marks.
> >>>Both of these approaches bring a risk of quadratic behavior.
> >>>
> >>
> >>Quadratic behaviour? How?
> >
> >
> >because the places where it is used now (most notably, get_loop_body)
> >do not look at whole cfg, but just at the loop body.
> >
> Oh, I see. So, this is inside a helper, not a pass. How unfortunate.
> Perhaps get_loop_body should not use BB_VISITED. What if the pass
> calling get_loop_body is using BB_VISITED for its own processing?
then it is doomed :-(. Quite often there is no real reason why a pass
should use BB_VISITED -- it can simply use sbitmap of basic blocks instead.
> In any case, I agree that we should assert this inside verify_flow_info.
> I'll prepare a patch.
Thanks.
Zdenek
More information about the Gcc
mailing list