[all-commits] [llvm/llvm-project] 600d49: [AArch64] Remove superfluous sxtw in peephole opt ...

David Green via All-commits all-commits at lists.llvm.org
Fri Jul 19 08:51:52 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 600d4937521210eb8c5fd3e1107e50ec5cb246f2
      https://github.com/llvm/llvm-project/commit/600d4937521210eb8c5fd3e1107e50ec5cb246f2
  Author: David Green <david.green at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    A llvm/lib/Target/AArch64/peephole-sxtw.mir
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll

  Log Message:
  -----------
  [AArch64] Remove superfluous sxtw in peephole opt (#96293)

Across a basic-block we might have an i32 extract from a value that only
operates on upper bits (for example a sxtw). We can replace the COPY
with a new version skipping the sxtw.

This is a re-commit of 7f2a5dfe35f8bbaca2819644c7aa844f938befd6, with a fix for
removing all the intermediate COPY nodes (and some extra debug logging).


  Commit: 1bdd761c4c12d016c90db82b36d93b09869703ae
      https://github.com/llvm/llvm-project/commit/1bdd761c4c12d016c90db82b36d93b09869703ae
  Author: David Green <david.green at arm.com>
  Date:   2024-07-19 (Fri, 19 Jul 2024)

  Changed paths:
    R llvm/test/CodeGen/AArch64/arm64-sqxtn2-combine.ll
    M llvm/test/CodeGen/AArch64/qmovn.ll

  Log Message:
  -----------
  [AArch64] Additional sqxtn and uqxtn tests. NFC

There are also some sqxtun2 tests if I got them correct. The
arm64-sqxtn2-combine.ll test was moved to qmovn to keep them
in the same place.


Compare: https://github.com/llvm/llvm-project/compare/2f8c78684697...1bdd761c4c12

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