clang 24.0.0git
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.

Classes

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::ConditionalCleanup< T, As >
 ConditionalCleanup stores the saved form of its parameters, then restores them and performs the cleanup. More...

Namespaces

namespace  clang
 Top level wrappers for InstallAPI frontend operations.
namespace  clang::CodeGen

Enumerations

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 , clang::CodeGen::FakeUse = 0x10 , clang::CodeGen::NormalFakeUse = FakeUse | NormalCleanup , clang::CodeGen::SEHFinallyCleanup = 0x20 ,
  clang::CodeGen::NormalAndEHSEHFinallyCleanup = SEHFinallyCleanup | NormalAndEHCleanup
}