diff options
author | Mon P Wang <wangmp@apple.com> | 2009-02-24 23:17:49 +0000 |
---|---|---|
committer | Mon P Wang <wangmp@apple.com> | 2009-02-24 23:17:49 +0000 |
commit | 0d52ff1f7b993750a74a5d4432273092de9af069 (patch) | |
tree | 06eeb3bc80811d1d3161e8587d4da8db368da646 /include/llvm/Target/TargetIntrinsicInfo.h | |
parent | d8e880c670699bd56dc3968647a4b963793d201d (diff) | |
download | llvm-0d52ff1f7b993750a74a5d4432273092de9af069.tar.gz llvm-0d52ff1f7b993750a74a5d4432273092de9af069.tar.bz2 llvm-0d52ff1f7b993750a74a5d4432273092de9af069.tar.xz |
Added support to have TableGen provide information if an intrinsic (core
or target) can be overloaded or not.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65404 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target/TargetIntrinsicInfo.h')
-rw-r--r-- | include/llvm/Target/TargetIntrinsicInfo.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/include/llvm/Target/TargetIntrinsicInfo.h b/include/llvm/Target/TargetIntrinsicInfo.h index 323e29afee..c14275f52a 100644 --- a/include/llvm/Target/TargetIntrinsicInfo.h +++ b/include/llvm/Target/TargetIntrinsicInfo.h @@ -18,6 +18,7 @@ namespace llvm { class Function; class Module; +class Type; //--------------------------------------------------------------------------- /// @@ -39,7 +40,19 @@ public: virtual Function *getDeclaration(Module *M, const char *BuiltinName) const { return 0; } - + + // Returns the Function declaration for intrinsic BuiltinName. If the + // intrinsic can be overloaded, uses Tys to return the correct function. + virtual Function *getDeclaration(Module *M, const char *BuiltinName, + const Type **Tys, unsigned numTys) const { + return 0; + } + + // Returns true if the Builtin can be overloaded. + virtual bool isOverloaded(Module *M, const char *BuiltinName) const { + return false; + } + virtual unsigned getIntrinsicID(Function *F) const { return 0; } }; |