LLVM 22.0.0git
|
This file defines the RABasic function pass, which provides a minimal implementation of the basic register allocator. More...
#include "RegAllocBasic.h"
#include "AllocationOrder.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/ProfileSummaryInfo.h"
#include "llvm/CodeGen/CalcSpillWeights.h"
#include "llvm/CodeGen/LiveDebugVariables.h"
#include "llvm/CodeGen/LiveIntervals.h"
#include "llvm/CodeGen/LiveRegMatrix.h"
#include "llvm/CodeGen/LiveStacks.h"
#include "llvm/CodeGen/MachineBlockFrequencyInfo.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/RegAllocRegistry.h"
#include "llvm/CodeGen/VirtRegMap.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "regalloc" |
Functions | |
INITIALIZE_PASS_BEGIN (RABasic, "regallocbasic", "Basic Register Allocator", false, false) INITIALIZE_PASS_END(RABasic | |
Variables | |
static RegisterRegAlloc | basicRegAlloc ("basic", "basic register allocator", createBasicRegisterAllocator) |
regallocbasic | |
Basic Register | Allocator |
Basic Register | false |
This file defines the RABasic function pass, which provides a minimal implementation of the basic register allocator.
Definition in file RegAllocBasic.cpp.
#define DEBUG_TYPE "regalloc" |
Definition at line 36 of file RegAllocBasic.cpp.
Basic Register Allocator |
Definition at line 59 of file RegAllocBasic.cpp.
Referenced by llvm::jitlink::LinkGraph::addAbsoluteSymbol(), llvm::jitlink::LinkGraph::addAnonymousSymbol(), llvm::jitlink::LinkGraph::addDefinedSymbol(), llvm::jitlink::LinkGraph::addExternalSymbol(), llvm::AccelTable< DataT >::addName(), llvm::RecyclingAllocator< AllocatorType, T, Size, Align >::Allocate(), llvm::Recycler< T, Size, Align >::Allocate(), llvm::ArrayRecycler< T, Align >::allocate(), llvm::SpecificBumpPtrAllocator< T >::Allocate(), llvm::MachO::SymbolSet::allocate(), llvm::MCContext::allocate(), llvm::jitlink::LinkGraph::allocateBuffer(), llvm::jitlink::LinkGraph::allocateContent(), llvm::jitlink::LinkGraph::allocateCString(), llvm::GVNExpression::AggregateValueExpression::allocateIntOperands(), llvm::MachineFunction::allocateOperandArray(), llvm::GVNExpression::BasicExpression::allocateOperands(), llvm::MCContext::allocateString(), llvm::StringMapEntryBase::allocateWithKey(), llvm::LiveRange::assign(), llvm::Attributor::Attributor(), llvm::SSAUpdaterImpl< UpdaterT >::BuildBlockList(), llvm::PagedVector< T, PageSize >::clear(), llvm::ArrayRecycler< T, Align >::clear(), llvm::Recycler< T, Size, Align >::clear(), llvm::dwarf_linker::parallel::CompileUnit::cloneAndEmit(), llvm::dwarf_linker::parallel::CompileUnit::cloneDIE(), llvm::MachineFunction::cloneInfo(), llvm::MachineFunction::cloneInfoFrom(), llvm::CodeViewDebug::CodeViewDebug(), collectAddressSymbols(), llvm::pdb::PDBFileBuilder::commit(), commitFpm(), llvm::yaml::MappingTraits< const InterfaceFile * >::NormalizedTBD::copyString(), llvm::MachineFunctionInfo::create(), llvm::msf::MSFBuilder::create(), llvm::ConcurrentHashTableInfoByPtr< KeyTy, KeyDataTy, AllocatorTy >::create(), llvm::dwarf_linker::StringPoolEntryInfo::create(), llvm::dwarf_linker::parallel::TypeEntryInfo::create(), llvm::dwarf_linker::parallel::TypeEntryBody::create(), llvm::ScopedHashTableVal< K, V >::Create(), llvm::dwarf_linker::parallel::TypeUnit::createDIETree(), llvm::msf::MappedBlockStream::createDirectoryStream(), llvm::msf::WritableMappedBlockStream::createDirectoryStream(), llvm::msf::MappedBlockStream::createFpmStream(), llvm::msf::WritableMappedBlockStream::createFpmStream(), llvm::pdb::NativeSession::createFromExe(), llvm::pdb::NativeSession::createFromPdb(), llvm::pdb::NativeSession::createFromPdbPath(), llvm::msf::MappedBlockStream::createIndexedStream(), llvm::msf::WritableMappedBlockStream::createIndexedStream(), llvm::AArch64TargetMachine::createMachineFunctionInfo(), llvm::GCNTargetMachine::createMachineFunctionInfo(), llvm::R600TargetMachine::createMachineFunctionInfo(), llvm::ARCTargetMachine::createMachineFunctionInfo(), llvm::ARMBaseTargetMachine::createMachineFunctionInfo(), llvm::AVRTargetMachine::createMachineFunctionInfo(), llvm::CSKYTargetMachine::createMachineFunctionInfo(), llvm::HexagonTargetMachine::createMachineFunctionInfo(), llvm::LanaiTargetMachine::createMachineFunctionInfo(), llvm::LoongArchTargetMachine::createMachineFunctionInfo(), llvm::M68kTargetMachine::createMachineFunctionInfo(), llvm::MipsTargetMachine::createMachineFunctionInfo(), llvm::MSP430TargetMachine::createMachineFunctionInfo(), llvm::NVPTXTargetMachine::createMachineFunctionInfo(), llvm::PPCTargetMachine::createMachineFunctionInfo(), llvm::RISCVTargetMachine::createMachineFunctionInfo(), llvm::SparcTargetMachine::createMachineFunctionInfo(), llvm::SystemZTargetMachine::createMachineFunctionInfo(), llvm::VETargetMachine::createMachineFunctionInfo(), llvm::WebAssemblyTargetMachine::createMachineFunctionInfo(), llvm::X86TargetMachine::createMachineFunctionInfo(), llvm::XCoreTargetMachine::createMachineFunctionInfo(), llvm::XtensaTargetMachine::createMachineFunctionInfo(), llvm::jitlink::MachOLinkGraphBuilder::createNormalizedSymbol(), llvm::OpenMPIRBuilder::createOMPAlloc(), llvm::OpenMPIRBuilder::createOMPFree(), llvm::msf::MappedBlockStream::createStream(), llvm::msf::WritableMappedBlockStream::createStream(), llvm::LiveInterval::createSubRange(), llvm::LiveInterval::createSubRangeFrom(), llvm::pdb::DbiStreamBuilder::DbiStreamBuilder(), llvm::RecyclingAllocator< AllocatorType, T, Size, Align >::Deallocate(), llvm::ScopedHashTableVal< K, V >::Destroy(), llvm::SpecificBumpPtrAllocator< T >::DestroyAll(), llvm::ConnectedVNInfoEqClasses::Distribute(), llvm::detail::RecordKeeperImpl::dumpAllocationStats(), llvm::dwarf_linker::parallel::TypeUnit::finishCloningAndEmit(), llvm::msf::MappedBlockStream::getAllocator(), llvm::msf::MSFBuilder::getAllocator(), llvm::pdb::PDBFile::getAllocator(), llvm::logicalview::LVStringPool::getIndex(), llvm::SpecificBumpPtrAllocator< T >::identifyObject(), llvm::ImmutableListFactory< T >::ImmutableListFactory(), llvm::InformationCache::InformationCache(), llvm::pdb::PDBFileBuilder::initialize(), llvm::CodeViewYAML::initializeStringsAndChecksums(), llvm::FoldingSetNodeID::Intern(), llvm::codeview::LazyRandomTypeCollection::LazyRandomTypeCollection(), llvm::LiveRange::LiveRange(), loadPdbFile(), llvm::msf::MappedBlockStream::MappedBlockStream(), llvm::MCContext::MCContext(), llvm::pdb::NativeSession::NativeSession(), operator new(), llvm::SpecificBumpPtrAllocator< T >::operator=(), llvm::PagedVector< T, PageSize >::operator[](), llvm::pdb::PDBFile::PDBFile(), llvm::pdb::PDBFileBuilder::PDBFileBuilder(), llvm::PredicateInfo::PredicateInfo(), llvm::PredicateInfoBuilder::PredicateInfoBuilder(), llvm::RecyclingAllocator< AllocatorType, T, Size, Align >::PrintStats(), llvm::LiveInterval::refineSubRanges(), llvm::RegisterAsmPrinter< AsmPrinterImpl >::RegisterAsmPrinter(), llvm::RegisterMCAsmBackend< MCAsmBackendImpl >::RegisterMCAsmBackend(), llvm::RegisterMCAsmInfo< MCAsmInfoImpl >::RegisterMCAsmInfo(), llvm::RegisterMCAsmParser< MCAsmParserImpl >::RegisterMCAsmParser(), llvm::RegisterMCCodeEmitter< MCCodeEmitterImpl >::RegisterMCCodeEmitter(), llvm::RegisterMCInstrAnalysis< MCInstrAnalysisImpl >::RegisterMCInstrAnalysis(), llvm::RegisterMCObjectFileInfo< MCObjectFileInfoImpl >::RegisterMCObjectFileInfo(), llvm::RegisterMCRegInfo< MCRegisterInfoImpl >::RegisterMCRegInfo(), llvm::RegisterMCSubtargetInfo< MCSubtargetInfoImpl >::RegisterMCSubtargetInfo(), llvm::RegisterTargetMachine< TargetMachineImpl >::RegisterTargetMachine(), llvm::internal::NfaTranscriber::reset(), llvm::PagedVector< T, PageSize >::resize(), llvm::PredicateInfoPrinterPass::run(), llvm::PredicateInfoVerifierPass::run(), llvm::AttributorCGSCCPass::run(), llvm::AttributorLightCGSCCPass::run(), llvm::OpenMPOptCGSCCPass::run(), llvm::AttributorPass::run(), llvm::AttributorLightPass::run(), llvm::OpenMPOptPass::run(), llvm::pdb::NativeSession::searchForPdb(), llvm::SpecificBumpPtrAllocator< T >::SpecificBumpPtrAllocator(), llvm::SplitEditor::SplitEditor(), llvm::codeview::SymbolSerializer::SymbolSerializer(), llvm::CodeViewYAML::toCodeViewSubsectionList(), llvm::CodeViewYAML::SymbolRecord::toCodeViewSymbol(), llvm::CodeViewYAML::detail::SymbolRecordImpl< T >::toCodeViewSymbol(), llvm::CodeViewYAML::detail::UnknownSymbolRecord::toCodeViewSymbol(), toDebugS(), llvm::pdb::TpiStreamBuilder::TpiStreamBuilder(), llvm::codeview::TypeTableCollection::TypeTableCollection(), llvm::msf::WritableMappedBlockStream::WritableMappedBlockStream(), llvm::PagedVector< T, PageSize >::~PagedVector(), and llvm::RecyclingAllocator< AllocatorType, T, Size, Align >::~RecyclingAllocator().
|
static |
Basic Register false |
Definition at line 59 of file RegAllocBasic.cpp.
regallocbasic |
Definition at line 59 of file RegAllocBasic.cpp.