[all-commits] [llvm/llvm-project] 64bef3: [AArch64][SME] Disable inlining when SME attribute...

david-arm via All-commits all-commits at lists.llvm.org
Wed Sep 21 01:36:05 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 64bef3d5688b36a852d7aa3ee2276d4a9856af9a
      https://github.com/llvm/llvm-project/commit/64bef3d5688b36a852d7aa3ee2276d4a9856af9a
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2022-09-21 (Wed, 21 Sep 2022)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/Inline/AArch64/sme-pstatesm-attrs.ll
    A llvm/test/Transforms/Inline/AArch64/sme-pstateza-attrs.ll

  Log Message:
  -----------
  [AArch64][SME] Disable inlining when SME attributes require smstart/smstop or lazy-save.

Inlining must be disabled when the call-site needs to toggle PSTATE.SM or
when the callee's function body is executed in a different streaming mode than
its caller. This is needed because function calls are the boundaries for
streaming mode changes.

More details about the SME attributes and design can be found
in D131562.

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




More information about the All-commits mailing list