LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Functions
SjLjEHPrepare.cpp File Reference
#include "llvm/CodeGen/Passes.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetLowering.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Utils/Local.h"
#include <set>
Include dependency graph for SjLjEHPrepare.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "sjljehprepare"
 

Functions

 STATISTIC (NumInvokes,"Number of invokes replaced")
 
 STATISTIC (NumSpilled,"Number of registers live across unwind edges")
 
static void MarkBlocksLiveIn (BasicBlock *BB, SmallPtrSet< BasicBlock *, 64 > &LiveBBs)
 

Macro Definition Documentation

#define DEBUG_TYPE   "sjljehprepare"

Definition at line 15 of file SjLjEHPrepare.cpp.

Function Documentation

static void MarkBlocksLiveIn ( BasicBlock BB,
SmallPtrSet< BasicBlock *, 64 > &  LiveBBs 
)
static

MarkBlocksLiveIn - Insert BB and all of its predescessors into LiveBBs until we reach blocks we've already seen.

Definition at line 139 of file SjLjEHPrepare.cpp.

References llvm::SmallPtrSet< PtrType, SmallSize >::insert(), llvm::pred_begin(), and llvm::pred_end().

STATISTIC ( NumInvokes  ,
"Number of invokes replaced"   
)
STATISTIC ( NumSpilled  ,
"Number of registers live across unwind edges"   
)