[all-commits] [llvm/llvm-project] 09963e: [AArch64][SME] Propagate desired ZA states in the ...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Fri Jul 18 06:11:00 PDT 2025


  Branch: refs/heads/users/MacDue/sme-prop
  Home:   https://github.com/llvm/llvm-project
  Commit: 09963e2b2234cbc9513bb40ef4efbeda64f5532e
      https://github.com/llvm/llvm-project/commit/09963e2b2234cbc9513bb40ef4efbeda64f5532e
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-07-18 (Fri, 18 Jul 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
    A llvm/test/CodeGen/AArch64/sme-za-function-with-many-blocks.ll

  Log Message:
  -----------
  [AArch64][SME] Propagate desired ZA states in the MachineSMEABIPass

This patch adds a propagation step to the MachineSMEABIPass that
propagates desired ZA states forwards (from predecessors to successors).

The aim of this is to pick better ZA states for edge bundles, as when
many (or all) blocks in a bundle do not have a preferred ZA state, the
ZA state assigned to a bundle can be less than ideal.

An important case is nested loops, where only the inner loop has a
preferred ZA state. Here we'd like to propagate the ZA state up from the
inner loop to the outer loops (to avoid saves/restores in any loop).

Change-Id: I39f9c7d7608e2fa070be2fb88351b4d1d0079041



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list