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