[clang] [Clang][RVV][SVE] Cache getScalableVectorType lookups (PR #160108)

Paul Walker via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 25 06:26:52 PDT 2025


================
@@ -4567,6 +4567,11 @@ QualType ASTContext::getWebAssemblyExternrefType() const {
 /// type.
 QualType ASTContext::getScalableVectorType(QualType EltTy, unsigned NumElts,
                                            unsigned NumFields) const {
+  auto K = llvm::ScalableVecTyKey{
+      reinterpret_cast<uintptr_t>(EltTy.getAsOpaquePtr()), NumElts, NumFields};
----------------
paulwalker-arm wrote:

My knowledge here is not great, is it safe to assume the opaque ptr is unique? Why not use QualType directly.  I can see this done in other places (e.g. NullableQualTypeDenseMapInfo).

https://github.com/llvm/llvm-project/pull/160108


More information about the cfe-commits mailing list