[all-commits] [llvm/llvm-project] 38986c: [AArch64] Add worst case shuffle costs

David Green via All-commits all-commits at lists.llvm.org
Fri Jul 23 01:02:20 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 38986c678285063f0dc1bd5752593bfdbe5068a2
      https://github.com/llvm/llvm-project/commit/38986c678285063f0dc1bd5752593bfdbe5068a2
  Author: David Green <david.green at arm.com>
  Date:   2021-07-23 (Fri, 23 Jul 2021)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/reduce-and.ll
    M llvm/test/Analysis/CostModel/AArch64/reduce-minmax.ll
    M llvm/test/Analysis/CostModel/AArch64/reduce-or.ll
    M llvm/test/Analysis/CostModel/AArch64/reduce-xor.ll
    M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
    M llvm/test/Analysis/CostModel/AArch64/vector-reduce.ll

  Log Message:
  -----------
  [AArch64] Add worst case shuffle costs

This adds some missing single source shuffle costs for AArch64, of i16
and i8 vectors. v4i16 are the same as v4i32 with a worse case cost of 3
coming from the perfect shuffle tables. The larger vector sizes expand
into a constant pool, plus a load (and adrp) and a tbl. I arbitrarily
chose 8 for the cost to be expensive but not too expensive.

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




More information about the All-commits mailing list