tree 50e7f37a06df833cc5afa7e5d52cd8bff55c7e87
parent fcd4c1775182999cd08ec0d34ad063211971edc8
author Florian Hahn <flo@fhahn.com> 1613495550 +0000
committer Copybara-Service <copybara-worker@google.com> 1613731930 -0800

[AArch64] Convert CMP/SELECT sign patterns to OR & ASR.

ICMP & SELECT patterns extracting the sign of a value can be simplified
to OR & ASR (see  https://alive2.llvm.org/ce/z/Xx4iZ0).

This does not save any instructions in IR, but it is profitable on
AArch64, because we need at least 2 extra instructions to materialize 1
and -1 for the SELECT.

The improvements result in ~5% speedups on loops of the form

    static int sign_of(int x) {
      if (x < 0) return -1;
      return 1;
    }

    void foo(const int *x, int *res, int cnt) {
      for (int i=0;i<cnt;i++)
        res[i] = sign_of(x[i]);
    }

Reviewed By: dmgreen

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

GitOrigin-RevId: 211147c5ba49a17c8624186f50519885d89ca33d
