#include "../../lib/CodeGen/MLRegAllocEvictAdvisor.h"
#include "llvm/Analysis/NoInferenceModelRunner.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/SlotIndexes.h"
#include "llvm/CodeGen/TargetFrameLowering.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Module.h"
#include "llvm/MC/TargetRegistry.h"
#include "llvm/Support/Allocator.h"
#include "llvm/Support/CodeGen.h"
#include "llvm/Support/TargetSelect.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/TargetParser/Triple.h"
#include "gmock/gmock.h"
#include "gtest/gtest.h"
#include <string>
#include <vector>
usingnamespacellvm;
ContainerEq;
Test;
namespace {
#include "MFCommon.inc"
struct LRPosInfoIndexes { … };
class RegAllocDevelopmentFeaturesTest : public ::Test { … };
TEST_F(RegAllocDevelopmentFeaturesTest,
MetaOverlapInstructionDistancesAreCorrect) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, MetaSlotIndicesAreValid) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, InstructionOpcodesAreCorrect) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, FullOverlap) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, PartialOverlap) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, PartialOverlapOpposite) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, InternalOverlap) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, TripleInternalOverlap) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, InternalMultiOverlap) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, SingleMBBTest) { … }
TEST_F(RegAllocDevelopmentFeaturesTest, MBBFullTruncated) { … }
}