#ifndef LLVM_UNITTEST_CODEGEN_GLOBALISEL_GISELMI_H
#define LLVM_UNITTEST_CODEGEN_GLOBALISEL_GISELMI_H
#include "llvm/CodeGen/GlobalISel/GISelChangeObserver.h"
#include "llvm/CodeGen/GlobalISel/LegalizerHelper.h"
#include "llvm/CodeGen/GlobalISel/LegalizerInfo.h"
#include "llvm/CodeGen/GlobalISel/MIPatternMatch.h"
#include "llvm/CodeGen/GlobalISel/MachineIRBuilder.h"
#include "llvm/CodeGen/GlobalISel/Utils.h"
#include "llvm/CodeGen/MIRParser/MIRParser.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/TargetFrameLowering.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/FileCheck/FileCheck.h"
#include "llvm/InitializePasses.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/TargetSelect.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
#include "gtest/gtest.h"
usingnamespacellvm;
usingnamespaceMIPatternMatch;
static inline void initLLVM() { … }
namespace llvm {
std::ostream &
operator<<(std::ostream &OS, const LLT Ty);
std::ostream &
operator<<(std::ostream &OS, const MachineFunction &MF);
}
static std::unique_ptr<Module>
parseMIR(LLVMContext &Context, std::unique_ptr<MIRParser> &MIR,
const TargetMachine &TM, StringRef MIRCode, MachineModuleInfo &MMI) { … }
static std::pair<std::unique_ptr<Module>, std::unique_ptr<MachineModuleInfo>>
createDummyModule(LLVMContext &Context, const LLVMTargetMachine &TM,
StringRef MIRString, const char *FuncName) { … }
static MachineFunction *getMFFromMMI(const Module *M,
const MachineModuleInfo *MMI) { … }
static void collectCopies(SmallVectorImpl<Register> &Copies,
MachineFunction *MF) { … }
class GISelMITest : public ::testing::Test { … };
class AArch64GISelMITest : public GISelMITest { … };
class AMDGPUGISelMITest : public GISelMITest { … };
#define DefineLegalizerInfo(Name, SettingUpActionsBlock) …
static inline bool CheckMachineFunction(const MachineFunction &MF,
StringRef CheckStr) { … }
#endif