[all-commits] [llvm/llvm-project] ea6111: [AArch64][SVE2] Allow commuting two-input NBSL/BSL...
Ricardo Jesus via All-commits
all-commits at lists.llvm.org
Fri Mar 13 07:17:56 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ea61110c97ad5d59d263f3d83f81f726b4cf3650
https://github.com/llvm/llvm-project/commit/ea61110c97ad5d59d263f3d83f81f726b4cf3650
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2026-03-13 (Fri, 13 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3AE.td
M llvm/lib/Target/AArch64/AArch64SchedOlympus.td
A llvm/test/CodeGen/AArch64/sve2-bitsel-pseudos-expansion.mir
M llvm/test/CodeGen/AArch64/sve2-bsl.ll
Log Message:
-----------
[AArch64][SVE2] Allow commuting two-input NBSL/BSL2N idioms. (#184847)
Specifically, EON, NAND and NOR are commutable operations that lack
dedicated SVE2 instructions, but we support them via NBSL/BSL2N.
However, as NBSL/BSL2N have tied operands, sometimes we generate a COPY
even if one of the operands could be clobbered.
This patch defines custom expansion for these operations to allow using
their commuted forms or, if still necessary, using MOVPRFX for the COPY.
Should help with
https://github.com/llvm/llvm-project/pull/176194#discussion_r2889564685.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list