[LLVMdev] newbie question - selecting the write kind of pass

Sameer D. Sahasrabuddhe sameerds at it.iitb.ac.in
Sat Apr 2 19:28:52 PST 2005

On Sat, Apr 02, 2005 at 11:35:30AM -0600, Chris Lattner wrote:

> On Sat, 2 Apr 2005, Sameer D. Sahasrabuddhe wrote:
> > I want to create a simple map from a Value to the instruction that
> > defines it. Such a map is present inside SchedGraph, but I need it in
> > a much simpler context.
> Is this in the context of the code generator?

No ... I am just trying to feel the waters ... simply trying to create
a "data flow graph" from the SSA form. I meant "context" in a very
loose, plain-English way.

> > The documentation says that "a FunctionPass is not allowed to retain
> > state across functions. What does that imply for an Analysis pass
> > derived from FunctionPass?
> Yes.

Ummm ... let me rephrase my question :)
An analysis pass derived from a FunctionPass is not expected to retain
state across functions. What exactly does that mean when the passes
are being run on the program? I assume that analysis will be
instantiated only once, and used everywhere. If that is so, as the
pass writer, do I have to "flush" all data-structures from the
previous run, in runOnFunction?

Research Scholar, KReSIT, IIT Bombay

More information about the llvm-dev mailing list