[all-commits] [llvm/llvm-project] a84ae9: [AArch64] Use mov imm pseudo instructions in madd ...
David Green via All-commits
all-commits at lists.llvm.org
Fri Jul 11 00:01:37 PDT 2025
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a84ae9c2dd1fbec20d00896fdd879f57c7c49245
https://github.com/llvm/llvm-project/commit/a84ae9c2dd1fbec20d00896fdd879f57c7c49245
Author: David Green <david.green at arm.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/machine-combiner-maddimm.mir
M llvm/test/CodeGen/AArch64/madd-combiner.ll
Log Message:
-----------
[AArch64] Use mov imm pseudo instructions in madd combine. (#147510)
The usual path for lowering immediates in AArch64 is to generate a
MOVi32imm or MOVi64imm pseudo instruction, that can be moved /
rematerialized around as required, being expanded into one or multiple
instructions after register allocation.
The code for the MachineCombiner was generating MOVN/ORR/MOVZ directly.
This converts them to use the pseudos, allowing the generated immediates
to be materialized if required. The code is hopefully simpler as a
result, and the Sub and Add patterns have been combined to reduce
duplication.
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