[all-commits] [llvm/llvm-project] 6aa753: [LLVM][AArch64] Allow vector converts to run in s...

CarolineConcatto via All-commits all-commits at lists.llvm.org
Mon Mar 9 04:56:16 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6aa7538a39975fb4b12edb32d058a631646ff053
      https://github.com/llvm/llvm-project/commit/6aa7538a39975fb4b12edb32d058a631646ff053
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2026-03-09 (Mon, 09 Mar 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll

  Log Message:
  -----------
  [LLVM][AArch64] Allow vector converts  to run in streaming mode with … (#177375)

…FPRCVT

Vector Saturated converts fp->int and converts int->fp are now allowed
to run in streaming mode when FEAT_FPRCVT feature is available.

Therefore the patch replaces HasNEONandIsSME2p2StreamingSafe by
HasNEONandIsFPRCVTStreamingSafe following the latest update in [1] for
the Vector CVT instructions.

It also allows the ISD Node FP_TO_SINT_SAT to do custom lowering instead
of expand when it is a fixed lengh data type, because it can use the
Vector CVT instructions. I believe this is correct because there is
always a compatible CVT instruction for the SME core.

Because now the compiler allows the fixed length CVT to run in streaming
mode, I needed to fix the function LowerVectorFP_TO_INT_SAT, the FRINT
instruction were creating a ilegal size for CVT instructions that was
not able to lower to a CVT instruction.

co-author:Amina Chabane<amina.chabane at arm.com>

[1] https://developer.arm.com/documentation/ddi0602/2025-09



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