LLVM 19.0.0git
Public Types | Public Member Functions | Friends | List of all members
llvm::jitlink::Section Class Reference

Represents an object file section. More...

#include "llvm/ExecutionEngine/JITLink/JITLink.h"

Public Types

using symbol_iterator = SymbolSet::iterator
 
using const_symbol_iterator = SymbolSet::const_iterator
 
using block_iterator = BlockSet::iterator
 
using const_block_iterator = BlockSet::const_iterator
 

Public Member Functions

 ~Section ()
 
 Section (const Section &)=delete
 
Sectionoperator= (const Section &)=delete
 
 Section (Section &&)=delete
 
Sectionoperator= (Section &&)=delete
 
StringRef getName () const
 Returns the name of this section.
 
orc::MemProt getMemProt () const
 Returns the protection flags for this section.
 
void setMemProt (orc::MemProt Prot)
 Set the protection flags for this section.
 
orc::MemLifetime getMemLifetime () const
 Get the memory lifetime policy for this section.
 
void setMemLifetime (orc::MemLifetime ML)
 Set the memory lifetime policy for this section.
 
SectionOrdinal getOrdinal () const
 Returns the ordinal for this section.
 
bool empty () const
 Returns true if this section is empty (contains no blocks or symbols).
 
iterator_range< block_iteratorblocks ()
 Returns an iterator over the blocks defined in this section.
 
iterator_range< const_block_iteratorblocks () const
 Returns an iterator over the blocks defined in this section.
 
BlockSet::size_type blocks_size () const
 Returns the number of blocks in this section.
 
iterator_range< symbol_iteratorsymbols ()
 Returns an iterator over the symbols defined in this section.
 
iterator_range< const_symbol_iteratorsymbols () const
 Returns an iterator over the symbols defined in this section.
 
SymbolSet::size_type symbols_size () const
 Return the number of symbols in this section.
 

Friends

class LinkGraph
 

Detailed Description

Represents an object file section.

Definition at line 691 of file JITLink.h.

Member Typedef Documentation

◆ block_iterator

Definition at line 705 of file JITLink.h.

◆ const_block_iterator

Definition at line 706 of file JITLink.h.

◆ const_symbol_iterator

Definition at line 703 of file JITLink.h.

◆ symbol_iterator

Definition at line 702 of file JITLink.h.

Constructor & Destructor Documentation

◆ ~Section()

llvm::jitlink::Section::~Section ( )

Definition at line 163 of file JITLink.cpp.

References B, and Sym.

◆ Section() [1/2]

llvm::jitlink::Section::Section ( const Section )
delete

◆ Section() [2/2]

llvm::jitlink::Section::Section ( Section &&  )
delete

Member Function Documentation

◆ blocks() [1/2]

iterator_range< block_iterator > llvm::jitlink::Section::blocks ( )
inline

Returns an iterator over the blocks defined in this section.

Definition at line 738 of file JITLink.h.

References Blocks, and llvm::make_range().

Referenced by llvm::jitlink::LinkGraph::mergeSections(), llvm::jitlink::DWARFRecordSectionSplitter::operator()(), and llvm::jitlink::SectionRange::SectionRange().

◆ blocks() [2/2]

iterator_range< const_block_iterator > llvm::jitlink::Section::blocks ( ) const
inline

Returns an iterator over the blocks defined in this section.

Definition at line 743 of file JITLink.h.

References Blocks, and llvm::make_range().

◆ blocks_size()

BlockSet::size_type llvm::jitlink::Section::blocks_size ( ) const
inline

Returns the number of blocks in this section.

Definition at line 748 of file JITLink.h.

References Blocks.

◆ empty()

bool llvm::jitlink::Section::empty ( ) const
inline

Returns true if this section is empty (contains no blocks or symbols).

Definition at line 735 of file JITLink.h.

References Blocks.

◆ getMemLifetime()

orc::MemLifetime llvm::jitlink::Section::getMemLifetime ( ) const
inline

Get the memory lifetime policy for this section.

Definition at line 726 of file JITLink.h.

References ML.

◆ getMemProt()

orc::MemProt llvm::jitlink::Section::getMemProt ( ) const
inline

Returns the protection flags for this section.

Definition at line 720 of file JITLink.h.

Referenced by llvm::jitlink::shouldRelax().

◆ getName()

StringRef llvm::jitlink::Section::getName ( ) const
inline

◆ getOrdinal()

SectionOrdinal llvm::jitlink::Section::getOrdinal ( ) const
inline

Returns the ordinal for this section.

Definition at line 732 of file JITLink.h.

◆ operator=() [1/2]

Section & llvm::jitlink::Section::operator= ( const Section )
delete

◆ operator=() [2/2]

Section & llvm::jitlink::Section::operator= ( Section &&  )
delete

◆ setMemLifetime()

void llvm::jitlink::Section::setMemLifetime ( orc::MemLifetime  ML)
inline

Set the memory lifetime policy for this section.

Definition at line 729 of file JITLink.h.

References ML.

◆ setMemProt()

void llvm::jitlink::Section::setMemProt ( orc::MemProt  Prot)
inline

Set the protection flags for this section.

Definition at line 723 of file JITLink.h.

◆ symbols() [1/2]

iterator_range< symbol_iterator > llvm::jitlink::Section::symbols ( )
inline

◆ symbols() [2/2]

iterator_range< const_symbol_iterator > llvm::jitlink::Section::symbols ( ) const
inline

Returns an iterator over the symbols defined in this section.

Definition at line 756 of file JITLink.h.

References llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::begin(), llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::end(), and llvm::make_range().

◆ symbols_size()

SymbolSet::size_type llvm::jitlink::Section::symbols_size ( ) const
inline

Return the number of symbols in this section.

Definition at line 761 of file JITLink.h.

References llvm::detail::DenseSetImpl< ValueT, MapTy, ValueInfoT >::size().

Friends And Related Function Documentation

◆ LinkGraph

friend class LinkGraph
friend

Definition at line 692 of file JITLink.h.


The documentation for this class was generated from the following files: