clang 17.0.0git
Classes | Namespaces | Enumerations
EHScopeStack.h File Reference
#include "clang/Basic/LLVM.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Value.h"

Go to the source code of this file.


struct  clang::CodeGen::BranchFixup
 A branch fixup. More...
struct  clang::CodeGen::InvariantValue< T >
struct  clang::CodeGen::DominatingValue< T >
 A metaprogramming class for ensuring that a value will dominate an arbitrary position in a function. More...
struct  clang::CodeGen::DominatingPointer< T, false >
struct  clang::CodeGen::DominatingValue< T * >
class  clang::CodeGen::EHScopeStack
 A stack of scopes which respond to exceptions, including cleanups and catch blocks. More...
class  clang::CodeGen::EHScopeStack::stable_iterator
 A saved depth on the scope stack. More...
class  clang::CodeGen::EHScopeStack::Cleanup
 Information for lazily generating a cleanup. More...
class  clang::CodeGen::EHScopeStack::Cleanup::Flags
 Generation flags. More...
class  clang::CodeGen::EHScopeStack::ConditionalCleanup< T, As >
 ConditionalCleanup stores the saved form of its parameters, then restores them and performs the cleanup. More...


namespace  clang
namespace  clang::CodeGen


enum  clang::CodeGen::CleanupKind : unsigned {
  clang::CodeGen::EHCleanup = 0x1 , clang::CodeGen::NormalCleanup = 0x2 , clang::CodeGen::NormalAndEHCleanup = EHCleanup | NormalCleanup , clang::CodeGen::LifetimeMarker = 0x8 ,
  clang::CodeGen::NormalEHLifetimeMarker = LifetimeMarker | NormalAndEHCleanup