llvm/llvm/unittests/CodeGen/MLRegAllocDevelopmentFeatures.cpp

//===- MLRegAllocDevelopmentFeatures.cpp - test dev MLRegAlloc features ---===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#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 {};

// meta tests to ensure that test setup works correctly

TEST_F(RegAllocDevelopmentFeaturesTest,
       MetaOverlapInstructionDistancesAreCorrect) {}

TEST_F(RegAllocDevelopmentFeaturesTest, MetaSlotIndicesAreValid) {}

// Testing of feature extraction for per-instruction features

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) {}

} // end namespace