[all-commits] [llvm/llvm-project] aba558: [ARM] Fix operand order for MVE predicated VFMAS (...
Oliver Stannard via All-commits
all-commits at lists.llvm.org
Wed Nov 13 04:16:49 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: aba55809e9af5e0d981f10c7f9b44a1f57b423c2
https://github.com/llvm/llvm-project/commit/aba55809e9af5e0d981f10c7f9b44a1f57b423c2
Author: Oliver Stannard <oliver.stannard at arm.com>
Date: 2024-11-13 (Wed, 13 Nov 2024)
Changed paths:
M clang/include/clang/Basic/arm_mve.td
M clang/test/CodeGen/arm-mve-intrinsics/ternary.c
M llvm/include/llvm/IR/IntrinsicsARM.td
M llvm/lib/Target/ARM/ARMInstrMVE.td
M llvm/test/CodeGen/Thumb2/mve-intrinsics/ternary.ll
M llvm/test/CodeGen/Thumb2/mve-qrintr.ll
Log Message:
-----------
[ARM] Fix operand order for MVE predicated VFMAS (#115908)
For most MVE predicated FMA instructions, disabled lanes will contain
the value in the addend operand. However, The VFMAS instruction takes
the addend in a GPR, and the output register is shared with the first
multiply operand, so disabled lanes will get that value instead. This
means that we can't use the same intrinsic as for the other VFMA
instructions. Instead, we can codegen the vfmas intrinsic to a regular
FMA and select in clang, which the backend already has the patterns to
select VFMAS from.
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