diff options
author | Owen Anderson <resistor@mac.com> | 2010-10-07 17:55:47 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2010-10-07 17:55:47 +0000 |
commit | 4698c5d7f71c1dbe043b593f3b19b98a200547f4 (patch) | |
tree | 97222d78fc1160d47cf574d8bc180e90a3650041 /llvm/lib/Transforms/Utils/Utils.cpp | |
parent | c6ed542c9095d81156a17c0d8cf8bea6b6f946e5 (diff) | |
download | llvm-4698c5d7f71c1dbe043b593f3b19b98a200547f4.zip llvm-4698c5d7f71c1dbe043b593f3b19b98a200547f4.tar.gz llvm-4698c5d7f71c1dbe043b593f3b19b98a200547f4.tar.bz2 |
Next step on the getting-rid-of-static-ctors train: begin adding per-library
initialization functions that initialize the set of passes implemented in
that library. Add C bindings for these functions as well.
llvm-svn: 115927
Diffstat (limited to 'llvm/lib/Transforms/Utils/Utils.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/Utils.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Utils/Utils.cpp b/llvm/lib/Transforms/Utils/Utils.cpp new file mode 100644 index 0000000..94d8fbf --- /dev/null +++ b/llvm/lib/Transforms/Utils/Utils.cpp @@ -0,0 +1,36 @@ +//===-- Utils.cpp - TransformUtils Infrastructure -------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// +// This file defines the common initialization infrastructure for the +// TransformUtils library. +// +//===----------------------------------------------------------------------===// + +#include "llvm/InitializePasses.h" +#include "llvm-c/Initialization.h" + +using namespace llvm; + +/// initializeTransformUtils - Initialize all passes in the TransformUtils +/// library. +void llvm::initializeTransformUtils(PassRegistry &Registry) { + initializeBreakCriticalEdgesPass(Registry); + initializeInstNamerPass(Registry); + initializeLCSSAPass(Registry); + initializeLoopSimplifyPass(Registry); + initializeLowerInvokePass(Registry); + initializeLowerSwitchPass(Registry); + initializePromotePassPass(Registry); + initializeUnifyFunctionExitNodesPass(Registry); +} + +/// LLVMInitializeTransformUtils - C binding for initializeTransformUtilsPasses. +void LLVMInitializeTransformUtils(LLVMPassRegistryRef R) { + initializeTransformUtils(*unwrap(R)); +} |