• Home
  • Raw
  • Download

Lines Matching refs:OS

23                          unsigned Num, raw_ostream &OS) {  in PrintDefList()  argument
24 OS << "static const unsigned ImplicitList" << Num << "[] = { "; in PrintDefList()
26 OS << getQualifiedName(Uses[i]) << ", "; in PrintDefList()
27 OS << "0 };\n"; in PrintDefList()
136 void InstrInfoEmitter::EmitOperandInfo(raw_ostream &OS, in EmitOperandInfo() argument
142 OS << "\n"; in EmitOperandInfo()
151 OS << "static const MCOperandInfo OperandInfo" << N << "[] = { "; in EmitOperandInfo()
153 OS << "{ " << OperandInfo[i] << " }, "; in EmitOperandInfo()
154 OS << "};\n"; in EmitOperandInfo()
163 void InstrInfoEmitter::run(raw_ostream &OS) { in run() argument
164 emitEnums(OS); in run()
168 EmitSourceFileHeader("Target Instruction Descriptors", OS); in run()
170 OS << "\n#ifdef GET_INSTRINFO_MC_DESC\n"; in run()
171 OS << "#undef GET_INSTRINFO_MC_DESC\n"; in run()
173 OS << "namespace llvm {\n\n"; in run()
190 if (!IL) PrintDefList(Uses, IL = ++ListNumber, OS); in run()
195 if (!IL) PrintDefList(Defs, IL = ++ListNumber, OS); in run()
202 EmitOperandInfo(OS, OperandInfoIDs); in run()
206 OS << "\nMCInstrDesc " << TargetName << "Insts[] = {\n"; in run()
212 OperandInfoIDs, OS); in run()
213 OS << "};\n\n"; in run()
216 OS << "static inline void Init" << TargetName in run()
218 OS << " II->InitMCInstrInfo(" << TargetName << "Insts, " in run()
221 OS << "} // End llvm namespace \n"; in run()
223 OS << "#endif // GET_INSTRINFO_MC_DESC\n\n"; in run()
226 OS << "\n#ifdef GET_INSTRINFO_HEADER\n"; in run()
227 OS << "#undef GET_INSTRINFO_HEADER\n"; in run()
230 OS << "namespace llvm {\n"; in run()
231 OS << "struct " << ClassName << " : public TargetInstrInfoImpl {\n" in run()
234 OS << "} // End llvm namespace \n"; in run()
236 OS << "#endif // GET_INSTRINFO_HEADER\n\n"; in run()
238 OS << "\n#ifdef GET_INSTRINFO_CTOR\n"; in run()
239 OS << "#undef GET_INSTRINFO_CTOR\n"; in run()
241 OS << "namespace llvm {\n"; in run()
242 OS << "extern MCInstrDesc " << TargetName << "Insts[];\n"; in run()
243 OS << ClassName << "::" << ClassName << "(int SO, int DO)\n" in run()
247 OS << "} // End llvm namespace \n"; in run()
249 OS << "#endif // GET_INSTRINFO_CTOR\n\n"; in run()
256 raw_ostream &OS) { in emitRecord() argument
263 OS << " { "; in emitRecord()
264 OS << Num << ",\t" << MinOperands << ",\t" in emitRecord()
271 if (Inst.isPseudo) OS << "|(1<<MCID::Pseudo)"; in emitRecord()
272 if (Inst.isReturn) OS << "|(1<<MCID::Return)"; in emitRecord()
273 if (Inst.isBranch) OS << "|(1<<MCID::Branch)"; in emitRecord()
274 if (Inst.isIndirectBranch) OS << "|(1<<MCID::IndirectBranch)"; in emitRecord()
275 if (Inst.isCompare) OS << "|(1<<MCID::Compare)"; in emitRecord()
276 if (Inst.isMoveImm) OS << "|(1<<MCID::MoveImm)"; in emitRecord()
277 if (Inst.isBitcast) OS << "|(1<<MCID::Bitcast)"; in emitRecord()
278 if (Inst.isBarrier) OS << "|(1<<MCID::Barrier)"; in emitRecord()
279 if (Inst.hasDelaySlot) OS << "|(1<<MCID::DelaySlot)"; in emitRecord()
280 if (Inst.isCall) OS << "|(1<<MCID::Call)"; in emitRecord()
281 if (Inst.canFoldAsLoad) OS << "|(1<<MCID::FoldableAsLoad)"; in emitRecord()
282 if (Inst.mayLoad) OS << "|(1<<MCID::MayLoad)"; in emitRecord()
283 if (Inst.mayStore) OS << "|(1<<MCID::MayStore)"; in emitRecord()
284 if (Inst.isPredicable) OS << "|(1<<MCID::Predicable)"; in emitRecord()
285 if (Inst.isConvertibleToThreeAddress) OS << "|(1<<MCID::ConvertibleTo3Addr)"; in emitRecord()
286 if (Inst.isCommutable) OS << "|(1<<MCID::Commutable)"; in emitRecord()
287 if (Inst.isTerminator) OS << "|(1<<MCID::Terminator)"; in emitRecord()
288 if (Inst.isReMaterializable) OS << "|(1<<MCID::Rematerializable)"; in emitRecord()
289 if (Inst.isNotDuplicable) OS << "|(1<<MCID::NotDuplicable)"; in emitRecord()
290 if (Inst.Operands.hasOptionalDef) OS << "|(1<<MCID::HasOptionalDef)"; in emitRecord()
291 if (Inst.usesCustomInserter) OS << "|(1<<MCID::UsesCustomInserter)"; in emitRecord()
292 if (Inst.hasPostISelHook) OS << "|(1<<MCID::HasPostISelHook)"; in emitRecord()
293 if (Inst.Operands.isVariadic)OS << "|(1<<MCID::Variadic)"; in emitRecord()
294 if (Inst.hasSideEffects) OS << "|(1<<MCID::UnmodeledSideEffects)"; in emitRecord()
295 if (Inst.isAsCheapAsAMove) OS << "|(1<<MCID::CheapAsAMove)"; in emitRecord()
296 if (Inst.hasExtraSrcRegAllocReq) OS << "|(1<<MCID::ExtraSrcRegAllocReq)"; in emitRecord()
297 if (Inst.hasExtraDefRegAllocReq) OS << "|(1<<MCID::ExtraDefRegAllocReq)"; in emitRecord()
309 OS << ", 0x"; in emitRecord()
310 OS.write_hex(Value); in emitRecord()
311 OS << "ULL, "; in emitRecord()
316 OS << "NULL, "; in emitRecord()
318 OS << "ImplicitList" << EmittedLists[UseList] << ", "; in emitRecord()
322 OS << "NULL, "; in emitRecord()
324 OS << "ImplicitList" << EmittedLists[DefList] << ", "; in emitRecord()
329 OS << "0"; in emitRecord()
331 OS << "OperandInfo" << OpInfo.find(OperandInfo)->second; in emitRecord()
333 OS << " }, // Inst #" << Num << " = " << Inst.TheDef->getName() << "\n"; in emitRecord()
337 void InstrInfoEmitter::emitEnums(raw_ostream &OS) { in emitEnums() argument
338 EmitSourceFileHeader("Target Instruction Enum Values", OS); in emitEnums()
340 OS << "\n#ifdef GET_INSTRINFO_ENUM\n"; in emitEnums()
341 OS << "#undef GET_INSTRINFO_ENUM\n"; in emitEnums()
343 OS << "namespace llvm {\n\n"; in emitEnums()
358 OS << "namespace " << Namespace << " {\n"; in emitEnums()
359 OS << " enum {\n"; in emitEnums()
361 OS << " " << NumberedInstructions[i]->TheDef->getName() in emitEnums()
364 OS << " INSTRUCTION_LIST_END = " << NumberedInstructions.size() << "\n"; in emitEnums()
365 OS << " };\n}\n"; in emitEnums()
366 OS << "} // End llvm namespace \n"; in emitEnums()
368 OS << "#endif // GET_INSTRINFO_ENUM\n\n"; in emitEnums()