[LLVMdev] Implementing customized intrinsic
Tanya M. Lattner
tonic at nondot.org
Wed Jan 21 20:01:29 CST 2009
Does the llvm annotation intrinsic not work for what you are trying to do?
On Wed, 21 Jan 2009, Haohui Mai wrote:
> Dear all,
> Currently I'm working on a project that add various checks into the
> LLVM bitcode. For example, I insert function calls before every
> load / store instructions to guarantee that these instructions are
> safe. I really want to implement them as LLVM intrinsics or ``special
> function calls'' so that I am able to leverage the power of things
> like InstVisitor. However, it seems it is difficult to do it without
> changing LLVM's source codes, cause
> i) all constructors of CallInst are private
> ii) There's no interfaces for implementing customized intrinsics
> (without changing intrinsics*.td)
> It is very helpful to mark these checks as special calls (like
> intrinsics), it would ease the implementation of optimizations since
> they only work on these special calls, say, I could save some
> information in the subclass of CallInst.
> I also notice that the access identifier of CallInst are changed after
> LLVM 2.0. I would be appreciated if you guys could explain the
> rationale behind the changes.
> Thank you very much.
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
More information about the LLVMdev