reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

utils/TableGen/InstrInfoEmitter.cpp
  269   OS << "#ifdef GET_INSTRINFO_OPERAND_ENUM\n";
  270   OS << "#undef GET_INSTRINFO_OPERAND_ENUM\n";
  271   OS << "namespace llvm {\n";
  272   OS << "namespace " << Namespace << " {\n";
  273   OS << "namespace " << OpNameNS << " {\n";
  274   OS << "enum {\n";
  276     OS << "  " << Op.first << " = " << Op.second << ",\n";
  278   OS << "OPERAND_LAST";
  279   OS << "\n};\n";
  280   OS << "} // end namespace OpName\n";
  281   OS << "} // end namespace " << Namespace << "\n";
  282   OS << "} // end namespace llvm\n";
  283   OS << "#endif //GET_INSTRINFO_OPERAND_ENUM\n\n";
  285   OS << "#ifdef GET_INSTRINFO_NAMED_OPS\n";
  286   OS << "#undef GET_INSTRINFO_NAMED_OPS\n";
  287   OS << "namespace llvm {\n";
  288   OS << "namespace " << Namespace << " {\n";
  289   OS << "LLVM_READONLY\n";
  290   OS << "int16_t getNamedOperandIdx(uint16_t Opcode, uint16_t NamedIdx) {\n";
  292     OS << "  static const int16_t OperandMap [][" << Operands.size()
  296       OS << "{";
  300         OS << (OpList.count(i) == 0 ? -1 : (int)OpList.find(i)->second) << ", ";
  302       OS << "},\n";
  304     OS << "};\n";
  306     OS << "  switch(Opcode) {\n";
  310         OS << "  case " << Name << ":\n";
  312       OS << "    return OperandMap[" << TableIndex++ << "][NamedIdx];\n";
  314     OS << "    default: return -1;\n";
  315     OS << "  }\n";
  318     OS << "  return -1;\n";
  320   OS << "}\n";
  321   OS << "} // end namespace " << Namespace << "\n";
  322   OS << "} // end namespace llvm\n";
  323   OS << "#endif //GET_INSTRINFO_NAMED_OPS\n\n";