This allows the finalization routine of the IslNodeBuilder to be overwritten
by derived classes. Being here, we also drop the unnecessary 'Scop' postfix
and the unnecessary 'Scop' parameter.
llvm-svn: 276622
/// @brief Preload all memory loads that are invariant.
bool preloadInvariantLoads();
- /// @brief Finalize code generation for the SCoP @p S.
+ /// @brief Finalize code generation.
///
/// @see BlockGenerator::finalizeSCoP(Scop &S)
- void finalizeSCoP(Scop &S) { BlockGen.finalizeSCoP(S); }
+ virtual void finalize() { BlockGen.finalizeSCoP(S); }
IslExprBuilder &getExprBuilder() { return ExprBuilder; }
Builder.SetInsertPoint(&StartBlock->front());
NodeBuilder.create(AstRoot);
-
- NodeBuilder.finalizeSCoP(S);
+ NodeBuilder.finalize();
fixRegionInfo(EnteringBB->getParent(), R->getParent());
}
NodeBuilder.addParameters(S->getContext());
Builder.SetInsertPoint(&*StartBlock->begin());
NodeBuilder.create(Root);
- NodeBuilder.finalizeSCoP(*S);
+ NodeBuilder.finalize();
}
bool runOnScop(Scop &CurrentScop) override {