LLVM 22.0.0git
llvm::WebAssemblyException Class Reference

#include "Target/WebAssembly/WebAssemblyExceptionInfo.h"

Public Types

using block_iterator = typename ArrayRef<MachineBasicBlock *>::const_iterator
using iterator = typename decltype(SubExceptions)::const_iterator

Public Member Functions

 WebAssemblyException (MachineBasicBlock *EHPad)
 WebAssemblyException (const WebAssemblyException &)=delete
const WebAssemblyExceptionoperator= (const WebAssemblyException &)=delete
MachineBasicBlockgetEHPad () const
MachineBasicBlockgetHeader () const
WebAssemblyExceptiongetParentException () const
void setParentException (WebAssemblyException *WE)
bool contains (const WebAssemblyException *WE) const
bool contains (const MachineBasicBlock *MBB) const
void addToBlocksSet (MachineBasicBlock *MBB)
void removeFromBlocksSet (MachineBasicBlock *MBB)
void addToBlocksVector (MachineBasicBlock *MBB)
void addBlock (MachineBasicBlock *MBB)
ArrayRef< MachineBasicBlock * > getBlocks () const
block_iterator block_begin () const
block_iterator block_end () const
iterator_range< block_iteratorblocks () const
unsigned getNumBlocks () const
std::vector< MachineBasicBlock * > & getBlocksVector ()
SmallPtrSetImpl< MachineBasicBlock * > & getBlocksSet ()
const std::vector< std::unique_ptr< WebAssemblyException > > & getSubExceptions () const
std::vector< std::unique_ptr< WebAssemblyException > > & getSubExceptions ()
void addSubException (std::unique_ptr< WebAssemblyException > E)
iterator begin () const
iterator end () const
void reserveBlocks (unsigned Size)
void reverseBlock (unsigned From=0)
unsigned getExceptionDepth () const
void print (raw_ostream &OS, unsigned Depth=0) const
void dump () const

Detailed Description

Definition at line 42 of file WebAssemblyExceptionInfo.h.

Member Typedef Documentation

◆ block_iterator

◆ iterator

using llvm::WebAssemblyException::iterator = typename decltype(SubExceptions)::const_iterator

Definition at line 99 of file WebAssemblyExceptionInfo.h.

Constructor & Destructor Documentation

◆ WebAssemblyException() [1/2]

llvm::WebAssemblyException::WebAssemblyException ( MachineBasicBlock * EHPad)
inline

◆ WebAssemblyException() [2/2]

llvm::WebAssemblyException::WebAssemblyException ( const WebAssemblyException & )
delete

Member Function Documentation

◆ addBlock()

void llvm::WebAssemblyException::addBlock ( MachineBasicBlock * MBB)
inline

Definition at line 74 of file WebAssemblyExceptionInfo.h.

References MBB.

◆ addSubException()

void llvm::WebAssemblyException::addSubException ( std::unique_ptr< WebAssemblyException > E)
inline

Definition at line 96 of file WebAssemblyExceptionInfo.h.

References E().

◆ addToBlocksSet()

void llvm::WebAssemblyException::addToBlocksSet ( MachineBasicBlock * MBB)
inline

Definition at line 71 of file WebAssemblyExceptionInfo.h.

References MBB.

Referenced by llvm::WebAssemblyExceptionInfo::recalculate().

◆ addToBlocksVector()

void llvm::WebAssemblyException::addToBlocksVector ( MachineBasicBlock * MBB)
inline

Definition at line 73 of file WebAssemblyExceptionInfo.h.

References MBB.

Referenced by llvm::WebAssemblyExceptionInfo::recalculate().

◆ begin()

iterator llvm::WebAssemblyException::begin ( ) const
inline

Definition at line 100 of file WebAssemblyExceptionInfo.h.

◆ block_begin()

block_iterator llvm::WebAssemblyException::block_begin ( ) const
inline

Definition at line 80 of file WebAssemblyExceptionInfo.h.

References getBlocks().

Referenced by blocks().

◆ block_end()

block_iterator llvm::WebAssemblyException::block_end ( ) const
inline

Definition at line 81 of file WebAssemblyExceptionInfo.h.

References getBlocks().

Referenced by blocks().

◆ blocks()

iterator_range< block_iterator > llvm::WebAssemblyException::blocks ( ) const
inline

◆ contains() [1/2]

bool llvm::WebAssemblyException::contains ( const MachineBasicBlock * MBB) const
inline

Definition at line 67 of file WebAssemblyExceptionInfo.h.

References MBB.

◆ contains() [2/2]

bool llvm::WebAssemblyException::contains ( const WebAssemblyException * WE) const
inline

Definition at line 60 of file WebAssemblyExceptionInfo.h.

References contains(), getParentException(), and WebAssemblyException().

Referenced by contains().

◆ dump()

LLVM_DUMP_METHOD void WebAssemblyException::dump ( ) const

Definition at line 361 of file WebAssemblyExceptionInfo.cpp.

References llvm::dbgs(), LLVM_DUMP_METHOD, and print().

◆ end()

iterator llvm::WebAssemblyException::end ( ) const
inline

Definition at line 101 of file WebAssemblyExceptionInfo.h.

◆ getBlocks()

ArrayRef< MachineBasicBlock * > llvm::WebAssemblyException::getBlocks ( ) const
inline

Definition at line 78 of file WebAssemblyExceptionInfo.h.

Referenced by block_begin(), block_end(), and print().

◆ getBlocksSet()

SmallPtrSetImpl< MachineBasicBlock * > & llvm::WebAssemblyException::getBlocksSet ( )
inline

Definition at line 87 of file WebAssemblyExceptionInfo.h.

◆ getBlocksVector()

std::vector< MachineBasicBlock * > & llvm::WebAssemblyException::getBlocksVector ( )
inline

Definition at line 86 of file WebAssemblyExceptionInfo.h.

◆ getEHPad()

MachineBasicBlock * llvm::WebAssemblyException::getEHPad ( ) const
inline

◆ getExceptionDepth()

unsigned llvm::WebAssemblyException::getExceptionDepth ( ) const
inline

Definition at line 109 of file WebAssemblyExceptionInfo.h.

References D(), and WebAssemblyException().

Referenced by print().

◆ getHeader()

MachineBasicBlock * llvm::WebAssemblyException::getHeader ( ) const
inline

◆ getNumBlocks()

unsigned llvm::WebAssemblyException::getNumBlocks ( ) const
inline

Definition at line 85 of file WebAssemblyExceptionInfo.h.

◆ getParentException()

WebAssemblyException * llvm::WebAssemblyException::getParentException ( ) const
inline

◆ getSubExceptions() [1/2]

std::vector< std::unique_ptr< WebAssemblyException > > & llvm::WebAssemblyException::getSubExceptions ( )
inline

Definition at line 93 of file WebAssemblyExceptionInfo.h.

◆ getSubExceptions() [2/2]

const std::vector< std::unique_ptr< WebAssemblyException > > & llvm::WebAssemblyException::getSubExceptions ( ) const
inline

Definition at line 90 of file WebAssemblyExceptionInfo.h.

◆ operator=()

const WebAssemblyException & llvm::WebAssemblyException::operator= ( const WebAssemblyException & )
delete

◆ print()

void WebAssemblyException::print ( raw_ostream & OS,
unsigned Depth = 0 ) const

◆ removeFromBlocksSet()

void llvm::WebAssemblyException::removeFromBlocksSet ( MachineBasicBlock * MBB)
inline

Definition at line 72 of file WebAssemblyExceptionInfo.h.

References MBB.

Referenced by llvm::WebAssemblyExceptionInfo::recalculate().

◆ reserveBlocks()

void llvm::WebAssemblyException::reserveBlocks ( unsigned Size)
inline

Definition at line 103 of file WebAssemblyExceptionInfo.h.

References Size.

◆ reverseBlock()

void llvm::WebAssemblyException::reverseBlock ( unsigned From = 0)
inline

Definition at line 104 of file WebAssemblyExceptionInfo.h.

◆ setParentException()

void llvm::WebAssemblyException::setParentException ( WebAssemblyException * WE)
inline

Definition at line 58 of file WebAssemblyExceptionInfo.h.

References WebAssemblyException().


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