From b3674e475389b72939bf90965790d63e9fa24b95 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 2 May 2006 04:24:36 +0000 Subject: [PATCH] Add pass ID's for various passes, so they can be AddRequiredID. Patch by Domagoj Babic! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28048 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Transforms/Scalar.h | 34 +++++++++++++---------- lib/Transforms/Utils/LowerAllocations.cpp | 2 ++ lib/Transforms/Utils/LowerSelect.cpp | 2 ++ lib/Transforms/Utils/LowerSwitch.cpp | 2 ++ lib/Transforms/Utils/Mem2Reg.cpp | 2 ++ 5 files changed, 28 insertions(+), 14 deletions(-) diff --git a/include/llvm/Transforms/Scalar.h b/include/llvm/Transforms/Scalar.h index 502c5d34fa8..3ae134857da 100644 --- a/include/llvm/Transforms/Scalar.h +++ b/include/llvm/Transforms/Scalar.h @@ -163,6 +163,7 @@ FunctionPass *createLoopUnrollPass(); // ret int %Y // FunctionPass *createPromoteMemoryToRegisterPass(); +extern const PassInfo *PromoteMemoryToRegisterID; //===----------------------------------------------------------------------===// // @@ -240,31 +241,36 @@ FunctionPass *createLoopSimplifyPass(); extern const PassInfo *LoopSimplifyID; //===----------------------------------------------------------------------===// +// This pass converts SelectInst instructions into conditional branch and PHI +// instructions. If the OnlyFP flag is set to true, then only floating point +// select instructions are lowered. // -// This pass eliminates call instructions to the current function which occur -// immediately before return instructions. -// -FunctionPass *createTailCallEliminationPass(); - +FunctionPass *createLowerSelectPass(bool OnlyFP = false); +extern const PassInfo *LowerSelectID; //===----------------------------------------------------------------------===// -// This pass convert malloc and free instructions to %malloc & %free function -// calls. +// +// LowerAllocations Pass - Turn malloc and free instructions into %malloc and +// %free calls. +// +// AU.addRequiredID(LowerAllocationsID); // FunctionPass *createLowerAllocationsPass(bool LowerMallocArgToInteger = false); +extern const PassInfo *LowerAllocationsID; //===----------------------------------------------------------------------===// -// This pass converts SwitchInst instructions into a sequence of chained binary -// branch instructions. // -FunctionPass *createLowerSwitchPass(); +// This pass eliminates call instructions to the current function which occur +// immediately before return instructions. +// +FunctionPass *createTailCallEliminationPass(); //===----------------------------------------------------------------------===// -// This pass converts SelectInst instructions into conditional branch and PHI -// instructions. If the OnlyFP flag is set to true, then only floating point -// select instructions are lowered. +// This pass converts SwitchInst instructions into a sequence of chained binary +// branch instructions. // -FunctionPass *createLowerSelectPass(bool OnlyFP = false); +FunctionPass *createLowerSwitchPass(); +extern const PassInfo *LowerSwitchID; //===----------------------------------------------------------------------===// // This pass converts PackedType operations into low-level scalar operations. diff --git a/lib/Transforms/Utils/LowerAllocations.cpp b/lib/Transforms/Utils/LowerAllocations.cpp index f1721b3e587..0a6dc09147e 100644 --- a/lib/Transforms/Utils/LowerAllocations.cpp +++ b/lib/Transforms/Utils/LowerAllocations.cpp @@ -60,6 +60,8 @@ namespace { X("lowerallocs", "Lower allocations from instructions to calls"); } +// Publically exposed interface to pass... +const PassInfo *llvm::LowerAllocationsID = X.getPassInfo(); // createLowerAllocationsPass - Interface to this file... FunctionPass *llvm::createLowerAllocationsPass(bool LowerMallocArgToInteger) { return new LowerAllocations(LowerMallocArgToInteger); diff --git a/lib/Transforms/Utils/LowerSelect.cpp b/lib/Transforms/Utils/LowerSelect.cpp index 75557682935..6a24c294cfd 100644 --- a/lib/Transforms/Utils/LowerSelect.cpp +++ b/lib/Transforms/Utils/LowerSelect.cpp @@ -47,6 +47,8 @@ namespace { X("lowerselect", "Lower select instructions to branches"); } +// Publically exposed interface to pass... +const PassInfo *llvm::LowerSelectID = X.getPassInfo(); //===----------------------------------------------------------------------===// // This pass converts SelectInst instructions into conditional branch and PHI // instructions. If the OnlyFP flag is set to true, then only floating point diff --git a/lib/Transforms/Utils/LowerSwitch.cpp b/lib/Transforms/Utils/LowerSwitch.cpp index a6b3f28795b..ebad6c36dbc 100644 --- a/lib/Transforms/Utils/LowerSwitch.cpp +++ b/lib/Transforms/Utils/LowerSwitch.cpp @@ -60,6 +60,8 @@ namespace { X("lowerswitch", "Lower SwitchInst's to branches"); } +// Publically exposed interface to pass... +const PassInfo *llvm::LowerSwitchID = X.getPassInfo(); // createLowerSwitchPass - Interface to this file... FunctionPass *llvm::createLowerSwitchPass() { return new LowerSwitch(); diff --git a/lib/Transforms/Utils/Mem2Reg.cpp b/lib/Transforms/Utils/Mem2Reg.cpp index 77c72fe4479..c15d10c824e 100644 --- a/lib/Transforms/Utils/Mem2Reg.cpp +++ b/lib/Transforms/Utils/Mem2Reg.cpp @@ -74,6 +74,8 @@ bool PromotePass::runOnFunction(Function &F) { return Changed; } +// Publically exposed interface to pass... +const PassInfo *llvm::PromoteMemoryToRegisterID = X.getPassInfo(); // createPromoteMemoryToRegister - Provide an entry point to create this pass. // FunctionPass *llvm::createPromoteMemoryToRegisterPass() { -- 2.34.1