[all-commits] [llvm/llvm-project] b8801b: [AArch64] Common patterns between UMULL and int_aa...
David Green via All-commits
all-commits at lists.llvm.org
Sat Feb 19 06:39:11 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: b8801ba0503936bd42e6d16e291bf66209323723
https://github.com/llvm/llvm-project/commit/b8801ba0503936bd42e6d16e291bf66209323723
Author: David Green <david.green at arm.com>
Date: 2022-02-19 (Sat, 19 Feb 2022)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/aarch64-wide-mul.ll
Log Message:
-----------
[AArch64] Common patterns between UMULL and int_aarch64_neon_umull
We have some duplicate patterns between the AArch64ISD::UMULL (/SMULL)
and the int_aarch64_neon_umull (/smull) intrinsics. They did not
replicate all the patterns though, leaving some gaps on instructions
like umlal2 from codegen. This commons all the patterns by converting
all int_aarch64_neon_umull intrinsics to UMULL nodes and removing the
duplicate for umull/smull intrinsics, so that all instructions go
through the same tablegen pattern.
This improves some of the longer-than-legal mla patterns, helping them
replace ext with umlal2.
Differential Revision: https://reviews.llvm.org/D119887
More information about the All-commits
mailing list