[all-commits] [llvm/llvm-project] 5e5baf: [AArch64][SME] Remove get.pstatesm intrinsic.

sdesmalen-arm via All-commits all-commits at lists.llvm.org
Thu Oct 20 05:26:13 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5e5baf917b95697dbfe0afe1a5c8298c547bc5ad
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2022-10-20 (Thu, 20 Oct 2022)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    R llvm/test/CodeGen/AArch64/sme-get-pstatesm.ll

  Log Message:
  [AArch64][SME] Remove get.pstatesm intrinsic.

This intrinsic can be removed in favour of using a call to
__arm_sme_state() directly and testing the LSB of X0.

In IR that would look like:

   %pstate = call aarch64_sme_preservemost_from_x2 {i64, i64} @__arm_sme_state()
   %pstate.x0 = extractvalue {i64, i64} %pstate, 0
   %pstate.sm = and i64 %pstate.x0, 1

More information about the All-commits mailing list