Lines Matching refs:OS

23   void emit(raw_ostream &OS);
26 void emitTargetIndependentNames(raw_ostream &OS);
27 void emitFnAttrCompatCheck(raw_ostream &OS, bool IsStringAttr);
35 void Attributes::emitTargetIndependentNames(raw_ostream &OS) { in emitTargetIndependentNames() argument
36 OS << "#ifdef GET_ATTR_NAMES\n"; in emitTargetIndependentNames()
37 OS << "#undef GET_ATTR_NAMES\n"; in emitTargetIndependentNames()
39 OS << "#ifndef ATTRIBUTE_ALL\n"; in emitTargetIndependentNames()
40 OS << "#define ATTRIBUTE_ALL(FIRST, SECOND)\n"; in emitTargetIndependentNames()
41 OS << "#endif\n\n"; in emitTargetIndependentNames()
44 OS << "#ifndef " << MacroName << "\n"; in emitTargetIndependentNames()
45 OS << "#define " << MacroName in emitTargetIndependentNames()
47 OS << "#endif\n\n"; in emitTargetIndependentNames()
50 OS << MacroName << "(" << A->getName() << "," in emitTargetIndependentNames()
54 OS << "#undef " << MacroName << "\n\n"; in emitTargetIndependentNames()
61 OS << "#undef ATTRIBUTE_ALL\n"; in emitTargetIndependentNames()
62 OS << "#endif\n\n"; in emitTargetIndependentNames()
64 OS << "#ifdef GET_ATTR_ENUM\n"; in emitTargetIndependentNames()
65 OS << "#undef GET_ATTR_ENUM\n"; in emitTargetIndependentNames()
68 OS << "First" << KindName << " = " << Value << ",\n"; in emitTargetIndependentNames()
70 OS << A->getName() << " = " << Value << ",\n"; in emitTargetIndependentNames()
73 OS << "Last" << KindName << " = " << (Value - 1) << ",\n"; in emitTargetIndependentNames()
75 OS << "#endif\n\n"; in emitTargetIndependentNames()
78 void Attributes::emitFnAttrCompatCheck(raw_ostream &OS, bool IsStringAttr) { in emitFnAttrCompatCheck() argument
79 OS << "#ifdef GET_ATTR_COMPAT_FUNC\n"; in emitFnAttrCompatCheck()
80 OS << "#undef GET_ATTR_COMPAT_FUNC\n"; in emitFnAttrCompatCheck()
82 OS << "static inline bool hasCompatibleFnAttrs(const Function &Caller,\n" in emitFnAttrCompatCheck()
84 OS << " bool Ret = true;\n\n"; in emitFnAttrCompatCheck()
91 OS << " Ret &= " << FuncName << "(Caller, Callee);\n"; in emitFnAttrCompatCheck()
94 OS << "\n"; in emitFnAttrCompatCheck()
95 OS << " return Ret;\n"; in emitFnAttrCompatCheck()
96 OS << "}\n\n"; in emitFnAttrCompatCheck()
100 OS << "static inline void mergeFnAttrs(Function &Caller,\n" in emitFnAttrCompatCheck()
105 OS << " " << FuncName << "(Caller, Callee);\n"; in emitFnAttrCompatCheck()
108 OS << "}\n\n"; in emitFnAttrCompatCheck()
110 OS << "#endif\n"; in emitFnAttrCompatCheck()
113 void Attributes::emitAttributeProperties(raw_ostream &OS) { in emitAttributeProperties() argument
114 OS << "#ifdef GET_ATTR_PROP_TABLE\n"; in emitAttributeProperties()
115 OS << "#undef GET_ATTR_PROP_TABLE\n"; in emitAttributeProperties()
116 OS << "static const uint8_t AttrPropTable[] = {\n"; in emitAttributeProperties()
119 OS << "0"; in emitAttributeProperties()
121 OS << " | AttributeProperty::" << cast<DefInit>(P)->getDef()->getName(); in emitAttributeProperties()
122 OS << ",\n"; in emitAttributeProperties()
125 OS << "};\n"; in emitAttributeProperties()
126 OS << "#endif\n"; in emitAttributeProperties()
129 void Attributes::emit(raw_ostream &OS) { in emit() argument
130 emitTargetIndependentNames(OS); in emit()
131 emitFnAttrCompatCheck(OS, false); in emit()
132 emitAttributeProperties(OS); in emit()
137 void EmitAttributes(RecordKeeper &RK, raw_ostream &OS) { in EmitAttributes() argument
138 Attributes(RK).emit(OS); in EmitAttributes()