[all-commits] [llvm/llvm-project] fc712e: [AArch64] Fix Copy Elemination for negative values

tmatheson-arm via All-commits all-commits at lists.llvm.org
Fri Dec 18 05:38:06 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: fc712eb7aa00aabcdafda54776038efdc486d570
      https://github.com/llvm/llvm-project/commit/fc712eb7aa00aabcdafda54776038efdc486d570
  Author: Tomas Matheson <tomas.matheson at arm.com>
  Date:   2020-12-18 (Fri, 18 Dec 2020)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RedundantCopyElimination.cpp
    M llvm/test/CodeGen/AArch64/machine-copy-remove.mir

  Log Message:
  -----------
  [AArch64] Fix Copy Elemination for negative values

Redundant Copy Elimination was eliminating a MOVi32imm -1 when it
determined that the value of the destination register is already -1.
However, it didn't take into account that the MOVi32imm zeroes the upper
32 bits (which are FFFFFFFF) and therefore cannot be eliminated.

Reviewed By: paulwalker-arm

Differential Revision: https://reviews.llvm.org/D93100




More information about the All-commits mailing list