LLVM 20.0.0git
|
#include "llvm/CodeGen/SjLjEHPrepare.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/Passes.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/Module.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Transforms/Utils/Local.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "sjlj-eh-prepare" |
Functions | |
STATISTIC (NumInvokes, "Number of invokes replaced") | |
STATISTIC (NumSpilled, "Number of registers live across unwind edges") | |
INITIALIZE_PASS (SjLjEHPrepare, DEBUG_TYPE, "Prepare SjLj exceptions", false, false) FunctionPass *llvm | |
static void | MarkBlocksLiveIn (BasicBlock *BB, SmallPtrSetImpl< BasicBlock * > &LiveBBs) |
MarkBlocksLiveIn - Insert BB and all of its predecessors into LiveBBs until we reach blocks we've already seen. | |
#define DEBUG_TYPE "sjlj-eh-prepare" |
Definition at line 35 of file SjLjEHPrepare.cpp.
INITIALIZE_PASS | ( | SjLjEHPrepare | , |
DEBUG_TYPE | , | ||
"Prepare SjLj exceptions" | , | ||
false | , | ||
false | |||
) |
Definition at line 98 of file SjLjEHPrepare.cpp.
|
static |
MarkBlocksLiveIn - Insert BB and all of its predecessors into LiveBBs until we reach blocks we've already seen.
Definition at line 148 of file SjLjEHPrepare.cpp.
References B, llvm::SmallPtrSetImpl< PtrType >::insert(), and llvm::inverse_depth_first().
STATISTIC | ( | NumInvokes | , |
"Number of invokes replaced" | |||
) |
STATISTIC | ( | NumSpilled | , |
"Number of registers live across unwind edges" | |||
) |