[clang] [AArch64] Add option -msve-streaming-vector-bits= . (PR #144611)
Sander de Smalen via cfe-commits
cfe-commits at lists.llvm.org
Thu Jul 3 09:20:28 PDT 2025
================
@@ -2261,6 +2261,23 @@ void Sema::checkTypeSupport(QualType Ty, SourceLocation Loc, ValueDecl *D) {
}
}
}
+
+ if (auto *VT = Ty->getAs<VectorType>();
+ VT && FD &&
+ (VT->getVectorKind() == VectorKind::SveFixedLengthData ||
+ VT->getVectorKind() == VectorKind::SveFixedLengthPredicate) &&
+ (LangOpts.VScaleMin != LangOpts.VScaleStreamingMin ||
+ LangOpts.VScaleMax != LangOpts.VScaleStreamingMax)) {
+ if (IsArmStreamingFunction(FD, /*IncludeLocallyStreaming=*/true)) {
+ Diag(Loc, diag::err_sve_fixed_vector_in_streaming_function) << Ty << 0;
+ } else if (const auto *FTy = FD->getType()->getAs<FunctionProtoType>()) {
+ if (FTy->getAArch64SMEAttributes() &
+ FunctionType::SME_PStateSMCompatibleMask) {
+ Diag(Loc, diag::err_sve_fixed_vector_in_streaming_function)
+ << Ty << 1;
----------------
sdesmalen-arm wrote:
nit:
```suggestion
<< Ty << /*StreamingCompatible*/ 1;
```
https://github.com/llvm/llvm-project/pull/144611
More information about the cfe-commits
mailing list