reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
340 OS << "#ifdef GET_INSTRINFO_OPERAND_TYPES_ENUM\n"; 341 OS << "#undef GET_INSTRINFO_OPERAND_TYPES_ENUM\n"; 342 OS << "namespace llvm {\n"; 343 OS << "namespace " << Namespace << " {\n"; 344 OS << "namespace OpTypes {\n"; 345 OS << "enum OperandType {\n"; 352 OS << " " << Op->getName() << " = " << EnumVal << ",\n"; 357 OS << " OPERAND_TYPE_LIST_END" << "\n};\n"; 358 OS << "} // end namespace OpTypes\n"; 359 OS << "} // end namespace " << Namespace << "\n"; 360 OS << "} // end namespace llvm\n"; 361 OS << "#endif // GET_INSTRINFO_OPERAND_TYPES_ENUM\n\n"; 363 OS << "#ifdef GET_INSTRINFO_OPERAND_TYPE\n"; 364 OS << "#undef GET_INSTRINFO_OPERAND_TYPE\n"; 365 OS << "namespace llvm {\n"; 366 OS << "namespace " << Namespace << " {\n"; 367 OS << "LLVM_READONLY\n"; 368 OS << "static int getOperandType(uint16_t Opcode, uint16_t OpIdx) {\n"; 392 OS << " const int Offsets[] = {\n"; 394 OS << " " << OperandOffsets[I] << ",\n"; 395 OS << " };\n"; 400 OS << " const int OpcodeOperandTypes[] = {\n "; 404 OS << "\n "; 407 OS << "/**/\n "; 414 OS << "OpTypes::" << OpR->getName(); 416 OS << -1; 417 OS << ", "; 419 OS << "\n };\n"; 421 OS << " return OpcodeOperandTypes[Offsets[Opcode] + OpIdx];\n"; 423 OS << " llvm_unreachable(\"No instructions defined\");\n"; 425 OS << "}\n"; 426 OS << "} // end namespace " << Namespace << "\n"; 427 OS << "} // end namespace llvm\n"; 428 OS << "#endif // GET_INSTRINFO_OPERAND_TYPE\n\n";