[all-commits] [llvm/llvm-project] 541828: [ARM] Single source VMOVNT

David Green via All-commits all-commits at lists.llvm.org
Fri Feb 12 06:29:23 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 541828e35da28f8bae0fad58ba86ac0cc3a0f898
      https://github.com/llvm/llvm-project/commit/541828e35da28f8bae0fad58ba86ac0cc3a0f898
  Author: David Green <david.green at arm.com>
  Date:   2021-02-12 (Fri, 12 Feb 2021)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/Thumb2/mve-vmovn.ll

  Log Message:
  -----------
  [ARM] Single source VMOVNT

Our current lowering of VMOVNT goes via a shuffle vector of the form
<0, N, 2, N+2, 4, N+4, ..>. That can of course also be a single input
shuffle of the form <0, 0, 2, 2, 4, 4, ..>, where we use a VMOVNT to
insert a vector into the top lanes of itself. This adds lowering of that
case, re-using the existing isVMOVNMask.

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




More information about the All-commits mailing list