clang
7.0.0
|
A branch fixup. More...
#include "/work/llvm-www-releases/7.0.0/docsbuild/llvm.src/tools/clang/lib/CodeGen/EHScopeStack.h"
Public Attributes | |
llvm::BasicBlock * | OptimisticBranchBlock |
The block containing the terminator which needs to be modified into a switch if this fixup is resolved into the current scope. More... | |
llvm::BasicBlock * | Destination |
The ultimate destination of the branch. More... | |
unsigned | DestinationIndex |
The destination index value. More... | |
llvm::BranchInst * | InitialBranch |
The initial branch of the fixup. More... | |
A branch fixup.
These are required when emitting a goto to a label which hasn't been emitted yet. The goto is optimistically emitted as a branch to the basic block for the label, and (if it occurs in a scope with non-trivial cleanups) a fixup is added to the innermost cleanup. When a (normal) cleanup is popped, any unresolved fixups in that scope are threaded through the cleanup.
Definition at line 37 of file EHScopeStack.h.
llvm::BasicBlock* clang::CodeGen::BranchFixup::Destination |
The ultimate destination of the branch.
This can be set to null to indicate that this fixup was successfully resolved.
Definition at line 47 of file EHScopeStack.h.
unsigned clang::CodeGen::BranchFixup::DestinationIndex |
The destination index value.
Definition at line 50 of file EHScopeStack.h.
llvm::BranchInst* clang::CodeGen::BranchFixup::InitialBranch |
The initial branch of the fixup.
Definition at line 53 of file EHScopeStack.h.
llvm::BasicBlock* clang::CodeGen::BranchFixup::OptimisticBranchBlock |
The block containing the terminator which needs to be modified into a switch if this fixup is resolved into the current scope.
If null, LatestBranch points directly to the destination.
Definition at line 41 of file EHScopeStack.h.