[all-commits] [llvm/llvm-project] c22c8b: [AArch64] Perform first active true vector combine

Allen via All-commits all-commits at lists.llvm.org
Mon Mar 7 09:13:22 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c22c8b151b97a70d9e2fa0a401d07cc49d70b999
      https://github.com/llvm/llvm-project/commit/c22c8b151b97a70d9e2fa0a401d07cc49d70b999
  Author: zhongyunde <zhongyunde at huawei.com>
  Date:   2022-03-08 (Tue, 08 Mar 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll

  Log Message:
  -----------
  [AArch64] Perform first active true vector combine

Materialize : i1 = extract_vector_elt t37, Constant:i64<0>
   ... into: "ptrue p, all" + PTEST
Test bit of lane 0 can use P register directly, and the instruction “pture all”
is loop invariant, which will beneficial to SVE after hoisting out the loop.

Reviewed By: david-arm, paulwalker-arm

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




More information about the All-commits mailing list