Mercurial > hg > CbC > CbC_llvm
comparison include/llvm/Target/TargetIntrinsicInfo.h @ 77:54457678186b LLVM3.6
LLVM 3.6
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 08 Sep 2014 22:06:00 +0900 |
parents | 95c75e76d11b |
children | 60c9769439b8 |
comparison
equal
deleted
inserted
replaced
34:e874dbf0ad9d | 77:54457678186b |
---|---|
38 /// The Tys and numTys parameters are for intrinsics with overloaded types | 38 /// The Tys and numTys parameters are for intrinsics with overloaded types |
39 /// (e.g., those using iAny or fAny). For a declaration for an overloaded | 39 /// (e.g., those using iAny or fAny). For a declaration for an overloaded |
40 /// intrinsic, Tys should point to an array of numTys pointers to Type, | 40 /// intrinsic, Tys should point to an array of numTys pointers to Type, |
41 /// and must provide exactly one type for each overloaded type in the | 41 /// and must provide exactly one type for each overloaded type in the |
42 /// intrinsic. | 42 /// intrinsic. |
43 virtual std::string getName(unsigned IID, Type **Tys = 0, | 43 virtual std::string getName(unsigned IID, Type **Tys = nullptr, |
44 unsigned numTys = 0) const = 0; | 44 unsigned numTys = 0) const = 0; |
45 | 45 |
46 /// Look up target intrinsic by name. Return intrinsic ID or 0 for unknown | 46 /// Look up target intrinsic by name. Return intrinsic ID or 0 for unknown |
47 /// names. | 47 /// names. |
48 virtual unsigned lookupName(const char *Name, unsigned Len) const =0; | 48 virtual unsigned lookupName(const char *Name, unsigned Len) const =0; |
50 /// Return the target intrinsic ID of a function, or 0. | 50 /// Return the target intrinsic ID of a function, or 0. |
51 virtual unsigned getIntrinsicID(Function *F) const; | 51 virtual unsigned getIntrinsicID(Function *F) const; |
52 | 52 |
53 /// Returns true if the intrinsic can be overloaded. | 53 /// Returns true if the intrinsic can be overloaded. |
54 virtual bool isOverloaded(unsigned IID) const = 0; | 54 virtual bool isOverloaded(unsigned IID) const = 0; |
55 | 55 |
56 /// Create or insert an LLVM Function declaration for an intrinsic, | 56 /// Create or insert an LLVM Function declaration for an intrinsic, |
57 /// and return it. The Tys and numTys are for intrinsics with overloaded | 57 /// and return it. The Tys and numTys are for intrinsics with overloaded |
58 /// types. See above for more information. | 58 /// types. See above for more information. |
59 virtual Function *getDeclaration(Module *M, unsigned ID, Type **Tys = 0, | 59 virtual Function *getDeclaration(Module *M, unsigned ID, Type **Tys = nullptr, |
60 unsigned numTys = 0) const = 0; | 60 unsigned numTys = 0) const = 0; |
61 }; | 61 }; |
62 | 62 |
63 } // End llvm namespace | 63 } // End llvm namespace |
64 | 64 |