LLVM
8.0.1
|
This file implements the RegBankSelect class. More...
#include "llvm/CodeGen/GlobalISel/RegBankSelect.h"
#include "llvm/ADT/PostOrderIterator.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/CodeGen/GlobalISel/LegalizerInfo.h"
#include "llvm/CodeGen/GlobalISel/RegisterBank.h"
#include "llvm/CodeGen/GlobalISel/RegisterBankInfo.h"
#include "llvm/CodeGen/GlobalISel/Utils.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineBlockFrequencyInfo.h"
#include "llvm/CodeGen/MachineBranchProbabilityInfo.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstr.h"
#include "llvm/CodeGen/MachineOperand.h"
#include "llvm/CodeGen/MachineOptimizationRemarkEmitter.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetOpcodes.h"
#include "llvm/CodeGen/TargetPassConfig.h"
#include "llvm/CodeGen/TargetRegisterInfo.h"
#include "llvm/CodeGen/TargetSubtargetInfo.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/Function.h"
#include "llvm/Pass.h"
#include "llvm/Support/BlockFrequency.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/raw_ostream.h"
#include <algorithm>
#include <cassert>
#include <cstdint>
#include <limits>
#include <memory>
#include <utility>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "regbankselect" |
Functions | |
INITIALIZE_PASS_BEGIN (RegBankSelect, DEBUG_TYPE, "Assign register bank of generic virtual registers", false, false) | |
INITIALIZE_PASS_END (RegBankSelect, DEBUG_TYPE, "Assign register bank of generic virtual registers", false, false) RegBankSelect | |
Variables | |
static cl::opt< RegBankSelect::Mode > | RegBankSelectMode (cl::desc("Mode of the RegBankSelect pass"), cl::Hidden, cl::Optional, cl::values(clEnumValN(RegBankSelect::Mode::Fast, "regbankselect-fast", "Run the Fast mode (default mapping)"), clEnumValN(RegBankSelect::Mode::Greedy, "regbankselect-greedy", "Use the Greedy mode (best local mapping)"))) |
This file implements the RegBankSelect class.
Definition in file RegBankSelect.cpp.
#define DEBUG_TYPE "regbankselect" |
Definition at line 50 of file RegBankSelect.cpp.
INITIALIZE_PASS_BEGIN | ( | RegBankSelect | , |
DEBUG_TYPE | , | ||
"Assign register bank of generic virtual registers" | , | ||
false | , | ||
false | |||
) |
INITIALIZE_PASS_END | ( | RegBankSelect | , |
DEBUG_TYPE | , | ||
"Assign register bank of generic virtual registers" | , | ||
false | , | ||
false | |||
) |
Definition at line 69 of file RegBankSelect.cpp.
References assert(), llvm::dbgs(), llvm::CallingConv::Fast, llvm::PassRegistry::getPassRegistry(), llvm::TargetSubtargetInfo::getRegBankInfo(), llvm::MachineFunction::getRegInfo(), llvm::TargetSubtargetInfo::getRegisterInfo(), llvm::MachineFunction::getSubtarget(), llvm::initializeRegBankSelectPass(), LLVM_DEBUG, RegBankSelectMode, and llvm::MachineIRBuilder::setMF().
Referenced by llvm::createPlaceSafepointsPass(), llvm::createRewriteStatepointsForGCLegacyPass(), llvm::gvn::GVNLegacyPass::getAnalysisUsage(), llvm::GCOVOptions::getDefault(), parseCHRFilterFiles(), replaceDevirtTrigger(), llvm::SinkingPass::run(), llvm::PartiallyInlineLibCallsPass::run(), llvm::InstrProfiling::run(), and tryToUnrollLoop().
|
static |
Referenced by INITIALIZE_PASS_END().