#include "llvm/ADT/DenseSet.h"
#include "llvm/Support/RISCVISAUtils.h"
#include "llvm/TableGen/Record.h"
#include "llvm/TableGen/TableGenBackend.h"
usingnamespacellvm;
static StringRef getExtensionName(const Record *R) { … }
static void printExtensionTable(raw_ostream &OS,
const std::vector<Record *> &Extensions,
bool Experimental) { … }
static void emitRISCVExtensions(RecordKeeper &Records, raw_ostream &OS) { … }
static void printMArch(raw_ostream &OS, const std::vector<Record *> &Features) { … }
static void printProfileTable(raw_ostream &OS,
const std::vector<Record *> &Profiles,
bool Experimental) { … }
static void emitRISCVProfiles(RecordKeeper &Records, raw_ostream &OS) { … }
static void emitRISCVProcs(RecordKeeper &RK, raw_ostream &OS) { … }
static void emitRISCVExtensionBitmask(RecordKeeper &RK, raw_ostream &OS) { … }
static void EmitRISCVTargetDef(RecordKeeper &RK, raw_ostream &OS) { … }
static TableGen::Emitter::Opt X("gen-riscv-target-def", EmitRISCVTargetDef,
"Generate the list of CPUs and extensions for "
"RISC-V");