diff options
Diffstat (limited to 'include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h')
| -rw-r--r-- | include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h b/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h index 9071a56532f82..c5f6d6e0e8bde 100644 --- a/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h +++ b/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h @@ -27,12 +27,28 @@ #include "llvm/IR/PassManager.h" namespace llvm { +struct MergedLoadStoreMotionOptions { + bool SplitFooterBB; + MergedLoadStoreMotionOptions(bool SplitFooterBB = false) + : SplitFooterBB(SplitFooterBB) {} + + MergedLoadStoreMotionOptions &splitFooterBB(bool SFBB) { + SplitFooterBB = SFBB; + return *this; + } +}; + class MergedLoadStoreMotionPass : public PassInfoMixin<MergedLoadStoreMotionPass> { + MergedLoadStoreMotionOptions Options; + public: + MergedLoadStoreMotionPass() + : MergedLoadStoreMotionPass(MergedLoadStoreMotionOptions()) {} + MergedLoadStoreMotionPass(const MergedLoadStoreMotionOptions &PassOptions) + : Options(PassOptions) {} PreservedAnalyses run(Function &F, FunctionAnalysisManager &AM); }; - } #endif // LLVM_TRANSFORMS_SCALAR_MERGEDLOADSTOREMOTION_H |
