From: Jessica Paquette Date: Wed, 18 Aug 2021 20:57:42 +0000 (-0700) Subject: [AArch64][GlobalISel] Don't allow s128 for G_ISNAN X-Git-Tag: upstream/15.0.7~33569 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c22b64ef66f7518abb6f022fcdfd86d16c764caf;p=platform%2Fupstream%2Fllvm.git [AArch64][GlobalISel] Don't allow s128 for G_ISNAN getAPFloatFromSize doesn't support s128, so we can't lower this without asserting right now. To fix the buildbots, don't allow any scalars other than s16, s32, and s64. --- diff --git a/llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp b/llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp index bbc3df3..5320f44 100644 --- a/llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp +++ b/llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp @@ -727,7 +727,8 @@ AArch64LegalizerInfo::AArch64LegalizerInfo(const AArch64Subtarget &ST) // TODO: Vector types. getActionDefinitionsBuilder({G_SADDSAT, G_SSUBSAT}).lowerIf(isScalar(0)); - getActionDefinitionsBuilder(G_ISNAN).lower(); + getActionDefinitionsBuilder(G_ISNAN).lowerIf( + any(isVector(1), typeInSet(1, {s16, s32, s64}))); // TODO: Vector types. getActionDefinitionsBuilder({G_FMAXNUM, G_FMINNUM})