Lines Matching defs:CodeGenIntrinsic
27 struct CodeGenIntrinsic { struct
28 Record *TheDef; // The actual record defining this intrinsic.
29 std::string Name; // The name of the LLVM function "llvm.bswap.i32"
30 std::string EnumName; // The name of the enum "bswap_i32"
31 std::string ClangBuiltinName; // Name of the corresponding GCC builtin, or "".
32 std::string MSBuiltinName; // Name of the corresponding MS builtin, or "".
33 std::string TargetPrefix; // Target prefix, e.g. "ppc" for t-s intrinsics.
40 struct IntrinsicSignature {
54 IntrinsicSignature IS;
60 unsigned Properties;
64 bool isOverloaded;
67 bool isCommutative;
70 bool canThrow;
73 bool isNoDuplicate;
76 bool isNoMerge;
79 bool isNoReturn;
82 bool isNoCallback;
85 bool isNoSync;
88 bool isNoFree;
91 bool isWillReturn;
94 bool isCold;
97 bool isConvergent;
101 bool hasSideEffects;
104 bool isSpeculatable;
107 bool isStrictFP;
109 enum ArgAttrKind {
123 struct ArgAttribute {
135 SmallVector<SmallVector<ArgAttribute, 0>> ArgumentAttributes;
159 CodeGenIntrinsic(Record *R, std::vector<Record *> DefaultProperties); argument