diff --git a/polly/include/polly/CodeGen/IRBuilder.h b/polly/include/polly/CodeGen/IRBuilder.h index 151975a0abce..169e288015f5 100644 --- a/polly/include/polly/CodeGen/IRBuilder.h +++ b/polly/include/polly/CodeGen/IRBuilder.h @@ -108,33 +108,29 @@ private: /// /// This is used to add additional items such as e.g. the llvm.loop.parallel /// metadata. -template -class PollyBuilderInserter - : protected llvm::IRBuilderDefaultInserter { +class IRInserter : protected llvm::IRBuilderDefaultInserter { public: - PollyBuilderInserter() : Annotator(0) {} - PollyBuilderInserter(class ScopAnnotator &A) : Annotator(&A) {} + IRInserter() = default; + IRInserter(class ScopAnnotator &A) : Annotator(&A) {} protected: void InsertHelper(llvm::Instruction *I, const llvm::Twine &Name, llvm::BasicBlock *BB, llvm::BasicBlock::iterator InsertPt) const { - llvm::IRBuilderDefaultInserter::InsertHelper(I, Name, BB, - InsertPt); + llvm::IRBuilderDefaultInserter::InsertHelper(I, Name, BB, InsertPt); if (Annotator) Annotator->annotate(I); } private: - class ScopAnnotator *Annotator; + class ScopAnnotator *Annotator = nullptr; }; // TODO: We should not name instructions in NDEBUG builds. // // We currently always name instructions, as the polly test suite currently // matches for certain names. -typedef PollyBuilderInserter IRInserter; -typedef llvm::IRBuilder PollyIRBuilder; +typedef llvm::IRBuilder PollyIRBuilder; /// @brief Return an IR builder pointed before the @p BB terminator. static inline PollyIRBuilder createPollyIRBuilder(llvm::BasicBlock *BB,