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

References

utils/TableGen/WebAssemblyDisassemblerEmitter.cpp
   81   OS << "#include \"MCTargetDesc/WebAssemblyMCTargetDesc.h\"\n";
   82   OS << "\n";
   83   OS << "namespace llvm {\n\n";
   84   OS << "static constexpr int WebAssemblyInstructionTableSize = ";
   85   OS << WebAssemblyInstructionTableSize << ";\n\n";
   86   OS << "enum EntryType : uint8_t { ";
   87   OS << "ET_Unused, ET_Prefix, ET_Instruction };\n\n";
   88   OS << "struct WebAssemblyInstruction {\n";
   89   OS << "  uint16_t Opcode;\n";
   90   OS << "  EntryType ET;\n";
   91   OS << "  uint8_t NumOperands;\n";
   92   OS << "  uint16_t OperandStart;\n";
   93   OS << "};\n\n";
   99     OS << "WebAssemblyInstruction InstructionTable" << PrefixPair.first;
  100     OS << "[] = {\n";
  107         OS << "  // 0x";
  108         OS.write_hex(static_cast<unsigned long long>(I));
  109         OS << ": " << CGI.AsmString << "\n";
  110         OS << "  { " << InstIt->second.first << ", ET_Instruction, ";
  111         OS << CGI.Operands.OperandList.size() << ", ";
  139         OS << OperandStart;
  144           OS << "  { 0, ET_Prefix, 0, 0";
  146           OS << "  { 0, ET_Unused, 0, 0";
  149       OS << "  },\n";
  151     OS << "};\n\n";
  154   OS << "const uint8_t OperandTable[] = {\n";
  156     OS << "  " << Op << ",\n";
  158   OS << "};\n\n";
  160   OS << "struct { uint8_t Prefix; const WebAssemblyInstruction *Table; }\n";
  161   OS << "PrefixTable[] = {\n";
  165     OS << "  { " << PrefixPair.first << ", InstructionTable"
  167     OS << " },\n";
  169   OS << "  { 0, nullptr }\n};\n\n";
  170   OS << "} // end namespace llvm\n";