================ @@ -1981,6 +1979,11 @@ def SVCNTP_COUNT : SInst<"svcntp_{d}", "n}i", "QcQsQiQl", MergeNone, "aarch64_sv defm SVREVD : SInstZPZ<"svrevd", "csilUcUsUiUl", "aarch64_sve_revd">; } +let TargetGuard = "sve2p1|sme2" in { + def SVPTRUE_COUNT : SInst<"svptrue_{d}", "}v", "QcQsQiQl", MergeNone, "aarch64_sve_ptrue_{d}", [IsOverloadNone, IsStreaming], []>; ---------------- sdesmalen-arm wrote:
```suggestion def SVPTRUE_COUNT : SInst<"svptrue_{d}", "}v", "QcQsQiQl", MergeNone, "aarch64_sve_ptrue_{d}", [IsOverloadNone, IsStreamingCompatible], []>; ``` As pointed out [here](https://github.com/llvm/llvm-project/pull/71927/files#r1395522522), this will need an attribute like `IsStreamingOrHasSVE2p1`, for which the compiler will give a diagnostic when compiling for +sme2 and the function is not in streaming mode. To move this patch forward without that diagnostic, you could make this `IsStreamingCompatible` for now. Can you also add a `FIXME` to say we need to change this later? https://github.com/llvm/llvm-project/pull/71953 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits