Lines Matching defs:OverloadKind
25 enum OverloadKind : uint16_t {
55 static const char *getOverloadTypeName(OverloadKind Kind) {
57 case OverloadKind::HALF:
59 case OverloadKind::FLOAT:
61 case OverloadKind::DOUBLE:
63 case OverloadKind::I1:
65 case OverloadKind::I8:
67 case OverloadKind::I16:
69 case OverloadKind::I32:
71 case OverloadKind::I64:
73 case OverloadKind::VOID:
74 case OverloadKind::UNDEFINED:
76 case OverloadKind::ObjectType:
77 case OverloadKind::UserDefineType:
83 static OverloadKind getOverloadKind(Type *Ty) {
85 return OverloadKind::VOID;
90 return OverloadKind::VOID;
92 return OverloadKind::HALF;
94 return OverloadKind::FLOAT;
96 return OverloadKind::DOUBLE;
102 return OverloadKind::I1;
104 return OverloadKind::I8;
106 return OverloadKind::I16;
108 return OverloadKind::I32;
110 return OverloadKind::I64;
113 return OverloadKind::VOID;
117 return OverloadKind::UserDefineType;
120 // how we're handling overloads and remove the `OverloadKind` proxy enum.
125 return OverloadKind::UNDEFINED;
129 static std::string getTypeName(OverloadKind Kind, Type *Ty) {
130 if (Kind < OverloadKind::UserDefineType) {
132 } else if (Kind == OverloadKind::UserDefineType) {
135 } else if (Kind == OverloadKind::ObjectType) {
166 static std::string constructOverloadName(OverloadKind Kind, Type *Ty,
168 if (Kind == OverloadKind::VOID) {
176 static std::string constructOverloadTypeName(OverloadKind Kind,
178 if (Kind == OverloadKind::VOID)
181 assert(Kind < OverloadKind::UserDefineType && "invalid overload kind");
197 OverloadKind Kind = getOverloadKind(ElementTy);
479 OverloadKind Kind = getOverloadKind(OverloadTy);
483 if ((ValidTyMask != OverloadKind::UNDEFINED) &&