Lines Matching defs:CodeGenIntrinsic
28 struct CodeGenIntrinsic { struct
29 Record *TheDef; // The actual record defining this intrinsic.
30 std::string Name; // The name of the LLVM function "llvm.bswap.i32"
31 std::string EnumName; // The name of the enum "bswap_i32"
32 std::string ClangBuiltinName; // Name of the corresponding GCC builtin, or "".
33 std::string MSBuiltinName; // Name of the corresponding MS builtin, or "".
34 std::string TargetPrefix; // Target prefix, e.g. "ppc" for t-s intrinsics.
41 struct IntrinsicSignature {
55 IntrinsicSignature IS;
61 unsigned Properties;
65 bool isOverloaded;
68 bool isCommutative;
71 bool canThrow;
74 bool isNoDuplicate;
77 bool isNoMerge;
80 bool isNoReturn;
83 bool isNoCallback;
86 bool isNoSync;
89 bool isNoFree;
92 bool isWillReturn;
95 bool isCold;
98 bool isConvergent;
102 bool hasSideEffects;
105 bool isSpeculatable;
108 bool isStrictFP;
110 enum ArgAttrKind {
124 struct ArgAttribute {
158 CodeGenIntrinsic(Record *R, ArrayRef<Record *> DefaultProperties); argument