LLVM  13.0.0git
Public Types | Public Member Functions | List of all members
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

Definition at line 79 of file WebAssemblyExceptionInfo.h.

◆ 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

Definition at line 51 of file WebAssemblyExceptionInfo.h.

◆ 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 llvm::SmallPtrSetImpl< PtrType >::insert(), and MBB.

◆ addSubException()

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

Definition at line 96 of file WebAssemblyExceptionInfo.h.

References E, and move.

◆ addToBlocksSet()

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

◆ 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 llvm::SmallPtrSetImpl< PtrType >::count(), and MBB.

◆ contains() [2/2]

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

Definition at line 60 of file WebAssemblyExceptionInfo.h.

References getParentException().

◆ dump()

LLVM_DUMP_METHOD void WebAssemblyException::dump ( ) const

Definition at line 358 of file WebAssemblyExceptionInfo.cpp.

References llvm::dbgs(), 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.

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

◆ reserveBlocks()

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

Definition at line 103 of file WebAssemblyExceptionInfo.h.

References llvm::Check::Size.

◆ reverseBlock()

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

Definition at line 104 of file WebAssemblyExceptionInfo.h.

References From, and llvm::reverse().

◆ setParentException()

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

Definition at line 58 of file WebAssemblyExceptionInfo.h.


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