As we discussed on RFC: https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922 This patch introduces the SLPVectorizer/ subdirectory and adds SLPUtils.{h,cpp} under namespace llvm::slpvectorizer, then moves the type and constant query helpers into it: - isConstant - isVectorLikeInstWithConstOps - isSplat - allConstant - allSameBlock - allSameType - allSameOpcode - getNumElements - getPartNumElems - getNumElems - getInsertExtractIndex - getExtractIndex