#include "Common/CodeGenInstruction.h"
#include "Common/CodeGenTarget.h"
#include "llvm/ADT/IndexedMap.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringMap.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/TableGen/Error.h"
#include "llvm/TableGen/Record.h"
#include "llvm/TableGen/TableGenBackend.h"
#include <vector>
usingnamespacellvm;
#define DEBUG_TYPE …
namespace {
class PseudoLoweringEmitter { … };
}
unsigned PseudoLoweringEmitter::addDagOperandMapping(
const Record *Rec, const DagInit *Dag, const CodeGenInstruction &Insn,
IndexedMap<OpData> &OperandMap, unsigned BaseIdx) { … }
void PseudoLoweringEmitter::evaluateExpansion(const Record *Rec) { … }
void PseudoLoweringEmitter::emitLoweringEmitter(raw_ostream &o) { … }
void PseudoLoweringEmitter::run(raw_ostream &OS) { … }
static TableGen::Emitter::OptClass<PseudoLoweringEmitter>
X("gen-pseudo-lowering", "Generate pseudo instruction lowering");