[all-commits] [llvm/llvm-project] 13c251: [AArch64] Disable GlobalISel/FastISel for more SME...

David Green via All-commits all-commits at lists.llvm.org
Tue Aug 22 10:06:41 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 13c2514df3b44a96e4ba39cd58c3fd0440868dff
      https://github.com/llvm/llvm-project/commit/13c2514df3b44a96e4ba39cd58c3fd0440868dff
  Author: David Green <david.green at arm.com>
  Date:   2023-08-22 (Tue, 22 Aug 2023)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/test/CodeGen/AArch64/sme-disable-gisel-fisel.ll

  Log Message:
  -----------
  [AArch64] Disable GlobalISel/FastISel for more SME functions

The patch D136361 disabled GlobalISel and FastISel for some SME functions, as
the saving and restoring of SM is not yet handled. There were several tests
added for fp128 fadd, which will be expanded to a libcall, that only happened
to work by accident and did not handle other cases such as f32/f64 frem
libcalls.

This extends the cases where GlobalISel / FastISel is disabled for functions
with SME attributes, under the assumption that it is difficult to tell what
will become a libcall reliably, and so should fall back for all function until
GlobalISel and/or FastISel can handle them.

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




More information about the All-commits mailing list