Index: llvm/include/llvm/Transforms/IPO/OpenMPOpt.h =================================================================== --- llvm/include/llvm/Transforms/IPO/OpenMPOpt.h +++ llvm/include/llvm/Transforms/IPO/OpenMPOpt.h @@ -21,7 +21,7 @@ using Kernel = Function *; /// Set of kernels in the module -using KernelSet = SmallPtrSet; +using KernelSet = SmallSetVector; /// Helper to determine if \p M contains OpenMP. bool containsOpenMP(Module &M); Index: llvm/lib/Transforms/IPO/OpenMPOpt.cpp =================================================================== --- llvm/lib/Transforms/IPO/OpenMPOpt.cpp +++ llvm/lib/Transforms/IPO/OpenMPOpt.cpp @@ -167,7 +167,7 @@ struct OMPInformationCache : public InformationCache { OMPInformationCache(Module &M, AnalysisGetter &AG, BumpPtrAllocator &Allocator, SetVector &CGSCC, - SmallPtrSetImpl &Kernels) + KernelSet &Kernels) : InformationCache(M, AG, Allocator, &CGSCC), OMPBuilder(M), Kernels(Kernels) { @@ -482,7 +482,7 @@ } /// Collection of known kernels (\see Kernel) in the module. - SmallPtrSetImpl &Kernels; + KernelSet &Kernels; /// Collection of known OpenMP runtime functions.. DenseSet RTLFunctions;