Lines Matching refs:OS

20   void emit(raw_ostream &OS);
23 void emitTargetIndependentNames(raw_ostream &OS);
24 void emitFnAttrCompatCheck(raw_ostream &OS, bool IsStringAttr);
32 void Attributes::emitTargetIndependentNames(raw_ostream &OS) { in emitTargetIndependentNames() argument
33 OS << "#ifdef GET_ATTR_NAMES\n"; in emitTargetIndependentNames()
34 OS << "#undef GET_ATTR_NAMES\n"; in emitTargetIndependentNames()
36 OS << "#ifndef ATTRIBUTE_ALL\n"; in emitTargetIndependentNames()
37 OS << "#define ATTRIBUTE_ALL(FIRST, SECOND)\n"; in emitTargetIndependentNames()
38 OS << "#endif\n\n"; in emitTargetIndependentNames()
41 OS << "#ifndef " << MacroName << "\n"; in emitTargetIndependentNames()
42 OS << "#define " << MacroName in emitTargetIndependentNames()
44 OS << "#endif\n\n"; in emitTargetIndependentNames()
47 OS << MacroName << "(" << A->getName() << "," in emitTargetIndependentNames()
51 OS << "#undef " << MacroName << "\n\n"; in emitTargetIndependentNames()
58 OS << "#undef ATTRIBUTE_ALL\n"; in emitTargetIndependentNames()
59 OS << "#endif\n\n"; in emitTargetIndependentNames()
61 OS << "#ifdef GET_ATTR_ENUM\n"; in emitTargetIndependentNames()
62 OS << "#undef GET_ATTR_ENUM\n"; in emitTargetIndependentNames()
65 OS << "First" << KindName << " = " << Value << ",\n"; in emitTargetIndependentNames()
67 OS << A->getName() << " = " << Value << ",\n"; in emitTargetIndependentNames()
70 OS << "Last" << KindName << " = " << (Value - 1) << ",\n"; in emitTargetIndependentNames()
72 OS << "#endif\n\n"; in emitTargetIndependentNames()
75 void Attributes::emitFnAttrCompatCheck(raw_ostream &OS, bool IsStringAttr) { in emitFnAttrCompatCheck() argument
76 OS << "#ifdef GET_ATTR_COMPAT_FUNC\n"; in emitFnAttrCompatCheck()
77 OS << "#undef GET_ATTR_COMPAT_FUNC\n"; in emitFnAttrCompatCheck()
79 OS << "static inline bool hasCompatibleFnAttrs(const Function &Caller,\n" in emitFnAttrCompatCheck()
81 OS << " bool Ret = true;\n\n"; in emitFnAttrCompatCheck()
88 OS << " Ret &= " << FuncName << "(Caller, Callee);\n"; in emitFnAttrCompatCheck()
91 OS << "\n"; in emitFnAttrCompatCheck()
92 OS << " return Ret;\n"; in emitFnAttrCompatCheck()
93 OS << "}\n\n"; in emitFnAttrCompatCheck()
97 OS << "static inline void mergeFnAttrs(Function &Caller,\n" in emitFnAttrCompatCheck()
102 OS << " " << FuncName << "(Caller, Callee);\n"; in emitFnAttrCompatCheck()
105 OS << "}\n\n"; in emitFnAttrCompatCheck()
107 OS << "#endif\n"; in emitFnAttrCompatCheck()
110 void Attributes::emitAttributeProperties(raw_ostream &OS) { in emitAttributeProperties() argument
111 OS << "#ifdef GET_ATTR_PROP_TABLE\n"; in emitAttributeProperties()
112 OS << "#undef GET_ATTR_PROP_TABLE\n"; in emitAttributeProperties()
113 OS << "static const uint8_t AttrPropTable[] = {\n"; in emitAttributeProperties()
116 OS << "0"; in emitAttributeProperties()
118 OS << " | AttributeProperty::" << cast<DefInit>(P)->getDef()->getName(); in emitAttributeProperties()
119 OS << ",\n"; in emitAttributeProperties()
122 OS << "};\n"; in emitAttributeProperties()
123 OS << "#endif\n"; in emitAttributeProperties()
126 void Attributes::emit(raw_ostream &OS) { in emit() argument
127 emitTargetIndependentNames(OS); in emit()
128 emitFnAttrCompatCheck(OS, false); in emit()
129 emitAttributeProperties(OS); in emit()
134 void EmitAttributes(RecordKeeper &RK, raw_ostream &OS) { in EmitAttributes() argument
135 Attributes(RK).emit(OS); in EmitAttributes()