[all-commits] [llvm/llvm-project] 1b894c: [AArch64][GlobalISel] Mark some G_BITREVERSE types...

Jessica Paquette via All-commits all-commits at lists.llvm.org
Thu Jun 10 10:34:32 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1b894ccdc9ee8419e81499b2d394a00c0b880db1
      https://github.com/llvm/llvm-project/commit/1b894ccdc9ee8419e81499b2d394a00c0b880db1
  Author: Jessica Paquette <jpaquette at apple.com>
  Date:   2021-06-10 (Thu, 10 Jun 2021)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-bitreverse.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/select-bitreverse.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Mark some G_BITREVERSE types as legal + select them

We fall back on G_CTTZ_ZERO_UNDEF a lot when building clang for arm64 with
gisel.

Handling this will require that we can handle G_BITREVERSE.

This patch marks G_BITREVERSE instructions with natively supported types as
legal. We get selection on these types for free via the importer.

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




More information about the All-commits mailing list