LLVM 20.0.0git
Classes | Macros | Functions | Variables
StaticDataSplitter.cpp File Reference
#include "llvm/ADT/ScopeExit.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/ProfileSummaryInfo.h"
#include "llvm/CodeGen/MBFIWrapper.h"
#include "llvm/CodeGen/MachineBasicBlock.h"
#include "llvm/CodeGen/MachineBlockFrequencyInfo.h"
#include "llvm/CodeGen/MachineBranchProbabilityInfo.h"
#include "llvm/CodeGen/MachineConstantPool.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineJumpTableInfo.h"
#include "llvm/CodeGen/Passes.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"

Go to the source code of this file.

Classes

class  StaticDataSplitter
 

Macros

#define DEBUG_TYPE   "static-data-splitter"
 

Functions

 STATISTIC (NumHotJumpTables, "Number of hot jump tables seen")
 
 STATISTIC (NumColdJumpTables, "Number of cold jump tables seen")
 
 STATISTIC (NumUnknownJumpTables, "Number of jump tables with unknown hotness. Option " "-static-data-default-hotness specifies the hotness.")
 
 INITIALIZE_PASS_BEGIN (StaticDataSplitter, DEBUG_TYPE, "Split static data", false, false) INITIALIZE_PASS_END(StaticDataSplitter
 

Variables

static cl::opt< MachineFunctionDataHotnessStaticDataDefaultHotness ("static-data-default-hotness", cl::Hidden, cl::desc("This option specifies the hotness of static data when profile " "information is unavailable"), cl::init(MachineFunctionDataHotness::Hot), cl::values(clEnumValN(MachineFunctionDataHotness::Hot, "hot", "Hot"), clEnumValN(MachineFunctionDataHotness::Cold, "cold", "Cold")))
 
 DEBUG_TYPE
 
static Split data
 
static Split false
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "static-data-splitter"

Definition at line 36 of file StaticDataSplitter.cpp.

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( StaticDataSplitter  ,
DEBUG_TYPE  ,
"Split static data"  ,
false  ,
false   
)

◆ STATISTIC() [1/3]

STATISTIC ( NumColdJumpTables  ,
"Number of cold jump tables seen"   
)

◆ STATISTIC() [2/3]

STATISTIC ( NumHotJumpTables  ,
"Number of hot jump tables seen"   
)

◆ STATISTIC() [3/3]

STATISTIC ( NumUnknownJumpTables  ,
"Number of jump tables with unknown hotness. Option " "-static-data-default-hotness specifies the hotness."   
)

Variable Documentation

◆ data

Split data
static

Definition at line 176 of file StaticDataSplitter.cpp.

Referenced by llvm::AArch64TargetLowering::AArch64TargetLowering(), llvm::dwarf_linker::parallel::SectionDescriptor::applyIntVal(), llvm::dwarf_linker::parallel::SectionDescriptor::applySLEB128(), llvm::dwarf_linker::parallel::SectionDescriptor::applyULEB128(), llvm::BCFixed< Width >::assertValid(), llvm::BCLiteral< Value >::assertValid(), llvm::BCVBR< Width >::assertValid(), llvm::BCChar6::assertValid(), llvm::MutableArrayRef< T >::back(), llvm::StringRef::back(), llvm::MutableArrayRef< T >::begin(), llvm::StringRef::begin(), llvm::SmallString< InternalLen >::c_str(), llvm::hashing::detail::hash_combine_recursive_helper::combine_data(), llvm::StringRef::compare(), llvm::yaml::convertYAML(), llvm::StringRef::count(), llvm::StringRef::detectEOL(), llvm::BCRecordLayout< RecordCode, Fields >::emit(), llvm::BCGenericRecordLayout< IDField, Fields >::emit(), llvm::DIEAbbrev::Emit(), llvm::detail::BCRecordCoding< ElementTy >::emit(), llvm::detail::BCRecordCoding< ElementTy, Fields >::emit(), llvm::detail::BCRecordCoding< BCArray< ElementTy > >::emit(), llvm::detail::BCRecordCoding< BCBlob >::emit(), llvm::BCRecordLayout< RecordCode, Fields >::emitRecord(), llvm::BCGenericRecordLayout< IDField, Fields >::emitRecord(), llvm::RuntimeDyldImpl::emitSection(), llvm::MutableArrayRef< T >::end(), llvm::StringRef::end(), llvm::DWARFDebugRangeList::extract(), llvm::DWARFDebugArangeSet::extract(), llvm::RangeListEntry::extract(), llvm::MutableArrayRef< T >::front(), llvm::StringRef::front(), llvm::DenseMapInfo< ArrayRef< T >, void >::getHashValue(), llvm::dwarf_linker::parallel::SectionDescriptor::getIntVal(), llvm::DWARFDie::getLocations(), llvm::codeview::TypeTableCollection::getTypeName(), llvm::MD5::MD5Result::high(), llvm::DenseMapInfo< ArrayRef< T >, void >::isEqual(), llvm::DenseMapInfo< StringRef, void >::isEqual(), LLVMGetHostCPUName(), llvm::ResolverError::log(), llvm::MD5::MD5Result::low(), AbstractManglingParser< Derived, Alloc >::makeNodeArray(), llvm::SmallString< InternalLen >::operator std::string(), llvm::StringRef::operator std::string_view(), llvm::operator+=(), llvm::MutableArrayRef< T >::operator[](), llvm::StringRef::operator[](), llvm::detail::BCRecordCoding< ElementTy >::read(), llvm::detail::BCRecordCoding< ElementTy, Fields >::read(), llvm::BCGenericRecordLayout< IDField, Fields >::readRecord(), llvm::object::MachOObjectFile::ReadULEB128s(), llvm::StringRef::rfind(), llvm::ArrayRef< T >::slice(), llvm::MutableArrayRef< T >::slice(), llvm::StringRef::slice(), llvm::StringRef::starts_with(), llvm::SmallString< InternalLen >::str(), llvm::StringRef::str(), llvm::StringRef::substr(), validateMagicNumber(), llvm::xray::BlockVerifier::verify(), llvm::objcopy::wasm::Writer::write(), llvm::xxh3_128bits(), and llvm::xxh3_64bits().

◆ DEBUG_TYPE

DEBUG_TYPE

Definition at line 176 of file StaticDataSplitter.cpp.

◆ false

Split false
static

Definition at line 176 of file StaticDataSplitter.cpp.

◆ StaticDataDefaultHotness

cl::opt< MachineFunctionDataHotness > StaticDataDefaultHotness("static-data-default-hotness", cl::Hidden, cl::desc("This option specifies the hotness of static data when profile " "information is unavailable"), cl::init(MachineFunctionDataHotness::Hot), cl::values(clEnumValN(MachineFunctionDataHotness::Hot, "hot", "Hot"), clEnumValN(MachineFunctionDataHotness::Cold, "cold", "Cold"))) ( "static-data-default-hotness"  ,
cl::Hidden  ,
cl::desc("This option specifies the hotness of static data when profile " "information is unavailable")  ,
cl::init(MachineFunctionDataHotness::Hot)  ,
cl::values(clEnumValN(MachineFunctionDataHotness::Hot, "hot", "Hot"), clEnumValN(MachineFunctionDataHotness::Cold, "cold", "Cold"))   
)
static