[all-commits] [llvm/llvm-project] d29739: [AArch64][SME] Enable TPIDR2 lazy-save for za_pres...

Matthew Devereau via All-commits all-commits at lists.llvm.org
Wed Sep 20 06:35:12 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d297399b359a77e522c54e865aebc24f252d67e9
      https://github.com/llvm/llvm-project/commit/d297399b359a77e522c54e865aebc24f252d67e9
  Author: Matt Devereau <matthew.devereau at arm.com>
  Date:   2023-09-20 (Wed, 20 Sep 2023)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
    M llvm/test/CodeGen/AArch64/sme-lazy-save-call.ll

  Log Message:
  -----------
  [AArch64][SME] Enable TPIDR2 lazy-save for za_preserved

This change makes callees with the __arm_preserves_za
type attribute comply with the dormant state requirements
when it's caller has the __arm_shared_za type attribute.
Several external SME functions also do not need to lazy
save.

https://github.com/ARM-software/abi-aa/blob/5e67092434b50c04f8ad178a9c272ce3c6ada7fd/aapcs64/aapcs64.rst?plain=1#L1381

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




More information about the All-commits mailing list