From 0bed1eab3937cc9c78baaef88ae85da9f3f91402 Mon Sep 17 00:00:00 2001 From: Tobias Grosser Date: Sat, 27 Feb 2016 06:24:58 +0000 Subject: [PATCH] LoopGenerators: Expose some parts of the parallel loop generator Some of this functionality is useful beyond the generation of a normal OpenMP loop. llvm-svn: 262114 --- polly/include/polly/CodeGen/LoopGenerators.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/polly/include/polly/CodeGen/LoopGenerators.h b/polly/include/polly/CodeGen/LoopGenerators.h index 10e9590..6e2dd4f 100644 --- a/polly/include/polly/CodeGen/LoopGenerators.h +++ b/polly/include/polly/CodeGen/LoopGenerators.h @@ -106,8 +106,10 @@ public: Type::getIntNTy(Builder.getContext(), DL.getPointerSizeInBits())), M(Builder.GetInsertBlock()->getParent()->getParent()) {} - /// @brief Create a parallel loop + /// @brief Create a parallel loop. /// + /// This function is the main function to automatically generate a parallel + /// loop with all its components. /// /// @param LB The lower bound for the loop we parallelize. /// @param UB The upper bound for the loop we parallelize. @@ -147,6 +149,11 @@ private: /// @brief The current module Module *M; +public: + /// The functions below can be used if one does not want to generate a + /// specific OpenMP parallel loop, but generate individual parts of it + /// (e.g., the subfunction definition). + /// @brief Create a runtime library call to spawn the worker threads. /// /// @param SubFn The subfunction which holds the loop body. -- 2.7.4