This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Thoughts about semantics of BB_VISITED




On Fri, 7 Jan 2005, Zdenek Dvorak wrote:

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.

Why can't one just pass an sbitmap to get_loop_body, instead of it destroying visited flags without telling you?


--Dan


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]