[llvm] [AArch64] Avoid using NEON FCVTXN in Streaming-SVE mode. (PR #91981)
Paul Walker via llvm-commits
llvm-commits at lists.llvm.org
Thu May 16 05:08:51 PDT 2024
================
@@ -19507,7 +19507,27 @@ static SDValue performBuildVectorCombine(SDNode *N,
SDLoc DL(N);
EVT VT = N->getValueType(0);
- if (VT == MVT::v4f16 || VT == MVT::v4bf16) {
+ const auto &Subtarget = DAG.getSubtarget<AArch64Subtarget>();
+ bool CanUseFCVTXN = Subtarget.isNeonAvailable() ||
+ (Subtarget.useSVEForFixedLengthVectors() &&
+ (Subtarget.hasSVE2() || Subtarget.hasSME()));
----------------
paulwalker-arm wrote:
This isn't sufficient to say we're in streaming mode is it? Don't we need something like `|| (Subtarget.hasSME() && Subtarget.isStreaming())`
https://github.com/llvm/llvm-project/pull/91981
More information about the llvm-commits
mailing list