[clang] [Clang] Remove preprocessor guards and global feature checks for NEON (PR #95102)

via cfe-commits cfe-commits at lists.llvm.org
Tue Jun 11 05:40:16 PDT 2024


================
@@ -8084,29 +8084,6 @@ static void HandleNeonVectorTypeAttr(QualType &CurType, const ParsedAttr &Attr,
         AuxTI && (AuxTI->getTriple().isAArch64() || AuxTI->getTriple().isARM());
   }
 
-  // Target must have NEON (or MVE, whose vectors are similar enough
-  // not to need a separate attribute)
-  if (!(S.Context.getTargetInfo().hasFeature("neon") ||
-        S.Context.getTargetInfo().hasFeature("mve") ||
-        S.Context.getTargetInfo().hasFeature("sve") ||
-        S.Context.getTargetInfo().hasFeature("sme") ||
-        IsTargetCUDAAndHostARM) &&
-      VecKind == VectorKind::Neon) {
-    S.Diag(Attr.getLoc(), diag::err_attribute_unsupported)
-        << Attr << "'neon', 'mve', 'sve' or 'sme'";
-    Attr.setInvalid();
-    return;
-  }
-  if (!(S.Context.getTargetInfo().hasFeature("neon") ||
----------------
Lukacma wrote:

Do we ? From my understanding this checks are Neon vector types and are unrelated to MVE. The only reason MVE is used is because MVE vectors are similar enough so we can use them as neon vectors

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


More information about the cfe-commits mailing list