[all-commits] [llvm/llvm-project] 609a48: [AArch64][GlobalISel] Reland SLT/SGT TBNZ optimiza...

Jessica Paquette via All-commits all-commits at lists.llvm.org
Fri Feb 7 11:16:19 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 609a489e052e8ed2731aebbcc7828de1102e871d
      https://github.com/llvm/llvm-project/commit/609a489e052e8ed2731aebbcc7828de1102e871d
  Author: Jessica Paquette <jpaquette at apple.com>
  Date:   2020-02-07 (Fri, 07 Feb 2020)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/tbnz-slt.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/tbz-sgt.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Reland SLT/SGT TBNZ optimization

The issue in the previous commits was that we swap the LHS and RHS while
looking for the constant. In SLT/SGT, the constant must be on the RHS, or the
optimization is invalid.

Move the swapping logic after the check for the SLT/SGT case and update tests.

Original commits:

d78cefb1601070cb028b61bbc1bd6f25a9c1837c
a3738414072900ace9cbbe209d0195a3443d1d54




More information about the All-commits mailing list