API CHANGE: Contexts for Passes

Hey folks,

As a number of people have observed, the current mechanism for providing an LLVMContext to each pass is extremely hackish, and tends to break down in lots of interesting ways. In light of this, I've decided to drop the automagical nature of this mechanism. Because types now hold references to contexts, it is now trivial to get a context from within a pass, and I am adding a getContext() accessor to Value to make it even simpler.

Summary: The Context member of Pass will be going away. Please fetch a context from a Type or Value instead.

--Owen

Hey folks,

As a number of people have observed, the current mechanism for
providing an LLVMContext to each pass is extremely hackish, and tends
to break down in lots of interesting ways. In light of this, I've
decided to drop the automagical nature of this mechanism. Because
types now hold references to contexts, it is now trivial to get a
context from within a pass, and I am adding a getContext() accessor to
Value to make it even simpler.

Summary: The Context member of Pass will be going away. Please fetch
a context from a Type or Value instead.

BTW Could someone put a newline on the end of LLVMContext.cpp as Cygwin complains about this every time it compiles. I don't have SVN access so cannot do this myself.

Thanks,

Aaron

BTW Could someone put a newline on the end of LLVMContext.cpp as Cygwin complains about this every time it compiles. I don't have SVN access so cannot do this myself.

Done.

Ciao,

Duncan.