[all-commits] [llvm/llvm-project] b4e146: [AArch64] Improve codegen for shifted mask op

chenglin.bi via All-commits all-commits at lists.llvm.org
Tue Nov 1 22:12:03 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b4e1466c35d3ca3e04244e8e8b4ffaf0784d6d37
      https://github.com/llvm/llvm-project/commit/b4e1466c35d3ca3e04244e8e8b4ffaf0784d6d37
  Author: chenglin.bi <chenglin.bi at linaro.org>
  Date:   2022-11-02 (Wed, 02 Nov 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/shift-logic.ll

  Log Message:
  -----------
  [AArch64] Improve codegen for shifted mask op

The special case for bit extraction pattern is  `((x >> C) & mask) << C`.
It can be combined to `x & (mask << C)` by return true in isDesirableToCommuteWithShift.

Fix: #56427

Reviewed By: dmgreen

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




More information about the All-commits mailing list