[all-commits] [llvm/llvm-project] d07d5c: [CodeGen] Add support for widening INSERT_SUBVECTO...

david-arm via All-commits all-commits at lists.llvm.org
Thu May 20 02:37:28 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d07d5c1b061bf7139e32b954d64259b7fe829953
      https://github.com/llvm/llvm-project/commit/d07d5c1b061bf7139e32b954d64259b7fe829953
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2021-05-20 (Thu, 20 May 2021)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
    M llvm/test/CodeGen/AArch64/sve-vector-splat.ll

  Log Message:
  -----------
  [CodeGen] Add support for widening INSERT_SUBVECTOR operands

When attempting to return something like a <vscale x 1 x i32>
type from a function we end up trying to widen the vector by
inserting a <vscale x 1 x i32> subvector into an undefined
<vscale x 4 x i32> vector. However, during legalisation we
then attempt to widen the INSERT_SUBVECTOR operands and hit
an error in WidenVectorOperand.

This patch adds a new WidenVecOp_INSERT_SUBVECTOR function
that currently only supports inserting subvectors into undefined
vectors.

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




More information about the All-commits mailing list