[all-commits] [llvm/llvm-project] 872a95: [CostModel] Treat 'widen subvector' patterns as ze...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Mon Aug 2 03:43:33 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 872a950033d3cacd8c489f8be68d7c25a11a8746
      https://github.com/llvm/llvm-project/commit/872a950033d3cacd8c489f8be68d7c25a11a8746
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-08-02 (Mon, 02 Aug 2021)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/test/Analysis/CostModel/AMDGPU/shufflevector.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll

  Log Message:
  -----------
  [CostModel] Treat 'widen subvector' patterns as zero cost

As discussed on D107228, widening a subvector by inserting the whole subvector into the bottom a larger undef vector should always be cheap enough that we can treat it as zero cost.

NOTE: If this proves to cause issues we have the option of introducing a "SK_WidenSubvector" shuffle kind enum that targets could override the zero cost, but that doesn't seem necessary atm.

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




More information about the All-commits mailing list