[all-commits] [llvm/llvm-project] 1f62af: [AArch64][SelectionDAG] Support passing/returning ...

Eli Friedman via All-commits all-commits at lists.llvm.org
Mon Aug 2 15:53:50 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1f62af63467e4834e1e386619b3eccab245489d4
      https://github.com/llvm/llvm-project/commit/1f62af63467e4834e1e386619b3eccab245489d4
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2021-08-02 (Mon, 02 Aug 2021)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/test/CodeGen/AArch64/sve-breakdown-scalable-vectortype.ll

  Log Message:
  -----------
  [AArch64][SelectionDAG] Support passing/returning scalable vectors with unusual types.

This adds handling for two cases:

1. A scalable vector where the element type is promoted.
2. A scalable vector where the element count is odd (or more generally,
   not divisble by the element count of the part type).

(Some element types still don't work; for example, <vscale x 2 x i128>,
or <vscale x 2 x fp128>.)

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




More information about the All-commits mailing list