[all-commits] [llvm/llvm-project] d458a1: [AArch64] Mark AESD and AESE instructions as commu...

David Green via All-commits all-commits at lists.llvm.org
Fri Mar 1 02:24:39 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d458a1931769aa4bcdb3fcd537c4ee946507ff1a
      https://github.com/llvm/llvm-project/commit/d458a1931769aa4bcdb3fcd537c4ee946507ff1a
  Author: David Green <david.green at arm.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/aes.ll
    M llvm/test/CodeGen/AArch64/misched-fusion-aes.ll

  Log Message:
  -----------
  [AArch64] Mark AESD and AESE instructions as commutative. (#83390)

This come from
https://discourse.llvm.org/t/combining-aes-and-xor-can-be-improved-further/77248.

These instructions start out with:
```
  XOR Vd, Vn
  <some complicated math>
```
The initial XOR means that they can be treated as commutative, removing
some of the unnecessary mov's introduced during register allocation.



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